• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[System] Spell Damage Tracker

Level 29
Joined
Oct 24, 2012
Messages
6,543
ya Alloc is nice reduce codes and all i have to do is type in implement Alloc. u cant go wrong there.
basically when u have a triggered spell u had to do something like this.

trig 1
event
a spell is being started
conditions
spell is equal to mySpell
actions
index unit into a hashtable and save all vaules in the hashtable tht u need for damaging unit later
add unit to unit group 1

trig 2
events
every 1 second
conditions
actions
pick all units in unit group 1 and damage unit according to ur damage


this system will get rid of all of the spells that have a second trigger like tht. or spells that use waits. instead of waits or added timers just set the time u want the spell to go off and this system gets rid of all of that coding.

so say u have 10 spells tht are on same basis as the example above.
this system gets rid of 10 timers, 10 triggers, 10 hashtables ( each spell normally stores data in them) 10 groups for the units as all of this is now not needed since this system does all of tht for every spell u use it in.

edit: i hope to make a small test map so everyone can see what this system can really do. not sure if ill have time tomorrow to do it tho. also i am hoping to update this more to remove buffs and debuffs when the spell should end.
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
Mine will need to be updated a little I did not allow for special effects or buffs but also this system does DOT and damage after time period. I also do not have a loop in mine. And I don't know his systems limitations I have not fully read it over. I have to go for now but hopefully tomorrow I can make a test map and update this to use buffs / debuffs and special effects. Tht should not be hard at all. I did notice tht he can only have 8191 instances running at once which I doubt will ever happen but I have no idea mine can handle 8191 instances of both type ( DOT and damage after time period )
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
now is easier to use and read added ability addition to the casting unit and or the targeted unit. can do damage over time w increasing or decreasing damage. and you can add special effect to target now.

note: in the previoud thing i said i do not have a loop which in fact i do but it only loops through the instances tht are casted at that time period.
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
i use the native UnitDamageTarget so i dont think so. But if u noticed my comments at the top above the sentence i will be adding in DOT healing, Dat healing, Aoe Dat healing, and Aoe DOT healing hp and mana soon hopefully tomorrow or later tonight as i only have about 20 minutes till i go to bowling

only downside to adding those is it will make this library very big but it will accomplish all of the main damage and healing events. which i hope will make it a very useful MUI system

note: i tested the Aoe DOT spell which is the most taxing on the system w 880 units w absolutely no lag. i did however run out of instances available after i casted it about 12 times or so which would go along w the numbers i came up w.

i think i will add 2 more Table arrays which sucks but this way u will not have to worry about running out of instances when i add the healing to health and mana. this will also be easier for syntax on which part of the system you want to use.

the other downside to doing it tht way is tht the size of this will just about double
 
Last edited:
Top