• 🏆 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 4
Joined
Jul 5, 2009
Messages
41
Zalashji

Zomg? How to create that action called ''Loop Actions''.
Sorry, i'm noob at World.Editor :necry:.






Tell me or i'll kill ya :nemad:!
american-werewolf-in-london-lifesize-2.jpg
 
Level 2
Joined
Dec 14, 2008
Messages
14
Great turtorial it help me with my Rpg i'm working on it was really simple to anderstand 5/5
 
Level 1
Joined
Aug 3, 2009
Messages
2
Unit - Create 1 (Unit-type of (Triggering unit)) for Neutral Hostile at Creep_Point[(Custom value of (Triggering unit))] facing Default building facing (270.0) degrees. Can you help I can not find Creep_Point[(Custom value of (Triggering unit))] I found the right action I just can't find the custom value.
 
Level 2
Joined
Aug 18, 2009
Messages
27
call SetUnitUserData(CreateUnit(Player(12) , i , GetLocationX(udg_Creep_Point[ii]) , GetLocationY(udg_Creep_Point[ii]) , 270) , ii)

At this Custom Script my jass said:
Undeclared variable udg_Creep_Point
can someone help me :?
 
Level 1
Joined
Aug 4, 2009
Messages
4
in the last line of the initialization trigger, how do you get [temp_point] after the first variable?
 
Level 5
Joined
Sep 27, 2008
Messages
147
JASS:
call SetUnitUserData(CreateUnit(Player(12) , i , GetLocationX(udg_Creep_Point[ii]) , GetLocationY(udg_Creep_Point[ii]) , 270) , ii)
doesn't work for me 2.

and when i use the Standard Triggering 1

they don't respam when i kill a neutral hostle unit.
 
Level 1
Joined
Oct 3, 2009
Messages
5
hey... just wondering...

where do you get the neutral hostile part of the command line for the respawn thinggy (thanks in advance)
 
Level 3
Joined
Sep 26, 2009
Messages
53
How do you add the +1 at the top, where you set the Temp_Integer? I see that in alot of these tutorials, but I can't figure out how to make it work. :cry:
 
Level 1
Joined
Oct 3, 2009
Messages
5
in response...

it is arithmetic. so go set variable and set the other part... then click on the second part and set it to arithmetic. from there click on the first part set it as a variable (the top box) and then go back and to the next box. these next two are easy. the second box is a preset value (the only option you can choose) and then put in the third box the value (bottom box) 1

hope it solves your problems
 
Level 3
Joined
Oct 25, 2007
Messages
26
hi i have problem, i did everything in tutorial-except variable creep point
I set variable type to "point" then name to "Creep_Point" but in your screen under variables is:
Creep_Point point(location)arr... -None-
i have only this
Creep_Point point(location)1 -None-
i did EVERYTHING in the tutorial but it doesnt work, i have czech version of warcraft so it is a little more complicated to translate it to english but i did everything like in tut..
Please anyone help??
 
Level 3
Joined
Nov 10, 2009
Messages
7
I've made other script to respawn :

Events
- Unit - A unit Dies
Conditions
- (Owner of (Triggering unit)) Equal to Neutral Hostile
Actions
- If (All Conditions Are True) then do (Then Actions) else do (Else Actions)

Loop Actions
- Wait 360 seconds
- Unit - Create 1 (Unit-type of (Triggering unit)) for Neutral Histile at (position of (Triggering unit)) facing Default building facing (270.0) degrees
- Unit - Set the custom value of (Last created unit) to (custom value of (Triggering unit))




It works :D Try :)
 
Last edited:
Level 4
Joined
Sep 25, 2009
Messages
49
This system doesn't work for me (not talking about secondheartbeat's, but the main system..) When i kill them, i wait and wait and wait and nothing happens ._.
 
Level 2
Joined
May 10, 2008
Messages
16
Ok, so this is a good system and all, but I was wondering how do you make it so that if you have an enemy of the creep nearby, it wont respawn until that enemy leaves the area (including buildings) I've tried a bunch of different ways and got mixed results, sometimes warcraft would just crash and others it would just stop reviving the unit altogether if I was nearby at the end of the time limit.
 
