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

Creep Respawn (GUI)

Level 14
Joined
Dec 29, 2009
Messages
931
You guys keep commenting about different ways to do it... why don't you post your own tutorial? This system is easy to use, and works. Stop spending 6 hours trying to find a longer way to do it, and just get over it. I doubt many people check this anymore... but whatever. :grin:
 
Level 3
Joined
Feb 6, 2009
Messages
50
what the crap are you talking about toxic? It's a great tutorial... it shouldn't need to sho w HOW to do it with the triggers in text format... anyone can look at the text and see "trigger 1...set variable, unit- set custom value, and again set variable... each trigger says what to look for, unit is obvious set is obvious, and if you can't figure out custom script and wait, than either you need to give up now, or learn to hit the buttons on your keyboard at least... with the ability to search, and the ability to select the trigger and hit the first letter in the trigger name its not that hard...)
in fact I may not be a beginner map maker, but I still believe as long as you have a hint of intelligence you can understand it.
the portrayal is flawless, and it tells you what to do at the start, along with the effect...

i'm pretty sure my problem is that some of my other triggers interfer with how this one works, and thats why it didn't work for me.
 
Level 3
Joined
Aug 28, 2010
Messages
28
I did everything that is written i created standard trigger the non-custom one and i still cant get creep respawn, help please!
 
Level 1
Joined
Nov 6, 2010
Messages
1
PLoblem didn't work Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
 
Level 12
Joined
Jun 10, 2008
Messages
1,043
dude wtf?
you make a tutorial and you don't attach a map with the triggers?
lazy people like me are just too lazy to manually create the triggers
also it's faster to just copy-paste triggers -.-

Dont like it? Stop complainign and get your ass of this page.
 
Level 6
Joined
Oct 2, 2008
Messages
122
Dont like it? Stop complainign and get your ass of this page.

hey dont be rude or be too harsh...

dude wtf?
you make a tutorial and you don't attach a map with the triggers?
lazy people like me are just too lazy to manually create the triggers
also it's faster to just copy-paste triggers -.-

Triggering are best if u know them by hand, and DO it yourself... copy paste-ing is not so recommended... at the least try understand how long it takes for the creator to come up with a decent leakless trigger...

if u have no intention of making ur own trigger, then get urself of this page or even out of Hive, u just wanna copy and have not even the slightest idea of how to create such a simple trigger... so dont be rude to others who try to help others who would want to learn, experienced and make it themselves...

@Animoi666 ur great, so ignore what xorkatoss just said....
 
Last edited:
Level 8
Joined
Apr 8, 2009
Messages
499
dude wtf?
you make a tutorial and you don't attach a map with the triggers?
lazy people like me are just too lazy to manually create the triggers
also it's faster to just copy-paste triggers -.-

Dude, if you stil need this respawn system, send me your map. i'll implant nice n quick.
but in the future, make some effort for it mkay?


@Animoi666 ur great, so ignore what this fela just said....

I just got called Great... hehe ;D~
 
Level 2
Joined
Jun 5, 2009
Messages
6
Omg, I'm almost with head ake, i'm new in WE and i'm having troubles to find that
Set Temp_Integer = (Temp_Integer + 1) << Where i can find this variable "Temp_Integer + 1"?? i need to create another variable named Temp_Integer + 1?
 
Level 6
Joined
Oct 2, 2008
Messages
122
Omg, I'm almost with head ake, i'm new in WE and i'm having troubles to find that
Set Temp_Integer = (Temp_Integer + 1) << Where i can find this variable "Temp_Integer + 1"?? i need to create another variable named Temp_Integer + 1?

set "temp_integer" is a custom variable. you need to create a custom variable from the integer variable.

1) go to triggers section. Ctrl+B to bring the variable editor up.
2) create new variables, create integer variable [name is up to u] --->
Temp_Integer, leave the "array" alone n untouched.
3) Go to triggers section again. this time create a new trigger.
4) right-click the "action section" and create new action, select "SET
VARIABLE"
5) select the "Temp_Integer" you've just made. then in the red colored
"value", change it to "Function"----> "Arithmetic"
6) under the Arithmetic section, change the 2 values to
"Temp_Integer" "+" "1"
7) there and ur done. and all custom variables are made in such ways. try
hitting a few buttons here and there in W.E...
8) there are guides on HIVEWORKSHOP as well. Check them out if u really
unsure how to make a
custom variable.
 
Level 2
Joined
Jun 5, 2009
Messages
6
set "temp_integer" is a custom variable. you need to create a custom variable from the integer variable.

1) go to triggers section. Ctrl+B to bring the variable editor up.
2) create new variables, create integer variable [name is up to u] --->
Temp_Integer, leave the "array" alone n untouched.
3) Go to triggers section again. this time create a new trigger.
4) right-click the "action section" and create new action, select "SET
VARIABLE"
5) select the "Temp_Integer" you've just made. then in the red colored
"value", change it to "Function"----> "Arithmetic"
6) under the Arithmetic section, change the 2 values to
"Temp_Integer" "+" "1"
7) there and ur done. and all custom variables are made in such ways. try
hitting a few buttons here and there in W.E...
8) there are guides on HIVEWORKSHOP as well. Check them out if u really
unsure how to make a
custom variable.

