Group Leak Fix

Tarindis_18

New Member
Reaction score
0
Hello, this is my first time experiencing what I believe to be a group leak, when I run the triggers below it will spawn hundreds and hundreds of "defenders" (custom unit). I have tried using the following custom scripts:
Custom script: set bj_wantDestroyGroup = true
Custom Script: call DestroyGroup(udg_UnitGroup)
and I have tried placing them in different spots all around both triggers. I am a huge noob when it comes to leaks, so any suggestion (no matter how blatantly obvious) can be an unexplored solution. Thank you!


Trigger 1
Events
Time - Elapsed game time is 28.00 seconds
Conditions
Actions
Unit Group - Add all units of (Units in LeftBuildArea <gen>) to (Units within 512.00 of (Position of Dummy2 0004 <gen>))
Custom script: set bj_wantDestroyGroup = true

Trigger 2
Events
Time - Elapsed game time is 29.00 seconds
Conditions
Actions
Trigger - Add to (This trigger) the event (Unit - A unit comes within 512.00 of Dummy2 0004 <gen>)
If ((Unit-type of (Triggering unit)) Equal to Defender) then do (Unit - Create 1 Defender for Player 11 (Dark Green) at (Random point in Left Melee <gen>) facing Default building facing degrees) else do (Do nothing)

Custom script: set bj_wantDestroyGroup = true
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Those triggers look seriously fucked up. Whatever you are trying to do, I can assure you that this is far from your goal.
You better tell us what exactly you want to do, maybe then we can guide you.

Just to make sure you know: destroying a unit group has nothing to do with removing units from the map.
 

Tarindis_18

New Member
Reaction score
0
Lol ok, I posted a thread yesterday which you helped me on (http://www.thehelper.net/threads/variable-help.161889/) and I could have used:
Trigger:
  • Buildspawn
    • Events
      • Unit - A unit Finishes construction
    • Conditions
      • (Building Region <gen> contains (Triggering unit)) Equal to True
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Unit-type of (Triggering unit)) Equal to Footman (Building, 3)
        • Then - Actions
          • Unit - Create 3 Footman for (Owner of (Triggering unit)) at (Center of Spawn Region <gen>) facing Default building facing degrees
        • Else - Actions
but the problem was that I needed a Timer - Timer expires event, one thing led to another and somehow this is what I ended up with.
OVERALL this is what I would like-Player builds 1 footman in Region A, Timer expires, 2 footman are spawned inRegionB.
Player builds 4 priests in Region A, Timer expires, 4 priests are spawned in Region B.
Thank you and sorry for the confusion,
-Tarindis
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Well if you want to do something timed then:
1) Why do you not have a periodic event?
2) Why do you still use unit groups?
3) Why do you dynamically add events to a trigger? (never do this by the way)


You only need a single trigger which is as simple as this: (Pseudo Code)
Code:
Event
- Every X seconds
Conditions
Actions
pick every unit in Region A and do
   if picked unit == FootmanBuilding
      create 2 footman in Region B
   else if picked unit == KnightBuilding
      create 2 Knights in Region B
   else if ...
 

Tarindis_18

New Member
Reaction score
0
Omg, this works flawlessly, I love you! I cant say thank you enough, been working on this for like a week and you make it seem like a walk through the park. Thank you!!!!
 

Tarindis_18

New Member
Reaction score
0
One more question if you would, I want the units spawning above to spawn 1 second before the actual round starts. So would I set variable "Spawn_Timer = Round_timer - 1"? this is what I wanted to do originally, but after playing around with it a little I couldnt even figure out how to do that. Is there a way to make this happen?
 

afisakov

You can change this now in User CP.
Reaction score
37
If your goal is to have them spawn once in region B, each tie the round starts then I suggest you change the start of round trigger to:
Accname's actions..
wait 1 second
rest of round start trigger including anouncement

Then this will occur at the start of every round. Or actually 1 second before since the round beginning announcement (and everything else) will be delayed 1 second.
Also, the way this is written, the units in region A will spawn a copy in region B every wave after they are trained unless you get rid of them in some other trigger. Hope that is what you where going for, cannot really tell.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top