Level 14
Joined
Dec 29, 2009
Messages
931
Feedback

I will give you some feedback on how I feel about this tutorial. (for fun).


[x] Easy to understand. (opinions may vary).

[x] Works effectively with few problems if any.

[x] Helps with the specified system.

[x] Easy to locate. (triggerwise).

[x] Requires little effort.

Results:
' 5/5 ' - Has few errors, all in all: a great tutorial.
 
Level 5
Joined
Nov 22, 2009
Messages
181
Ok, so this is a good system and all, but I was wondering how do you make it so that if you have an enemy of the creep nearby, it wont respawn until that enemy leaves the area (including buildings) I've tried a bunch of different ways and got mixed results, sometimes warcraft would just crash and others it would just stop reviving the unit altogether if I was nearby at the end of the time limit.

try using the action: Wait For Condition
 
Level 8
Joined
Apr 8, 2009
Messages
499
what now?

at first this worked all fine with my map, but now since i've made a new area and made some new custom units for neutral hostiles it messes up a little.

1. it DOES respawn all neutral hostiles that were already there...
2. it DOES NOT respawn all neutral hostiles that im adding now in mad editor....

could this be due to unit type/lvl/class/stat ?

idk what happened or why, but please help me.... :cry:

--------EDIT---------------------
i found out why >_>

the units :
"combat - death type" stat, Must be like this: "Combat - death type: Can raise, Does decay".
otherwise the unit wouldnt really die or something, causing it to bug triggerwise.
when creating custom neutral hostiles, based on skeletons or infernals or something, their standard values are put on, "Combat - death type: Can't rais, Doesn't decay"
Which is what caused it to bug with my map, I hope other people will find this usefull when finding the same problems
 
Last edited:
Level 3
Joined
Oct 18, 2009
Messages
51
  • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
it says Error: Expected a name

And thank you Animoi
 
Last edited:
Level 3
Joined
Oct 18, 2009
Messages
51
EVERY ONE ASKED THAT QUESTION! AND NO ONE SEEMED TO ANSWER!!!!!!!!!!! SO PLEASE SOMEONE!!

I was reduced to using caps!
  • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
JASS:
Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
  • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
JASS:
Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
  • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
JASS:
Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
 
Level 12
Joined
Jun 1, 2010
Messages
747
This is useful for my Spore project,so that can respawn creatures.
I have a cheat!
You copy the all creep respawn folders in triggers paste anywhere in it then change the owner to neutral passive,a creature like dolphin won't attack you when respawned and unit like reef shark previously passive will become hostile
both will turn owner to neutral passive!
Im sure this helped CRITTER RESPAWN FOR MORE HINTS JOIN MY PROJECT
MY MAPS ARE PROFFESIONAL.FROM CELL STAGE TO SPACE STAGE
 
Level 2
Joined
Jun 16, 2010
Messages
22
Hey...I'll ask something (srry if i did not read all the post--they're a lot....took 1 hr and 1/2 to read and understand the first 3 pages....)
How i make a monster respawn but in same time the newly respawned creep will drop the items i want....like Roshan in DotA

I hope you'll understand what i wrote......my english is rly bad...
 
Last edited:
Level 12
Joined
Jun 1, 2010
Messages
747
Sorry i mentioned (both will turn owner to neutral passive!) I meant neutral hostile.
After critter or creep that is neutral hostile,if it's killed you will be hostile to the creep that has previously be neutral passive and creep also will attack.If it's critter it won't attack but the player will
 
Level 12
Joined
Jun 1, 2010
Messages
747
Hey...I'll ask something (srry if i did not read all the post--they're a lot....took 1 hr and 1/2 to read and understand the first 3 pages....)
How i make a monster respawn but in same time the newly respawned creep will drop the items i want....like Roshan in DotA

I hope you'll understand what i wrote......my english is rly bad...


:fp: I wait for answers... :slp:

Haven't tried that,test on your own I need that also for the creature respawn,every time the creature dies it has meat,but it's easy to me.
I don't remember
 
