View Single Post
Old 02-16-2006, 05:10 PM   #1
Free Software Terrorist
Vexorian's Avatar

Technical Director
Join Date: Apr 2003
Posts: 14,898

Submissions (37)

Vexorian has a reputation beyond repute (1062)Vexorian has a reputation beyond repute (1062)Vexorian has a reputation beyond repute (1062)Vexorian has a reputation beyond repute (1062)Vexorian has a reputation beyond repute (1062)Vexorian has a reputation beyond repute (1062)Vexorian has a reputation beyond repute (1062)

Hero Contest #3 - 2nd Place

Default CS16.0 [For wc3 1.23b or later]

The caster system is a pack of functions, a model and a unit that simplify many aspects of making maps, but specially spells.

Click image for larger version

Name:	castersystem139.jpg
Views:	3942
Size:	193.8 KB
ID:	12826 Features
- Casting functions: Cast abilities whenever you want, in the way you want by just using a function (mass AOE / group casting possible)
- Damage over time functions : Create 'flames' that do periodic damage or add damage over time with just a function.
- Damage Options : You can easily choose what units to affect and how to affect them.
- CSCache : Must have storage system includes Attacheable Variables, Pools, Tables, Dynamic arrays, location exploiting and CSDatas.
- Projectiles : Create projectile effects with curve movement, you can also use them to do damage or other things.
- CollisionMissiles : Object oriented method for making missiles that can detect collisions with units.
- Special Events: Easier and faster way of setting common events like spell effect / learn / cast
- A way to hide items without all the issues the native SetItemVisible arises.
- Utility functions: calculations with angles, detect if a point is above water , Show an interface error , rotate models and more.

Version History:
* Changed some return bug giberish into better things.

* As it was deprecated in the past, it has now been removed completely
since it will not work in 1.23b+ and is not trivial to port it.

* Removed return bug usage, it now uses a hashtable instead of a big vJass array.

* Still works, not recommended though, I suggest not using this library
unless there are compatibility reasons.


TimerUtils included in the map updated for the post 1.23b world.
Uses a hacked GroupUtils so that H2I is replaced with GetHandleId, this is
not an official version, I recommend you to update from the official
thread if you wish to implement the caster system...

Demo map:
* Is compatible and playable in wc3 1.23b or later.
Version 15.3:
- TimerUtils and GroupUtils are in use

- Uses TimerUtils instead of CSSafety
- Now Damagers use their damage options argument correctly.

- This library is not used anymore by caster system, but a dummy one
has been included for compatibility with old stuff that might explicitely
require this library.

- Documentation now includes an explanation of what the older module,
CSCache is and why you shouldn't use its functions as well as a recommendation
not to use CSSafeCache.
- NewGroup actually works.
- ReleaseGroup is able to correctly recognize when the group stack is full.

- CSSafety bug fix should have fixed issues with many of the CS functions, confirmed: DamageUnitsInAOEEx

Demo map:
- Queltallas revenge now uses the correct damage options variable.
- It actually works.
Attached Files
File Type: w3x cs15.3.w3x (166.1 KB, 732 views)
File Type: w3x cs16.0.w3x (162.0 KB, 1618 views)
Zoom (requires log in)Wc3 map optimizer 5.0
Someone should fix .wav sound in this thing.
Zoom (requires log in)JassHelper 0.A.2.A
Turns your simple code into something that is complicated enough to work.
Faster != more useful
Vexorian is offline   Reply With Quote
Sponsored Links - Login to hide this ad!