• 🏆 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!

[Spell] Movement Speed, Attack Speed & Cast Animation

Status
Not open for further replies.
Level 10
Joined
Sep 11, 2013
Messages
319
Hi There!
I want to make a spell who will give to the hero Movement Speed, Attack Speed & Cast Animation
I tried bloodlust, but i don't want this "auto-casting right click" and idk how to disable it..
I tried berserk, but this spell doesn't have Cast Animation...
I tried scroll of haste, but it doesn't have Attack Speed increase options..

Is any other spell i can try???
Idk and i don't want to use triggers..
Any help will be appreciated:)
 

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,515
You can set negative values for Spell fields in the Object Editor and get the reverse effects in a lot of cases. In the World Editor, go to File/Preferences/General and turn on "Allow negative real values in the Object Editor".

So take Cripple for example, which reduces Attack Rate, Movement Speed, and Damage. You can set it's values to negative values which will then INCREASE Attack Rate, Movement Speed, and Damage.

I attached a map with two example abilities using the method I explained above. One is a Targeted ability and the other is an Instant ability that both do the same thing, increase the unit's Attack Rate and Movement Speed.

-The Targeted ability is based on Cripple with negative values.

-The Instant ability is based on Fan of Knives (I removed the damage from it). It uses a trigger that creates a Dummy unit (a completely invisible and uncontrollable unit) that casts the Targeted ability (Cripple) on our casting unit. This is a very simple trigger so you shouldn't have to worry about any bugs or issues.


And Cast Animation is a little vague. I'm assuming you want to reduce the Cast Backswing and Cast Point time? You would have to use triggers in order to do that.
1) First you would have to keep track of each unit's default Cast Backswing/Point durations.
2) Then you would have to detect when your unit receives the Spell buff
3) Then you would have to adjust the Backswing/Point using the new natives (decrease them)
  • Note: I'm not sure if these work yet. A lot of new Natives added in the recent patches don't work yet.
  • Unit - Set Unit: (Target unit of ability being cast)'s Real Field: Animation - Cast Backswing ('ucbs') to Value: 0.00
  • Unit - Set Unit: (Target unit of ability being cast)'s Real Field: Animation - Cast Point ('ucpt') to Value: 0.00
4) And finally you would have to detect when the buff ends/is dispelled and adjust these two values again (increase them)
 

Attachments

  • Speed Buff.w3x
    18.3 KB · Views: 30
Last edited:
Level 10
Joined
Sep 11, 2013
Messages
319
You can set negative values for Spell fields in the Object Editor and get the reverse effects in a lot of cases. In the World Editor, go to File/Preferences/General and turn on "Allow negative real values in the Object Editor".

So take Cripple for example, which reduces Attack Rate, Movement Speed, and Damage. You can set it's values to negative values which will then INCREASE Attack Rate, Movement Speed, and Damage.

I attached a map with two example abilities using the method I explained above. One is a Targeted ability and the other is an Instant ability that both do the same thing, increase the unit's Attack Rate and Movement Speed.

-The Targeted ability is based on Cripple with negative values.

-The Instant ability is based on Fan of Knives (I removed the damage from it). It uses a trigger that creates a Dummy unit (a completely invisible and uncontrollable unit) that casts the Targeted ability (Cripple) on our casting unit. This is a very simple trigger so you shouldn't have to worry about any bugs or issues.


And Cast Animation is a little vague. I'm assuming you want to reduce the Cast Backswing and Cast Point time? You would have to use triggers in order to do that.
1) First you would have to keep track of each unit's default Cast Backswing/Point durations.
2) Then you would have to detect when your unit receives the Spell buff
3) Then you would have to adjust the Backswing/Point using the new natives (decrease them)
  • Note: I'm not sure if these work yet. A lot of new Natives added in the recent patches don't work yet.
  • Unit - Set Unit: (Target unit of ability being cast)'s Real Field: Animation - Cast Backswing ('ucbs') to Value: 0.00
  • Unit - Set Unit: (Target unit of ability being cast)'s Real Field: Animation - Cast Point ('ucpt') to Value: 0.00
4) And finally you would have to detect when the buff ends/is dispelled and adjust these two values again (increase them)

The idea with Cripple and negative values is perfect.
It was all i needed. It works.
Thanks sir:)
 
Status
Not open for further replies.
Top