Ability trigger crashing game

THE_X

New Member
Reaction score
49
so first off Taking damage frosty fireworks
Trigger:
  • Events
    • Time - Every 0.10 seconds of game time
    • Conditions
    • Actions
      • Set Group[51] = (Units in (Entire map) matching (((Matching unit) has buff Frosty Fireworks [stun1] ) Equal to True))
      • Set Group[52] = (Units in (Entire map) matching (((Matching unit) has buff Frosty Fireworks [stun2] ) Equal to True))
      • Set Group[53] = (Units in (Entire map) matching (((Matching unit) has buff Frosty Fireworks [stun3] ) Equal to True))
      • Set Group[54] = (Units in (Entire map) matching (((Matching unit) has buff Frosty Fireworks [stun4] ) Equal to True))
      • Unit Group - Pick every unit in Group[51] and do (Actions)
        • Loop - Actions
          • Set Point[1] = (Position of (Picked unit))
          • Unit - Create 1 Dummy for Neutral Hostile at Point[1] facing Default building facing degrees
          • Unit - Add Frosty Fireworks Slow to (Last created unit)
          • Unit - Set level of Frosty Fireworks Slow for (Last created unit) to 1
          • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Unit - Add a 0.20 second Generic expiration timer to (Last created unit)
      • Unit Group - Pick every unit in Group[52] and do (Actions)
        • Loop - Actions
          • Set Point[1] = (Position of (Picked unit))
          • Unit - Create 1 Dummy for Neutral Hostile at Point[1] facing Default building facing degrees
          • Unit - Add Frosty Fireworks Slow to (Last created unit)
          • Unit - Set level of Frosty Fireworks Slow for (Last created unit) to 2
          • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Unit - Add a 0.20 second Generic expiration timer to (Last created unit)
      • Unit Group - Pick every unit in Group[53] and do (Actions)
        • Loop - Actions
          • Set Point[1] = (Position of (Picked unit))
          • Unit - Create 1 Dummy for Neutral Hostile at Point[1] facing Default building facing degrees
          • Unit - Add Frosty Fireworks Slow to (Last created unit)
          • Unit - Set level of Frosty Fireworks Slow for (Last created unit) to 3
          • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Unit - Add a 0.20 second Generic expiration timer to (Last created unit)
      • Unit Group - Pick every unit in Group[54] and do (Actions)
        • Loop - Actions
          • Set Point[1] = (Position of (Picked unit))
          • Unit - Create 1 Dummy for Neutral Hostile at Point[1] facing Default building facing degrees
          • Unit - Add Frosty Fireworks Slow to (Last created unit)
          • Unit - Set level of Frosty Fireworks Slow for (Last created unit) to 4
          • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Unit - Add a 0.20 second Generic expiration timer to (Last created unit)
      • Custom script: call DestroyGroup (udg_Group[51])
      • Custom script: call DestroyGroup (udg_Group[52])
      • Custom script: call DestroyGroup (udg_Group[53])
      • Custom script: call DestroyGroup (udg_Group[54])


that is just the checker for units with the buff, it alone wont crash the game and it does work

Trigger:
  • Extra Frosty Fiireworks damage
    • Events
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) has buff Frosty Fireworks [1] ) Equal to True
        • Then - Actions
          • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.05) damage of attack type Chaos and damage type Divine
          • Game - Display to (All players) the text: (String(((Damage taken) x 0.05)))
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering unit) has buff Frosty Fireworks [2] ) Equal to True
            • Then - Actions
              • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.10) damage of attack type Chaos and damage type Divine
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Triggering unit) has buff Frosty Fireworks [3] ) Equal to True
                • Then - Actions
                  • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.15) damage of attack type Chaos and damage type Divine
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • ((Triggering unit) has buff Frosty Fireworks [4] ) Equal to True
                    • Then - Actions
                      • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.20) damage of attack type Chaos and damage type Divine
                      • Game - Display to (All players) the text: (String(((Damage taken) x 0.20)))
                    • Else - Actions

k so this is a unit takes damage event i got triggers that add all new made and premade units into this trigger, but i think this may be the one crashing me. Any help with why?
 

mapguy

New Member
Reaction score
46
In the first trigger U are not removing the POINTS, u'll cause a memory leak.

In the second trigger ur causing damage infinity times, because:

whe u damage a unit with the trigger ur dealing more damage, and this damage will run the trigger again, and the new damage runs again, again again, in other words you are dealing this damage INFINITY times. U should TURN OFF the trigger before the damage and TURN ON after the trigger damages the unit.
 

mapguy

New Member
Reaction score
46
oh thanks for the catch

I edited my post, U read it in the first time or in after editing?


SEE WHAT U CAN DO!!?

I just told you!

remove POINTS after using them and turn off turn on the trigger before/after damage via trigger
 

THE_X

New Member
Reaction score
49
yea as in thanks for your help.... ill see what i can do with your help.....
 

THE_X

New Member
Reaction score
49
yea forgot about that stuff, anyways it accualy does help a little it slows it down not making it infinite but still a lot of cycles are going on
 

THE_X

New Member
Reaction score
49
? why would i use that i need something to stop my loop w/o taking my damage trigger away, unless theres a spell or some other way to increase damage to a target from any damage
 

THE_X

New Member
Reaction score
49
Trigger:
  • Extra Frosty Fiireworks damage
    • Events
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) has buff Frosty Fireworks [1] ) Equal to True
        • Then - Actions
          • Trigger - Turn off (This trigger)
          • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.05) damage of attack type Chaos and damage type Divine
          • Game - Display to (All players) the text: (String(((Damage taken) x 0.05)))
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering unit) has buff Frosty Fireworks [2] ) Equal to True
            • Then - Actions
              • Trigger - Turn off (This trigger)
              • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.10) damage of attack type Chaos and damage type Divine
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Triggering unit) has buff Frosty Fireworks [3] ) Equal to True
                • Then - Actions
                  • Trigger - Turn off (This trigger)
                  • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.15) damage of attack type Chaos and damage type Divine
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • ((Triggering unit) has buff Frosty Fireworks [4] ) Equal to True
                    • Then - Actions
                      • Trigger - Turn off (This trigger)
                      • Unit - Cause (Damage source) to damage (Triggering unit), dealing ((Damage taken) x 0.20) damage of attack type Chaos and damage type Divine
                      • Game - Display to (All players) the text: (String(((Damage taken) x 0.20)))
                    • Else - Actions
      • Trigger - Turn on (This trigger)


yes im really turning it off, im not new to this stuff i know what you mean

Edit: also i have found its running about 7 to 15 times before it really turns itself off in the game by putting in a run checker.
 

Bogrim

y hello thar
Reaction score
154
I don't see an event in your damage trigger, but I see unit references to an event response. How are you running the trigger?
 

THE_X

New Member
Reaction score
49
dont have my map editor open atm, bassicaly just says

event: after 1 second of the game has passed
conditions:
Actions: pick all units in the entire map and do actions
loop - Add Unit takes damage to ( then the trigger) event

then another one that says when a unit enters the entire map (so when a new unit comes into play) it adds that unit into the trigger with Unit takes damage as the event, thats bassicaly it nothing fancy
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top