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

[Spell] Pyroblast

Level 12
Joined
Feb 13, 2012
Messages
403
hello i want to make a fire casting mage and i want to make a Pyroblast spell like in WOW but this spell will make a lot of damge and fire DOT pleass help
 

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,570
Here you go, it's what I think you wanted but I don't really know since Pyroblast has changed over the years. (I don't even play WoW)

To import it you'll need to copy some stuff from the object editor:
Unit: Dummy (Uncle)
Ability: Pyroblast (Hero)
Ability: Pyroblast (Dummy - DoT)
Buff: Pyroblast (Hero - Hidden)
Buff: Pyroblast (Dummy - DoT)

Make sure the Abilities and Buffs are linked together!

Then copy and paste the Copy And Paste Me folder from the trigger editor.

Then modify the Pyroblast Setup trigger:
  • Pyroblast Setup
    • Events
      • Time - Elapsed game time is 0.00 seconds
    • Conditions
    • Actions
      • -------- Define the abilities and buffs (you can delete these 4 variables if you know how to update the triggers): --------
      • Set VariableSet Pyroblast_Ability_Hero = Pyroblast (Hero)
      • Set VariableSet Pyroblast_Buff_Hero = Pyroblast (Hero - Hidden)
      • Set VariableSet Pyroblast_Ability_Dummy = Pyroblast (Dummy - DoT)
      • Set VariableSet Pyroblast_Buff_Dummy = Pyroblast (Dummy - DoT)
      • -------- --------
      • -------- Define the initial damage, damage per second, and duration per level: --------
      • Set VariableSet Pyroblast_Scaling_Damage[1] = 75.00
      • Set VariableSet Pyroblast_Scaling_Damage[2] = 150.00
      • Set VariableSet Pyroblast_Scaling_Damage[3] = 225.00
      • -------- --------
      • Set VariableSet Pyroblast_Scaling_DPS[1] = 10.00
      • Set VariableSet Pyroblast_Scaling_DPS[2] = 20.00
      • Set VariableSet Pyroblast_Scaling_DPS[3] = 30.00
      • -------- --------
      • Set VariableSet Pyroblast_Scaling_Duration[1] = 4.00
      • Set VariableSet Pyroblast_Scaling_Duration[2] = 8.00
      • Set VariableSet Pyroblast_Scaling_Duration[3] = 12.00
This spell is designed using these two systems:
Both of which are very powerful and useful to have. Keep in mind that you should only have one of each of these systems in your map! The Missile system comes with other systems as well, so if things start breaking then that may be why. That being said, it should be fine. Also, with the Unit Indexer system you should not be using the Set Unit Custom Value action anywhere. The system needs to use this Action exclusively. That being said, the system provides a much better alternative as it allows you near unlimited Custom Values in the form of Variable Arrays.

The custom value fix is easy. This old method:
  • Unit - Set (Triggering unit)'s custom value to 5
Becomes this:
  • Set Variable MyInteger[(Custom value of (Triggering unit)] = 5
You're now tracking the value 5 inside of the MyInteger variable (a variable you would have created yourself). This value is now "attached" to the (Triggering unit) since no other unit will share it's Custom Value.
 

Attachments

  • Pyroblast 1.w3m
    86.8 KB · Views: 4
Last edited:
Top