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

Help With My Map Please.

Status
Not open for further replies.
Level 9
Joined
Jun 26, 2005
Messages
511
Hi, guys, am making my first map, i will need alot of help doing it, and so far its almost done, i just need to get rid of the lame-dupe spells into some cool-awesome spell, i will ask all the question that i want to know about in this thread, thats because i dont want to keep making thread everytime i have a problem, and i do have alot of problems.

so first of all, how do i make unit spawn in front of the caster? and after that how do i make unit push their target away?
 
Level 27
Joined
Feb 22, 2006
Messages
3,052
For your first request...
  • Set ALP = Position of Casting Unit
  • Set ALP2 = ALP offset by 100 towards Facing of Triggering Unit degrees.
  • Create 1 unit at ALP2 facing Facing of Triggering Unit degrees.
  • Custom Script: call RemoveLocation(udg_ALP)
  • Custom Script: call RemoveLocation(udg_ALP2)
For your second one work with the knockback trigger in this thread:http://hiveworkshop.com/forums/showthread.php?t=36411
I don't feel like rewriting it
--donut3.5--
 
Level 27
Joined
Feb 22, 2006
Messages
3,052
First it leaks like there is no tomorrow. 4 leaks 10 times per second.
Second, here is your problem. As opposed to what you have, it should be:
Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Thunder Clap) Equal to True)) and do (Actions)
The rest is fine.
If you need help de-leaking the trigger, feel free to ask.
--donut3.5--
 
Level 12
Joined
Apr 18, 2007
Messages
1,130
Finalizing Triggers

I have a trigger exactly like that. Let me write it down. Also, the spawn a unit when an ability is cast? Just base the spell off of Summon Misha, if you don't want a timer, and if you want a timer, base it off of Summon Water Elemental, change the description and all that, and then make it "units summoned - (number)" and make "unit type summoned - (unit you want)" and "timer - (how many seconds you want it to live)" for both.
Heres the first trigger in my tri-set
EDIT: Ok, I have 3 triggers in my map, due to something, what I have no idea, it was a long time ago. Anyways...
  • Warrior KnockbackAddUnits1
  • Events
    • Map initialization
  • Conditions
  • Actions
    • Unit Group - Pick every unit in (Units in (Playable map area)) and do (actions)
      • Loop - Actions
        • Trigger - Add to Warrior Knockback <gen> the event (Unit - (Picked Unit) Takes damage)
Heres my second in the tri-set... The condition is optional. If you want all units affected, then delete the condition. If not, edit the unit type that I put in.
  • Warrior KnockbackAddUnits2
  • Events
    • Unit - A unit enters (Playable map area)
  • Conditions
    • ((Triggering unit) is A ground unit) Equal to True
  • Actions
    • Trigger - Add to Warrior Knockback <gen> the event (Unit - Entering unit) Takes damage)
Heres my third in the tri set. This is what the other two triggers were modifying. Here is when the knockback begins!
  • Warrior Knockback
  • Events
  • Conditions
    • (Unit-type of (Damage source)) Equal to (unit attacking, not unit moved, I said Warrior)
    • (Damage taken) Greater than or equal to 1.00
  • Actions
    • Set tempPoint[0] = (Position of (Damage source))
    • Set tempPoint[1] = (Position of (Triggering unit))
    • Set tempPoint[2] = (tempPoint[1] offset by 32.00 towards (Angle from tempPoint[0] to tempPoint[1]) degrees)
    • Unit - Move (Triggering unit) instantly to tempPoint[2]
    • Custom script: call RemoveLocation(udg_tempPoint[0])
    • Custom script: call RemoveLocation(udg_tempPoint[1])
    • Custom script: call RemoveLocation(udg_tempPoint[2])
Man it took awhile to write all that down.
 
Last edited:
Level 9
Joined
Jun 26, 2005
Messages
511
Hmm,i think i know how to remove leak, you just have to make variables for points, then custom scrip and remove them right?

ill try this later, i have to go out at the moment, thanks alot for helping me guys.

and by the way, what is GUI, and MUI?
 
Level 5
Joined
Sep 21, 2004
Messages
186
First it leaks like there is no tomorrow. 4 leaks 10 times per second.
Second, here is your problem. As opposed to what you have, it should be:
Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Thunder Clap) Equal to True)) and do (Actions)
The rest is fine.
If you need help de-leaking the trigger, feel free to ask.
--donut3.5--

Use a small region around the caster instead of (Playable map area). That will cause leaks when two are cast at once (knocking units across the map etc.)
 
Level 27
Joined
Feb 22, 2006
Messages
3,052
Well, there obviously wasn't any attempt at MUI (multi-instancability, meaning multiple can be cast at the same time, which is very easy to achieve in JASS, harder in GUI) so I stuck with the no MUI thing.
Also yeah. Deleaking is simple.
Every time you would reference a point or unit group, instead create a variable for it, reference the variable, then destroy the variable.
--donut3.5--
 
Level 9
Joined
Jul 27, 2006
Messages
652
GUI stands for Graphical User Interface. Which is the triggering you do. When you save your map all your GUI triggering is converted into JASS.
JASS is the "custom script" language that all War3 Triggering is based off...
- Hope this helps...
 
Level 9
Joined
Jun 26, 2005
Messages
511
Posting alot of images

ThunderClap Trigger


Shot at 2007-07-09


Shot at 2007-07-09

StormBolt Trigger


Shot at 2007-07-09


Shot at 2007-07-09

i think thats all the leaks right? my brain was overheating from doing this, i didnt bother doing the leak remove for groups cause i think my brain might do a automatic shutdown on me.
 