Now i made it! Thank you very much!
 
Level 2
Joined
May 28, 2011
Messages
3
So how do you get it to have its old loot table because i was testing it out and i have most of the loot tables set for my game but they do not re spawn with there loot tables this there some one that can just tell me what to do there or some thing i just need this and i will greatful.
 
Level 6
Joined
Oct 2, 2008
Messages
122
So how do you get it to have its old loot table because i was testing it out and i have most of the loot tables set for my game but they do not re spawn with there loot tables this there some one that can just tell me what to do there or some thing i just need this and i will greatful.

i dont think u need a loot table. u can just use a simple trigger, to generate the loots. i've explained it in the previous comments...
 
Level 1
Joined
Jul 17, 2011
Messages
4
Sorry for noob question, but I can't figure out how to make "Custom value of (triggering unit)" Can anyone help me:S?

edit: I found, thanks for the system<3
 
Level 2
Joined
Aug 30, 2011
Messages
12
hi guys..i just done a half of this tutorial and i need some help..explain me please how i make this lines
->Conditions
(Owner of (Triggering unit)) Equal to Neutral Hostile
(Custom Value of (Triggering unit)) Greater than 0
 
hi guys..i just done a half of this tutorial and i need some help..explain me please how i make this lines
->Conditions
(Owner of (Triggering unit)) Equal to Neutral Hostile
(Custom Value of (Triggering unit)) Greater than 0

The first one is a Player comparison (you can also use (Triggering player) Equal to Neutral Hostile) and the second one is an Integer comparison -> Unit - Custom value of unit.
 
Level 19
Joined
Jul 12, 2010
Messages
1,713
you learn by doing it yourself... maybe ?

i know how to make one myself but im too lazy and i still have lots of others things to do like MUI spells...
also i searched the spells section and couldn't find anything...
so can you post the map? pretty pls? :ogre_hurrhurr:

EDIT:
nvm i made one up really quick...also you leak a point when you create a unit...
and i heard that using custom values of units is not good because if another system uses them too then it will bug...

to clear the point leak when you create the unit you should save X & Y and then load it using hastables...
see the creep respawn i made to get a clearer idea...

  • CR Map Initialization
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Hashtable - Create a hashtable
      • Set CreepRespawn_Hashtable = (Last created hashtable)
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units owned by Neutral Hostile) and do (Actions)
        • Loop - Actions
          • Set CreepRespawn_Point = (Position of (Picked unit))
          • Hashtable - Save 8.00 as (Key Time) of (Key (Picked unit)) in CreepRespawn_Hashtable
          • Hashtable - Save (X of CreepRespawn_Point) as 1 of (Key (Picked unit)) in CreepRespawn_Hashtable
          • Hashtable - Save (Y of CreepRespawn_Point) as 2 of (Key (Picked unit)) in CreepRespawn_Hashtable
          • Custom script: call RemoveLocation(udg_CreepRespawn_Point)
  • CR Enter Map
    • Events
      • Unit - A unit enters (Playable map area)
    • Conditions
    • Actions
      • Set CreepRespawn_Point = (Position of (Triggering unit))
      • Hashtable - Save 8.00 as (Key Time) of (Key (Triggering unit)) in CreepRespawn_Hashtable
      • Hashtable - Save (X of CreepRespawn_Point) as 1 of (Key (Triggering unit)) in CreepRespawn_Hashtable
      • Hashtable - Save (Y of CreepRespawn_Point) as 2 of (Key (Triggering unit)) in CreepRespawn_Hashtable
      • Custom script: call RemoveLocation(udg_CreepRespawn_Point)
  • CR Respawn
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Owner of (Triggering unit)) Equal to Neutral Hostile
    • Actions
      • Wait (Load (Key Time) of (Key (Triggering unit)) from CreepRespawn_Hashtable) seconds
      • Set CreepRespawn_Point = (Point((Load 1 of (Key (Triggering unit)) from CreepRespawn_Hashtable), (Load 2 of (Key (Triggering unit)) from CreepRespawn_Hashtable)))
      • Unit - Create 1 (Unit-type of (Triggering unit)) for Neutral Hostile at CreepRespawn_Point facing Default building facing degrees
      • Custom script: call RemoveLocation(udg_CreepRespawn_Point)


at the least try understand how long it takes for the creator to come up with a decent leakless trigger.......
really? how long can it take? i did that creep respawn in less than 10 mins...
 
Last edited:
Level 6
Joined
Oct 2, 2008
Messages
122
I don't understand this part:

Set Temp_Integer = (Temp_Integer + 1)
"How can i get the '(Temp_Integer +1)' part? I can't find that!!:ogre_rage:"