Level 2
Joined
Jun 16, 2010
Messages
22
Haven't tried that,test on your own I need that also for the creature respawn,every time the creature dies it has meat,but it's easy to me.
I don't remember

Animalpower, I'm kinda noob at triggering so I don't know how to "test on my own"...(the only thing i know about triggering is sample creature respawn and game message adding....:sad:):croll:

I need a post with a screenshot trigger that shows me how i do that
 
Level 6
Joined
Jun 14, 2009
Messages
124
This is a better Creep Respawn systeme :
  • Déclencheur sans titre 001
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Creep_Group = (Units owned by Neutre Hostile)
      • Set Creep_Effects = Abilities\Spells\Items\AIre\AIreTarget.mdl
      • Unit Group - Pick every unit in Creep_Group and do (Actions)
        • Loop - Actions
          • Set Creep_Index[1] = (Creep_Index[1] + 1)
          • Set Creep_Unit[Creep_Index[1]] = (Picked unit)
          • Set Creep_Loc[Creep_Index[1]] = (Position of Creep_Unit[Creep_Index[1]])
      • Custom script: call DestroyGroup(udg_Creep_Group)
  • Déclencheur sans titre 002
    • Events
      • Unit - A unit owned by Neutre Hostile Meurt
    • Conditions
    • Actions
      • Wait 5.00 seconds
      • For each (Integer Creep_Index[2]) from 1 to Creep_Index[1], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Dying unit) Equal To Creep_Unit[Creep_Index[2]]
            • Then - Actions
              • Unit - Create 1 (Unit-type of (Dying unit)) for Neutre Hostile at Creep_Loc[Creep_Index[2]] facing 0.00
              • Special Effect - Create a special effect at Creep_Loc[Creep_Index[2]] using Creep_Effects
              • Special Effect - Destroy (Last created special effect)
              • Custom script: call RemoveLocation(udg_Creep_Loc[udg_Creep_Index[2]] )
              • Set Creep_Unit[Creep_Index[2]] = (Last created unit)
              • Set Creep_Loc[Creep_Index[2]] = (Position of Creep_Unit[Creep_Index[2]])
            • Else - Actions
[X] No Leaks (I thinks)
[X] 2 Triggers
[X] With Respawn Effect:grin:
 
Level 8
Joined
Apr 8, 2009
Messages
499
Hey...I'll ask something (srry if i did not read all the post--they're a lot....took 1 hr and 1/2 to read and understand the first 3 pages....)
How i make a monster respawn but in same time the newly respawned creep will drop the items i want....like Roshan in DotA

I hope you'll understand what i wrote......my english is rly bad...



  • Event:
    • Unit - A Unit Dies
  • Conditions:
    • (Owner of Dying Unit)) Equal to Neutral Hostile
    • (Custom Value of (Dying Unit)) Greater than 0
  • Actions:
    • If (All Conditions are true) then do (Then Actions) else do (Else Actions)
      • If - Conditions:
        • (Unit type of (Dying unit)) Equal to MonsterYouWant
      • Then - Actions:
        • Item - Create (ItemYouWant) at (Position of Dying Unit)
      • Else - Actions:
        • Leave This Empty

Is this What you Wanted XAlexX? or did you also want a certain x% chance for item drops? , anyhow, repeat the "If/Then/Else" section for all different kinds item droppers.