Level 9
Joined
Jun 26, 2005
Messages
511
Sorry to ask your help again :\, but this confuses me, i wanted to make a skill that shoots 5 shock waves in front of the caster in the order of angle: 135/115/90/65/45, i tried that and it didnt work, so i try using X,Y but dont much know how it works, so i just put some random numbers, i tested the game, it shots shock waves front and back of caster, and when i try to cast it again it doesnt work, here is the trigger.

http://img292.imageshack.us/img292/9033/20813208wl4.jpg
http://img70.imageshack.us/img70/4195/40032579pg0.jpg

is it ok if i copy 15 times of this trigger?
 
Level 27
Joined
Feb 22, 2006
Messages
3,052
Well, simply because you aren't using angles relative to the caster. Meaning this will only work if he's facing north.
This is what you would need, replace whatever is in the parenthesis with /'s in between.
  • Set TempPoint = BWcasterLoc(1/2/3/4/5) offset by 100 towards (Facing of Casting Unit (+45/+25/0/-25/-45)
--donut3.5--
 
Level 9
Joined
Jun 26, 2005
Messages
511
got it working, tho one major problem, the spell could not be casted again,i belive its something wrong with the leak removers....probably....

EDIT: nvm it still shoots, but just not always shoots, when i use the spell, it has a chance of no shockwave coming out or only like 3 shock wave coming out, and sometimes it works, dont know what is wrong, all i can say is that this trigger is really buggy....
 
Last edited:
Level 12
Joined
Apr 18, 2007
Messages
1,130
Now I'm to repost. I hope I don't get bad rep for that. Read mine, its non-buggy except with buildings if thats what the knockback is for. If the attacker is facing north attacking a unit north of him, the attacked unit (unit north of attacker that is getting attacked) will move north. Reposting:

I have a trigger exactly like that. Let me write it down. Also, the spawn a unit when an ability is cast? Just base the spell off of Summon Misha, if you don't want a timer, and if you want a timer, base it off of Summon Water Elemental, change the description and all that, and then make it "units summoned - (number)" and make "unit type summoned - (unit you want)" and "timer - (how many seconds you want it to live)" for both.
Heres the first trigger in my tri-set
EDIT: Ok, I have 3 triggers in my map, due to something, what I have no idea, it was a long time ago. Anyways...
  • Warrior KnockbackAddUnits1
  • Events
    • Map initialization
  • Conditions
  • Actions
    • Unit Group - Pick every unit in (Units in (Playable map area)) and do (actions)
      • Loop - Actions
        • Trigger - Add to Warrior Knockback <gen> the event (Unit - (Picked Unit) Takes damage)
Heres my second in the tri-set... The condition is optional. If you want all units affected, then delete the condition. If not, edit the unit type that I put in.
  • Warrior KnockbackAddUnits2
  • Events
    • Unit - A unit enters (Playable map area)
  • Conditions
    • ((Triggering unit) is A ground unit) Equal to True
  • Actions
    • Trigger - Add to Warrior Knockback <gen> the event (Unit - Entering unit) Takes damage)
Heres my third in the tri set. This is what the other two triggers were modifying. Here is when the knockback begins!
  • Warrior Knockback
  • Events
  • Conditions
    • (Unit-type of (Damage source)) Equal to (unit attacking, not unit moved, I said Warrior)
    • (Damage taken) Greater than or equal to 1.00
    • (Attacking unit) knows (Thunder Clap) Equal to True
  • Actions
    • Set tempPoint[0] = (Position of (Damage source))
    • Set tempPoint[1] = (Position of (Triggering unit))
    • Set tempPoint[2] = (tempPoint[1] offset by 32.00 towards (Angle from tempPoint[0] to tempPoint[1]) degrees)
    • Unit - Move (Triggering unit) instantly to tempPoint[2]
    • Custom script: call RemoveLocation(udg_tempPoint[0])
    • Custom script: call RemoveLocation(udg_tempPoint[1])
    • Custom script: call RemoveLocation(udg_tempPoint[2])
Now, in order to do this, you need to turn your ability, Thunder Clap (i think it is?) passive.
 
Level 9
Joined
Jun 26, 2005
Messages
511
i got the knock back to work, thanks anyway tho.

i have this problem, how do i make unit face infront of casting unit?
like:
casting unit
/ / | \ \

casting unit is position of casting unit, and those pointers are the to make a unit face those ways, i tried facing casting unit offect 500 but it doesnt work.
 
Level 4
Joined
Jun 16, 2007
Messages
97
Hi, guys, am making my first map, i will need alot of help doing it, and so far its almost done, i just need to get rid of the lame-dupe spells into some cool-awesome spell, i will ask all the question that i want to know about in this thread, thats because i dont want to keep making thread everytime i have a problem, and i do have alot of problems.

so first of all, how do i make unit spawn in front of the caster? and after that how do i make unit push their target away?

my question is why are you starting off with a project using custom spells when its your first map?? you should start off small.
and also, isnt your sig like...way against the rules??
 
T.T
  • 5 Waves
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to [Ability]
    • Actions
      • Set TempReal = ((Facing of (Triggering unit)) - 30.00)
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • Unit - Create 1 [Dummy_Caster] for (Owner of (Triggering unit)) at TempLoc facing TempReal degrees
          • Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
          • Set TempLoc = (Position of (Last created unit))
          • Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave (TempLoc offset by 16.00 towards TempReal degrees)
          • Set TempReal = (TempReal + 15.00)
          • Custom script: call RemoveLocation(udg_TempLoc)
      • Set TempReal = 0
 
Status
Not open for further replies.
Top