Trigger Sleep Action/Wait

dianamod27

Member
Reaction score
1
Edit: Solved

I just finished writing two triggers that allow creeps to respawn. Of course I tested it with low respawn times like 10 seconds, and it works perfectly. However, my desired respawn time is as high as 20 minutes, and that doesn't work.

Assuming that WC3 really just can't handle long waits, does anyone happen to know what the longest possible wait is?
 

Happy

Well-Known Member
Reaction score
71
first of all....why god damn you wanna respawn creeps every 20 MINUTES ? Oo

then afaik wait can be as long as you want them to be...there could be a trigger overiding something or such a thing.
 

MP®

Member
Reaction score
11
Maybe if you post your trigger here, we can help you. Without information, we can't say what's wrong.
 

dianamod27

Member
Reaction score
1
first of all....why god damn you wanna respawn creeps every 20 MINUTES ? Oo
Because.

Maybe if you post your trigger here, we can help you. Without information, we can't say what's wrong.
Well, I actually tested every aspect of these triggers and there are only two instances in which they don't work:
1. When I set the timer to 20 minutes rather than 5 seconds.
2. When I do the following. This is how I save position and facing angle of the preplaced creeps:
Trigger:
  • Creep Respawn Init
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set TempGroup = (Units owned by Neutral Hostile)
      • Unit Group - Pick every unit in TempGroup and do (Actions)
        • Loop - Actions
          • Custom script: local integer TempInteger
          • Custom script: call SetUnitUserData( GetEnumUnit(), TempInteger )
          • Custom script: set udg_PointArray[TempInteger] = GetUnitLoc(GetEnumUnit())
          • Custom script: set udg_AngleArray[TempInteger] = GetUnitFacing(GetEnumUnit())
          • Custom script: set TempInteger = ( TempInteger + 1 )
      • Custom script: call DestroyGroup (udg_TempGroup)

This part definitely works because I tested it thoroughly, even using the GUI and a global variable.

This is how I respawn the creeps:
Trigger:
  • Creep Respawn Action
    • Events
      • Unit - A unit owned by Neutral Hostile Dies
    • Conditions
    • Actions
      • Custom script: local unit TempUnit
      • Custom script: set TempUnit = GetDyingUnit()
      • Wait 5.00 seconds
      • Custom script: call CreateNUnitsAtLoc( 1, GetUnitTypeId(TempUnit), Player(PLAYER_NEUTRAL_AGGRESSIVE), GetUnitLoc(TempUnit), GetUnitFacing(TempUnit) )
      • Custom script: call SetUnitUserData( GetLastCreatedUnit(), GetUnitUserData(TempUnit) )

As you can see, the line immediately after the wait spawns the creeps right where they died and facing the same angle they were facing when they died, but since I want them to respawn as I put them in the editor, I wrote this line to replace the one immediately after the wait:
Trigger:
  • Custom script: call CreateNUnitsAtLoc( 1, GetUnitTypeId(TempUnit), Player(PLAYER_NEUTRAL_AGGRESSIVE), udg_PointArray[GetUnitUserData(TempUnit)], udg_AngleArray[GetUnitUserData(TempUnit)] )

This one doesn't work though and I can't figure out why for the life of me.
 

jnZ

I
Reaction score
64
Trigger:
  • Creep Respawn Action
    • Events
      • Unit - A unit owned by Neutral Hostile Dies
    • Conditions
    • Actions
      • Custom script: local integer ut = GetUnitTypeId(GetTriggerUnit())
      • Custom script: local location p = GetUnitLoc(GetTriggerUnit())
      • Custom script: local real facing = GetUnitFacing(GetTriggerUnit())
      • Custom script: local integer udata = GetUnitUserData(GetTriggerUnit())
      • Wait 5.00 seconds
      • Custom script: call CreateNUnitsAtLoc( 1, ut, Player(PLAYER_NEUTRAL_AGGRESSIVE), p, facing )
      • Custom script: call SetUnitUserData( GetLastCreatedUnit(), udata )


try it like this (note the leaks are still there)
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
608
It might be because the unit has fully decayed and no longer exists in the game after 20 minutes. Try saving all the necessary variables, like in jnZ's trigger.
 

dianamod27

Member
Reaction score
1
Going to try that, thanks guys. Dunno why I thought that local integer worked by the way, but I got it.

Edit: Works perfectly
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • The Helper The Helper:
    Happy Friday!
    +1
  • tom_mai78101 tom_mai78101:
    Starting this upcoming Thursday, I will be in Japan for 10 days.
  • tom_mai78101 tom_mai78101:
    Thursday - Friday will be my Japan arrival flight. 9 days later, on a Sunday, will be my return departure flight.
    +2
  • The Helper The Helper:
    Hope you have safe travels my friend!
    +1
  • vypur85 vypur85:
    Wow spring time in Japan is awesome. Enjoy!
  • The Helper The Helper:
    Hopefully it will be more pleasure than work
  • vypur85 vypur85:
    Recently tried out ChatGPT about WE triggering. Wow it's capable of giving a somewhat legitimate response.
  • The Helper The Helper:
    I am sure it has read all the info on the forums here
  • The Helper The Helper:
    i think triggering is just scripting and chatgpt is real good at code
  • vypur85 vypur85:
    Yeah I suppose so. It's interesting how it can explain in so much detail.
  • vypur85 vypur85:
    But yet it won't work.
  • The Helper The Helper:
    it does a bad ass job doing excel vba code it has leveled me up at my job when I deal with excel that is for sure
  • vypur85 vypur85:
    Nice! I love Excel coding as well. Has always been using Google to help me. Maybe I'll use ChatGPT next time when I need it.
  • The Helper The Helper:
    yeah whatever it puts out even if it is not perfect I can fix it and the latest version of chatgpt can create websites from pictures it will not be long until it can do that with almost all the tools
    +1
  • The Helper The Helper:
    These new Chat AI programs are going to change everything everyone better Buckle the Fuck Up!
  • The Helper The Helper:
    oh and Happy Tuesday Evening! :)
    +1
  • jonas jonas:
    Im worried they'll change things for worse
  • jonas jonas:
    A lot more low quality content, a lot more half-baked stuff.
  • jonas jonas:
    If you're good enough to spot the mistakes of the answers you don't need it in the first place. If you aren't good enough, you're gonna rely on some half-correct stuff
  • The Helper The Helper:
    the earlier AI is and has been used extensively for publishing news and other content for a while now
  • jonas jonas:
    I used to be active on quora, it's now flooded with extremely similar, superficial answers that often miss the point of the question
  • N NJJ:
    hi
  • N NJJ:
    Hello, gathering all my old accounts… :)
    +1

    The Helper Discord

    Members online

    No members online now.

    Affiliates

    Hive Workshop NUON Dome World Editor Tutorials

    Network Sponsors

    Apex Steel Pipe - Buys and sells Steel Pipe.
    Top