This is a better Creep Respawn systeme :
  • Déclencheur sans titre 001
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Creep_Group = (Units owned by Neutre Hostile)
      • Set Creep_Effects = Abilities\Spells\Items\AIre\AIreTarget.mdl
      • Unit Group - Pick every unit in Creep_Group and do (Actions)
        • Loop - Actions
          • Set Creep_Index[1] = (Creep_Index[1] + 1)
          • Set Creep_Unit[Creep_Index[1]] = (Picked unit)
          • Set Creep_Loc[Creep_Index[1]] = (Position of Creep_Unit[Creep_Index[1]])
      • Custom script: call DestroyGroup(udg_Creep_Group)
  • Déclencheur sans titre 002
    • Events
      • Unit - A unit owned by Neutre Hostile Meurt
    • Conditions
    • Actions
      • Wait 5.00 seconds
      • For each (Integer Creep_Index[2]) from 1 to Creep_Index[1], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Dying unit) Equal To Creep_Unit[Creep_Index[2]]
            • Then - Actions
              • Unit - Create 1 (Unit-type of (Dying unit)) for Neutre Hostile at Creep_Loc[Creep_Index[2]] facing 0.00
              • Special Effect - Create a special effect at Creep_Loc[Creep_Index[2]] using Creep_Effects
              • Special Effect - Destroy (Last created special effect)
              • Custom script: call RemoveLocation(udg_Creep_Loc[udg_Creep_Index[2]] )
              • Set Creep_Unit[Creep_Index[2]] = (Last created unit)
              • Set Creep_Loc[Creep_Index[2]] = (Position of Creep_Unit[Creep_Index[2]])
            • Else - Actions
[X] No Leaks (I thinks)
[X] 2 Triggers
[X] With Respawn Effect:grin:

Gaby, This System does EXACTLY the same. except that it adds un-needed special effects, and that it uses alot of unnessecary triggers.
This would also be difficult to understand for someone who is new to Wc3 WE.
 
Last edited:
Level 6
Joined
Oct 2, 2008
Messages
122
  • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
it says Error: Expected a name

If you're using GUI, then just copy the entire code, without the "Custom Script:" it's that simple. :)

Example: Ctrl+C this whole coding & Ctrl+V in your Custom Script blank area... SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)

Hope this helps, Im not good in jass. so someone else would have to do that.
 
Level 8
Joined
Apr 8, 2009
Messages
499
its totaly possible to do this without triggering, just have massive delay on reincarnation and add it to all units o_O

that way, the units wouldn't have "Died", no exp will be added to the killing unit, nor will the owner of the killing unit get gold from neutral hostile kills.

apart from that, they wont respawn at the spot they started from.


How do I make them respawn at the angle they were at before?

Read the older comments, as this has already been answered to.
 
Level 6
Joined
Oct 2, 2008
Messages
122
A fine trigger, except i found out, 1 thing.... u cant spawn creep at initialization with this trigger. It'll bug the system horribly, but i discovered another better method by modifying the trigger in a slight way like this:

1st, u can setup a trigger spawn, and run in on map initialization, like this:
  • Map initialization
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Respawn_Time = 300.00
      • Trigger - Run Neutral Spawn <gen> (checking conditions)
setup:
  • Neutral Spawn
    • Events
    • Conditions
    • Actions
      • Trigger - Turn on Add Creeps to Respawn <gen>
      • Trigger - Turn on Respawn <gen>
      • Trigger - Turn on Respawning BUG KILL <gen>
      • -------- early spawns --------
      • Unit - Create 2 Bandit for Neutral Hostile at (Center of bandits7 <gen>) facing 150.00 degrees
      • -------- sewer --------
      • Unit - Create 3 Leech Hatchling for Neutral Hostile at (Center of giant leech <gen>) facing 150.00 degrees
      • Unit - Create 2 Rogue for Neutral Hostile at (Center of Region 140 <gen>) facing 150.00 degrees
      • -------- bandit's cave --------
      • Unit - Create 3 Bandit for Neutral Hostile at (Center of Region 187 <gen>) facing 150.00 degrees
      • Unit - Create 3 Bandit for Neutral Hostile at (Center of Region 188 <gen>) facing 150.00 degrees
      • Unit - Create 2 Brigand for Neutral Hostile at (Center of Region 182 <gen>) facing 150.00 degrees
      • Unit - Create 4 Brigand for Neutral Hostile at (Center of Region 181 <gen>) facing 150.00 degrees
      • Unit - Create 4 Brigand for Neutral Hostile at (Center of Region 175 <gen>) facing 150.00 degrees
thn:
  • Add Creeps to Respawn
    • Events
      • Unit - A unit enters (Playable map area)
    • Conditions
      • (Owner of (Entering unit)) Equal to Neutral Hostile
    • Actions
      • Set Temp_Integer = (Temp_Integer + 1)
      • Unit - Set the custom value of (Triggering unit) to Temp_Integer
      • Set Creep_Point[Temp_Integer] = (Position of (Triggering unit))