it is a custom trigger. u need to make it on ur own. press ctrl + B n u will see a new window. press edit variables, add new variables.

now label ur variable as wad u like, for this instance: Temp_Integer [this will be ur label/name of the variable u will create] now select the type of variable it belongs to, for temp_integer <--- this already tells u it is an integer, so select integer variable.

now create a new action, select set new variable options.
change the set new variable to the one u created.

u will have:
  • Set Temp_Integer = (something like this)
change the (something like this) to arithmetic n select ur Temp_Integer + 1

and u will have this
  • Set Temp_Integer = (select arithmetic from function)
then you need to change the function value of the arithmetic to Temp_Integer + 1.

in the end u get this:
  • Set Temp_Integer = (Temp_Integer + 1)
 
Level 2
Joined
Jun 19, 2011
Messages
24
Help please, how can i make this trigger to spawn creeps for player 12 (Brown).
I tried to change, but creeps respawn only 1 time per game.

Will give +rep.
 
Level 2
Joined
Mar 20, 2012
Messages
18
How to put special effect line into this trigger?

  • Respawn
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Owner of (Triggering unit)) Equal to Neutral Hostile
      • (Custom value of (Triggering unit)) Greater than 0
    • Actions
      • Custom script: local integer i = GetUnitTypeId(GetTriggerUnit())
      • Custom script: local integer ii = GetUnitUserData(GetTriggerUnit())
      • Wait Respawn_Time game-time seconds
      • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
      • Special Effect - Create a special effect at (Position of (Last created unit)) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
      • Special Effect - Destroy (Last created special effect)
I did that way, but nothing happened.
 
Level 6
Joined
Jan 12, 2011
Messages
110
you think there will be a map with 8000+ units? It will definitely lag if you have that many... wc3 might even crash...

Though it might have been better to update this to use hashtables... The respawn itself can handle any number of units, but the locations can only store up to 8190 coz its an array...

Well, then I wouldn't recommend using this in maps like ORPG, that can be played for very long time or long TDs.

I've created upgraded system to this one. If anyone would be wondering how it looks, just PM me.
 
Level 5
Joined
Jul 13, 2008
Messages
109
Creep Respawn System using Hashtables" said:
  • CR Map Initialization
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Hashtable - Create a hashtable
      • Set CreepRespawn_Hashtable = (Last created hashtable)
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units owned by Neutral Hostile) and do (Actions)
        • Loop - Actions
          • Set CreepRespawn_Point = (Position of (Picked unit))
          • Hashtable - Save 8.00 as (Key Time) of (Key (Picked unit)) in CreepRespawn_Hashtable
          • Hashtable - Save (X of CreepRespawn_Point) as 1 of (Key (Picked unit)) in CreepRespawn_Hashtable
          • Hashtable - Save (Y of CreepRespawn_Point) as 2 of (Key (Picked unit)) in CreepRespawn_Hashtable
          • Custom script: call RemoveLocation(udg_CreepRespawn_Point)
  • CR Enter Map
    • Events
      • Unit - A unit enters (Playable map area)
    • Conditions
    • Actions
      • Set CreepRespawn_Point = (Position of (Triggering unit))
      • Hashtable - Save 8.00 as (Key Time) of (Key (Triggering unit)) in CreepRespawn_Hashtable
      • Hashtable - Save (X of CreepRespawn_Point) as 1 of (Key (Triggering unit)) in CreepRespawn_Hashtable
      • Hashtable - Save (Y of CreepRespawn_Point) as 2 of (Key (Triggering unit)) in CreepRespawn_Hashtable
      • Custom script: call RemoveLocation(udg_CreepRespawn_Point)
  • CR Respawn
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Owner of (Triggering unit)) Equal to Neutral Hostile
    • Actions
      • Wait (Load (Key Time) of (Key (Triggering unit)) from CreepRespawn_Hashtable) seconds
      • Set CreepRespawn_Point = (Point((Load 1 of (Key (Triggering unit)) from CreepRespawn_Hashtable), (Load 2 of (Key (Triggering unit)) from CreepRespawn_Hashtable)))
      • Unit - Create 1 (Unit-type of (Triggering unit)) for Neutral Hostile at CreepRespawn_Point facing Default building facing degrees
      • Custom script: call RemoveLocation(udg_CreepRespawn_Point)


Is there a test map with this trigger? I'm having trouble making it myself
 
Level 8
Joined
Jun 13, 2010
Messages
344
When you set an array variable, like a point. Does it then overwrite the old point, or does this trigger leak?
 
Level 4
Joined
May 26, 2020
Messages
67
make an event where a unit dies, and make a condition to make sure the unit is dead. And than, make a wait 50 seconds action, and than, create a unit at the region of the unit's place.

I always used this way to make respawns:goblin_yeah:
 
Level 1
Joined
Aug 24, 2020
Messages
15
Create Or Revive
- if triggering unit dies , create a unit at the center of the region. or revive the unit after x seconds with default lvl & items.
 
Top