• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

buff help

Status
Not open for further replies.
Level 11
Joined
Nov 12, 2006
Messages
765
In my map, their are many different worlds. Each world is different, some desert, some snow, some normal. I want somthing so that if a unit enters a snow planet, it becomes much slower and attacks slower *because its so cold!*, except if its a Galactic Marine *because they have snow armor*. I have made 2 different attempts.

1. i tried to make it so that if a unit enters region, it will get the buff "cold". however to my suprise, i failed to find a "add buff" action trigger, and only found a "remove buff" trigger.

2. i made an invisible unit on nutruel hostile, with the ability "frozen", which has a big range, very short cool down and no mana, so essentially any unit near it *on the planet* will get hit by the ability *based on slow*. then i tried to trigger it, so that if a unit gets hit by an ability = to *frozen*, it will remove that ability if its a Galactic Marine. however when i tried this it simply did not work.

Events
Unit - A unit Finishes casting an ability

Conditions
And - All (Conditions) are true
Conditions
(Ability being cast) Equal to Frozen
(Unit-type of (Target unit of ability being cast)) Equal to Galactic Marine

Actions
Game - Display to (All players) the text: Trigger Working
Unit - Remove Slow buff from (Target unit of ability being cast)

i incerted the "Game - display to..." action to see if the conditions/event was lineing up and it wasnt. so can anyone tell me what im doing wrong? and/or better ways to make a unit become less effective in certain locations *if its not a galactic marine*? this is really stumpin meh.


ALSO
3. often times in other triggers i cant get a trigger to work when i use these gui triggers (event, unit finishes casting ability - action, target unit of ability being cast), they dont work. even thou in action it says that trigger is made for that event. what am i doing wrong here as well?
 
Level 2
Joined
Sep 14, 2007
Messages
15
Make the trigger:
-an unit enters region

-triggering unit is marine = false

-sett movement speed of the triggering unit to (trigering unit movement speed - (the slow ratio))
 
Level 9
Joined
Jun 26, 2007
Messages
659
event : a unit enter snow_area
condition : unit type of triggering unit not equal to galactic marine
action :
custom script : local unit udg_local_frozer
create a frozer_unit for neutral passive at position of the triggering unit
set local_frozer = last created unit
order local_frozer to frozen triggering unit
wait 0.50 seconds
remove local_frozer
 
Level 11
Joined
Nov 12, 2006
Messages
765
when i tried it the game froze *ironyyy!* bad. i had 2 galactic marines and 2 regular units spawn into mygeeto and it then froze.

mygeeto=the cold region
galactic marine=invulerable to cold unit
freeze unit=the unit with the freeze ability
local_frozer=variable, unit type, all other options default *like array*

Events
Unit - A unit enters Mygeeto <gen>

Conditions
(Unit-type of (Triggering unit)) Not equal to Galactic Marine

Actions
Custom script: local unit udg_local_frozer
Unit - Create 1 freeze unit for Neutral Passive at (Position of (Triggering unit)) facing Default building facing degrees
Set local_frozer = (Last created unit)
Unit - Order local_frozer to Human Sorceress - Slow (Triggering unit)
Wait 0.50 game-time seconds
Unit - Remove local_frozer from the game

should i have made my variable somthing else? i dont want to test too many times because i have to keep hard-booting, and thats no fun. and thanks dennis pool i can always try your, much simpler method.

EDIT: just another thought, is their some way i could make an ability that makes the owner invulnerable to a certain buff?
 
Last edited:
Level 9
Joined
Jun 26, 2007
Messages
659
i see why!
add the condition "(Unit-type of (Triggering unit)) Not equal to freeze unit"

as it is, when you enter an unit in the region, it create a frozer to freeze it, and so it create an other frozer to freeze the first one, and an other to freeze the second one, and etc and etc... it never end and so the game crash
 
Level 11
Joined
Nov 12, 2006
Messages
765
good call that worked! except now i have a different problem that seems kind of nooby. where is their a trigger where i can make a unit cast a custome ability onto another unit? i cant find any obvious "use ability" thing under player, hero, unit, item anywhere? because i see that the locacl-frozer is being attatched and then quickly removed from the unit, but im not telling it to use a correct ability, so how can i do that?
 
Level 7
Joined
Aug 5, 2005
Messages
218
good call that worked! except now i have a different problem that seems kind of nooby. where is their a trigger where i can make a unit cast a custome ability onto another unit? i cant find any obvious "use ability" thing under player, hero, unit, item anywhere? because i see that the locacl-frozer is being attatched and then quickly removed from the unit, but im not telling it to use a correct ability, so how can i do that?


Unit - Issue Order Targeting ____
Then choose which ability your custom ability was based from.

often times in other triggers i cant get a trigger to work when i use these gui triggers (event, unit finishes casting ability - action, target unit of ability being cast), they dont work. even thou in action it says that trigger is made for that event. what am i doing wrong here as well?
Finishes casting an ability never allows you to retrieve the target, so you'd have to use Begins casting or Starts the effect of an ability instead.
 
Level 11
Joined
Nov 12, 2006
Messages
765
alright well now i feel like im being a pain, sorry. but it still wont work.

Events
Unit - A unit enters Mygeeto <gen>

Conditions
(Unit-type of (Triggering unit)) Not equal to Galactic Marine
(Unit-type of (Triggering unit)) Not equal to freeze unit
((Triggering unit) is A flying unit) Not equal to True

Actions
Custom script: local unit udg_local_frozer
Unit - Create 1 freeze unit for Neutral Hostile at (Position of (Triggering unit)) facing Default building facing degrees
Set local_frozer = (Last created unit)
Unit - Order local_frozer to Neutral - Poison Arrows (Triggering unit)
Wait 0.50 game-time seconds
Unit - Remove local_frozer from the game

im posative i did the right ability changes to it, i diddnt even turn it into a custome unit to keep its origionality. there isnt any mana, the cooldown is 0. ive tried useing "slow", "frost arrow" and "poison", gave the unit the ability. i donno whats im doing wrong here.
 
Status
Not open for further replies.
Top