thn:
  • Respawn
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Owner of (Triggering unit)) Equal to Neutral Hostile
      • (Custom value of (Triggering unit)) Greater than 0
    • Actions
      • Wait Respawn_Time seconds
      • Unit - Create 1 (Unit-type of (Triggering unit)) for Neutral Hostile at Creep_Point[Temp_Integer] facing 270.00 degrees
      • Unit - Set the custom value of (Last created unit) to (Custom value of (Triggering unit))
finally:
  • Respawning BUG KILL
    • 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 seconds
      • Custom script: call SetUnitUserData(CreateUnit(Player(12),i,GetLocationX(udg_Creep_Point[ii]),GetLocationY(udg_Creep_Point[ii]),270),ii)
all the trigger set to initially not on, except neutral spawn & map initialization.
thats all. n it works beautifully, credits to SkriK.

+rep
 
Level 6
Joined
Oct 2, 2008
Messages
122
  • Event:
    • Unit - A Unit Dies
  • Conditions:
    • (Owner of Dying Unit)) Equal to Neutral Hostile
    • (Custom Value of (Dying Unit)) Greater than 0
  • Actions:
    • If (All Conditions are true) then do (Then Actions) else do (Else Actions)
      • If - Conditions:
        • (Unit type of (Dying unit)) Equal to MonsterYouWant
      • Then - Actions:
        • Item - Create (ItemYouWant) at (Position of Dying Unit)
      • Else - Actions:
        • Leave This Empty

Is this What you Wanted XAlexX? or did you also want a certain x% chance for item drops? , anyhow, repeat the "If/Then/Else" section for all different kinds item droppers.






Gaby, This System does EXACTLY the same. except that it adds un-needed special effects, and that it uses alot of unnessecary triggers.
This would also be difficult to understand for someone who is new to Wc3 WE.

If you want random a set of items from the dying unit, giving them a chance to drop, you can try this:

  • Kill nuetral for food
    • Events
      • Unit - A unit owned by Neutral Hostile Dies
    • Conditions
      • ((Triggering unit) is A Hero) Not equal to True
    • Actions
      • Set UTFOODPT = (Position of (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Random integer number between 1 and 10) Equal to 1
        • Then - Actions
          • Item - Create Raw Meat at UTFOODPT
          • Custom script: call RemoveLocation(udg_UTFOODPT)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Random integer number between 1 and 10) Equal to 3
            • Then - Actions
              • Item - Create Raw Fish at UTFOODPT
              • Custom script: call RemoveLocation(udg_UTFOODPT)
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Random integer number between 1 and 10) Equal to 5
                • Then - Actions
                  • Item - Create Ration at UTFOODPT
                  • Custom script: call RemoveLocation(udg_UTFOODPT)
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Random integer number between 1 and 2) Equal to 1
                    • Then - Actions
                      • Item - Create Rotten Meat at UTFOODPT
                      • Custom script: call RemoveLocation(udg_UTFOODPT)
                    • Else - Actions
      • Custom script: call RemoveLocation(udg_UTFOODPT)
always remember to remove the leaks.
 
Level 3
Joined
Feb 6, 2009
Messages
50
Im not sure if anyone checks here anymore but...I cant seem to get this to work, I did everything correctly(even to the point of setting respawn time to what was used as example 5, though when I do get it to work, It will be longer), I tried bot the standard and custom script way, but neither respawns the units after they die...

Is this a flaw of the latest update breaking the coding, or what? I guess not everyone is having these problems but still...

is it interfered with by other a unit dies triggers? especiallly ones that target certain unit types?

and at the end of the custom script trigger, should player be Player(PLAYER_NEUTRAL_AGGRESSIVE) for neutral hostile, instead of player 12? which is playable and brown...
which, I have my p12 brown set to a computer anyways... I doubt that is affecting it...

EDIT:NVM found a different one and it is working...
 
Last edited:
Top