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

How to make Multi-User Slide Ability

Status
Not open for further replies.
Level 13
Joined
Oct 12, 2016
Messages
769
Metamorphosis has a few peculiarities. Make sure one of the heroes is listed as a "dependency" to the other, and that they both have the same stats/resource costs (food, gold, lumber).
Other things like attack range, attack speed, movement speed, base health, base mana, base damage, damage dice, health regen, mana regen, and normal abilities (non-hero) can be different without problems on either form.
If you want specific abilities to appear on different forms, I recommend adding it but disabling it on map initialization for that player. Enable it when you need it. Though, this depends on what you mean by adding the ability too...

Also, god help you if you use a spellbook ability with Metamorphosis.
It can work, but it's a real pain to figure out.
 
Level 6
Joined
Apr 20, 2016
Messages
215
Metamorphosis has a few peculiarities. Make sure one of the heroes is listed as a "dependency" to the other, and that they both have the same stats/resource costs (food, gold, lumber).
Other things like attack range, attack speed, movement speed, base health, base mana, base damage, damage dice, health regen, mana regen, and normal abilities (non-hero) can be different without problems on either form.
If you want specific abilities to appear on different forms, I recommend adding it but disabling it on map initialization for that player. Enable it when you need it. Though, this depends on what you mean by adding the ability too...

Also, god help you if you use a spellbook ability with Metamorphosis.
It can work, but it's a real pain to figure out.
Well I want to make a aghanims scepter ability but only when a unit is in its metamorphosis mode. Its kinda hard to make a system that adds or remove ability, picture this, if you used a metamorphosis ability with 0 cooldown and 0 time limit and when you are morphed you will gain ability and when you revert it will be removed, but what if that hero died in morphed mode, the added ability is still there

EDIT: How to make a unit play animation using triggers
  • Wing Attack loop
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • For each (Integer WA_Loop) from 1 to WA_MUI, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • WA_TurnOn[WA_Loop] Equal to True
            • Then - Actions
              • Set WA_Slide1 = (Position of WA_Caster[WA_Loop])
              • Set WA_Slide2 = (WA_Slide1 offset by 30.00 towards WA_Angle[WA_Loop] degrees)
              • Set WA_Moved[WA_Loop] = (WA_Moved[WA_Loop] + 30.00)
              • Animation - Queue WA_Caster[WA_Loop]'s walk animation
              • Special Effect - Create a special effect at WA_Slide2 using Abilities\Weapons\SteamTank\SteamTankImpact.mdl
              • Special Effect - Destroy (Last created special effect)
              • Unit - Move WA_Caster[WA_Loop] instantly to WA_Slide2
              • Custom script: call RemoveLocation(udg_WA_Slide1)
              • Custom script: call RemoveLocation(udg_WA_Slide2)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((WA_Caster[WA_Loop] is dead) Equal to True) or (WA_Moved[WA_Loop] Greater than or equal to WA_Distance[WA_Loop])
                • Then - Actions
                  • -------- Spell Finished --------
                  • Set WA_Index = (WA_Index - 1)
                  • Unit - Unpause WA_Caster[WA_Loop]
                  • Unit - Turn collision for WA_Caster[WA_Loop] On
                  • -------- Nulling the Variables --------
                  • Set WA_Angle[WA_Loop] = 0.00
                  • Set WA_Caster[WA_Loop] = No unit
                  • Set WA_Distance[WA_Loop] = 0.00
                  • Set WA_Moved[WA_Loop] = 0.00
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • WA_Index Equal to 0
                    • Then - Actions
                      • Animation - Play WA_Caster[WA_Loop]'s stand animation
                      • Trigger - Turn off (This trigger)
                      • Set WA_MUI = 0
                    • Else - Actions
                • Else - Actions
            • Else - Actions
 
Last edited:
Status
Not open for further replies.
Top