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

[Solved] Spell won't work

Status
Not open for further replies.
Level 4
Joined
Sep 11, 2018
Messages
74
I imported DG`s Fire Spellpack v1.1 but no matter what the big ass explosion (fire blast and shattered universe) wont happen. I've checked every single dummy, ability and buff many times. I even make sure the triggers look exactly the same. Any help? I got over a dozen custom spells in the same map btw.
 
Level 4
Joined
Sep 11, 2018
Messages
74
Mine
  • Fire blast init
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fire Blast
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FB_Indexsize Equal to 0
        • Then - Actions
          • Trigger - Turn on Fire Blast loop <gen>
        • Else - Actions
      • Set FB_Indexsize = (FB_Indexsize + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FB_Indexsize Greater than FB_Maxindexsize
        • Then - Actions
          • Set FB_Integer[FB_Indexsize] = FB_Indexsize
          • Set FB_Maxindexsize = FB_Indexsize
        • Else - Actions
      • Set FB_Temp = FB_Integer[FB_Indexsize]
      • -------- nothing new here --------
      • Set FB_Caster[FB_Temp] = (Triggering unit)
      • Set FB_Point[1] = (Position of FB_Caster[FB_Temp])
      • Set FB_Point[2] = (Target point of ability being cast)
      • -------- Creates a dummy that will mark the point where the explosion will be. --------
      • Unit - Create 1 Dummy Fire Blast for (Owner of FB_Caster[FB_Temp]) at FB_Point[2] facing Default building facing degrees
      • Set FB_Dummy[FB_Temp] = (Last created unit)
      • -------- This is the orb.It is ordered to move to the targeted area --------
      • Unit - Create 1 Fire Blast for (Owner of FB_Caster[FB_Temp]) at FB_Point[1] facing Default building facing degrees
      • Set FB_Blast[FB_Temp] = (Last created unit)
      • Unit - Order FB_Blast[FB_Temp] to Move To FB_Point[2]
      • Custom script: call RemoveLocation(udg_FB_Point[1])
      • Custom script: call RemoveLocation(udg_FB_Point[2])
  • Fire Blast loop
    • Events
      • Time - Every 0.10 seconds of game time
    • Conditions
    • Actions
      • For each (Integer FB_Loop) from 1 to FB_Indexsize, do (Actions)
        • Loop - Actions
          • Set FB_Temp = FB_Integer[FB_Loop]
          • Set FB_Point[3] = (Position of FB_Blast[FB_Temp])
          • Set FB_Point[4] = (Position of FB_Dummy[FB_Temp])
          • Set FB_Real[FB_Temp] = 0.00
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Distance between FB_Point[3] and FB_Point[4]) Greater than or equal to 50.00
            • Then - Actions
              • -------- If you want to add some effects or other things while the orb is moving you can do it in this loop.Since I don`t add anything it`s empty --------
            • Else - Actions
              • Unit - Kill FB_Blast[FB_Temp]
              • Unit - Kill FB_Dummy[FB_Temp]
              • For each (Integer FB_Explosion[FB_Temp]) from 1 to 10, do (Actions)
                • Loop - Actions
                  • -------- This will be the explosion --------
                  • Set FB_Point[5] = (FB_Point[3] offset by 300.00 towards FB_Real[FB_Temp] degrees)
                  • Unit - Create 1 Dummy Fire Blast for (Owner of FB_Caster[FB_Temp]) at FB_Point[3] facing Default building facing degrees
                  • Unit - Add Fire Blast dummy to (Last created unit)
                  • Unit - Set level of Fire Blast dummy for (Last created unit) to (Level of Fire Blast for FB_Caster[FB_Temp])
                  • Unit - Order (Last created unit) to Undead Crypt Lord - Impale FB_Point[5]
                  • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                  • Set FB_Real[FB_Temp] = (FB_Real[FB_Temp] + (360.00 / 10.00))
                  • Custom script: call RemoveLocation(udg_FB_Point[5])
              • Set FB_Integer[FB_Loop] = FB_Integer[FB_Indexsize]
              • Set FB_Integer[FB_Indexsize] = FB_Temp
              • Set FB_Indexsize = (FB_Indexsize - 1)
              • Set FB_Loop = (FB_Loop - 1)
          • Custom script: call RemoveLocation(udg_FB_Point[3])
          • Custom script: call RemoveLocation(udg_FB_Point[4])
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FB_Indexsize Equal to 0
        • Then - Actions
          • Trigger - Turn off (This trigger)
        • Else - Actions
Original
  • Fire blast init
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fire Blast
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FB_Indexsize Equal to 0
        • Then - Actions
          • Trigger - Turn on Fire Blast loop <gen>
        • Else - Actions
      • Set FB_Indexsize = (FB_Indexsize + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FB_Indexsize Greater than FB_Maxindexsize
        • Then - Actions
          • Set FB_Integer[FB_Indexsize] = FB_Indexsize
          • Set FB_Maxindexsize = FB_Indexsize
        • Else - Actions
      • Set FB_Temp = FB_Integer[FB_Indexsize]
      • -------- nothing new here --------
      • Set FB_Caster[FB_Temp] = (Triggering unit)
      • Set FB_Point[1] = (Position of FB_Caster[FB_Temp])
      • Set FB_Point[2] = (Target point of ability being cast)
      • -------- Creates a dummy that will mark the point where the explosion will be. --------
      • Unit - Create 1 Dummy Fire Blast for (Owner of FB_Caster[FB_Temp]) at FB_Point[2] facing Default building facing degrees
      • Set FB_Dummy[FB_Temp] = (Last created unit)
      • -------- This is the orb.It is ordered to move to the targeted area --------
      • Unit - Create 1 Fire Blast for (Owner of FB_Caster[FB_Temp]) at FB_Point[1] facing Default building facing degrees
      • Set FB_Blast[FB_Temp] = (Last created unit)
      • Unit - Order FB_Blast[FB_Temp] to Move To FB_Point[2]
      • Custom script: call RemoveLocation(udg_FB_Point[1])
      • Custom script: call RemoveLocation(udg_FB_Point[2])
  • Fire Blast loop
    • Events
      • Time - Every 0.10 seconds of game time
    • Conditions
    • Actions
      • For each (Integer FB_Loop) from 1 to FB_Indexsize, do (Actions)
        • Loop - Actions
          • Set FB_Temp = FB_Integer[FB_Loop]
          • Set FB_Point[3] = (Position of FB_Blast[FB_Temp])
          • Set FB_Point[4] = (Position of FB_Dummy[FB_Temp])
          • Set FB_Real[FB_Temp] = 0.00
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Distance between FB_Point[3] and FB_Point[4]) Greater than or equal to 50.00
            • Then - Actions
              • -------- If you want to add some effects or other things while the orb is moving you can do it in this loop.Since I don`t add anything it`s empty --------
            • Else - Actions
              • Unit - Kill FB_Blast[FB_Temp]
              • Unit - Kill FB_Dummy[FB_Temp]
              • For each (Integer FB_Explosion[FB_Temp]) from 1 to 10, do (Actions)
                • Loop - Actions
                  • -------- This will be the explosion --------
                  • Set FB_Point[5] = (FB_Point[3] offset by 300.00 towards FB_Real[FB_Temp] degrees)
                  • Unit - Create 1 Dummy Fire Blast for (Owner of FB_Caster[FB_Temp]) at FB_Point[3] facing Default building facing degrees
                  • Unit - Add Fire Blast dummy to (Last created unit)
                  • Unit - Set level of Fire Blast dummy for (Last created unit) to (Level of Fire Blast for FB_Caster[FB_Temp])
                  • Unit - Order (Last created unit) to Undead Crypt Lord - Impale FB_Point[5]
                  • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                  • Set FB_Real[FB_Temp] = (FB_Real[FB_Temp] + (360.00 / 10.00))
                  • Custom script: call RemoveLocation(udg_FB_Point[5])
              • Set FB_Integer[FB_Loop] = FB_Integer[FB_Indexsize]
              • Set FB_Integer[FB_Indexsize] = FB_Temp
              • Set FB_Indexsize = (FB_Indexsize - 1)
              • Set FB_Loop = (FB_Loop - 1)
          • Custom script: call RemoveLocation(udg_FB_Point[3])
          • Custom script: call RemoveLocation(udg_FB_Point[4])
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FB_Indexsize Equal to 0
        • Then - Actions
          • Trigger - Turn off (This trigger)
        • Else - Actions
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,199
Worldeditor keeps updating some features stays and some don't the spell you want was made in 2009 and last updated 2010
Unlikely...
I imported DG`s Fire Spellpack v1.1 but no matter what the big ass explosion (fire blast and shattered universe) wont happen. I've checked every single dummy, ability and buff many times. I even make sure the triggers look exactly the same. Any help? I got over a dozen custom spells in the same map btw.
Could you post the map you imported it into for hands on comparison? If you can recreate the problem in a dummy map with just the imported spell it is fine. This is to rule out conflicts with other systems in the map.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,199
The problem is the Channel based Pillar of Flame ability is corrupting the order type for impale and so preventing triggers from casting it. Both abilities that are not working use dummy abilities based on Impale which use the impale order string.

Removing the Pillar of Flame ability, changing its order string to be something else or setting it to the same target type as impale will fix the problem.

Channel should not be used to change the target type of an order string. If it does, it can break stuff in strange and hard to diagnose ways. This took me nearly 2 hours to track down...
 
Status
Not open for further replies.
Top