Triggered crits and evasion

Weyird

Member
Reaction score
5
As the title says. I want to make crit and evasion chance based on agility. For example, an agility of 20 means 20% chance to do double damage, and 20% chance to evade.

1) What event would need to be used
2) what action would enforce it? Triggering to give 100% chance crit or evade and then take it away a split second later? But the war3 engine uses a psuedo-chance system so even with 100% it might not even trigger.. right? So how then?

The best I can think of is that the amount of damage needs to be tracked somehow (unit takes damage event?) and then triggering to give health back for evasion or deal the same value of damage again for crit, and then triggering the red text to rise ("miss" or the crit damage value). But... this'll need to be multi-unit instancability. I can set to watch each players character taking damage to do the evasion (aka a max of 12 things to watch), but I cant watch each creep for the crits.


Soo.. help?


EDIT: Before someone suggests it, I don't want to give critical strike and evasion abilities and modify the level (and thus chance) with triggers as the agility goes up or down. Units will already have 6 abilities.
 

Smitty

Member
Reaction score
20
Fairly sure you can manage the evasion part in game constants. As for crits, just give the ability to the units and hide it in a disabled spellbook.
 

Inflicted

Currently inactive
Reaction score
63
you will need some sort of damage detection event to accurately determine the times of your attacks. Then you can merely add a chance by checking random numbers against conditions to check when the attack should crit, and deal the damage multiplier using basic Arithmetic functions in the Editor.

With evasion, you could do when attacked (using a GDD), then calculate the random amount and compare it to your agility multiplied value. If reached, increase hit points before the attack hits equal to the amount of damage that would have been dealt. Only problem with this method is if the damage would instantly kill the unit it would not work, therefore you would need to increase and then decrease the maximum hit points to take the blow and then adjust it afterwards to the appropriate previous amount.
 

Smitty

Member
Reaction score
20
Most GDDs I've seen don't detect actual attacks. Also, adding hp as the unit takes damage will mean it doesn't die. So your method is correct (ish) you just need to be able to detect attacks.
 

Inflicted

Currently inactive
Reaction score
63
Well you could try something with buffs.
They do detect attacks, they just detect ability damage too :p
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top