Remove Buff after unit is killed not working

C

CrazyJanitor

Guest
frenzy stop Copy
Events
Unit - A unit Dies
Conditions
((Triggering unit) has buff Killing Frenzy ) Equal to True
Actions
Unit Group - Pick every unit in (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Beastman)) and do (Actions)
Loop - Actions
Unit - Remove Killing Frenzy(beastmaster) buff from (Picked unit)
Unit - Set (Picked unit) movement speed to (Default movement speed of (Picked unit))
This trigger is supposed to remove the Killing Frenzy(beastmaster) buff from the beasman after the unit with Killing Frenzy buff is dead but it is not
 

AceHart

Your Friendly Neighborhood Admin
Reaction score
1,495
Dead units don't have any buffs...


Possible workaround:

When the unit is hit by the spell, put it in a unit group.
Add a periodic trigger that checks, every 0.5 seconds or so, all units in that group.
If the buff is gone, remove it from the group.

And change the condition on the "unit dies" trigger to "unit is in unit group".


Or base your spell on Parasite.
When the spawned unit appears on the map, instantly remove it and do your actions.
 
C

CrazyJanitor

Guest
ok i changed the spell to be basedo off parasite the problem is it is interfering with my other parasite skill i have tried changeing the order strings but it does not help
 

Jazradel

Helping people do more by doing less.
Reaction score
102
Only spells that let your change the order strings is Channel and Spell Book. There is no known solution to your problem.
 

ayumilove

Youtube account suspended! youtube.com/ayumilove8
Reaction score
110
lol funny question, why would you want to stop frenzy when the unit is dead?
when the unit is dead, the unit wont be affected by frenzy anymore.

just like brilliance aura, if the priest or sorceress is beside the archmage,
and those guys die, they will stop receiving brilliance aura because
brilliance aura only give its buff to a selected groiup of people

in order to change it, we can set frenzy to only affect:-
organic, self, air, enemy, friendly ,...... etc (except for dead)

isn't this way much simpler?

[edit]
to set the setting for those thingy, you need to go to:-
object editor > abilites tab/section > select your spell that gives frenzy buff
adjust it that it only afffects certain unit within range <3
 

AceHart

Your Friendly Neighborhood Admin
Reaction score
1,495
> why would you want to stop frenzy when the unit is dead?

Because the question was not how to stop it on the dead unit, but on the original caster that is still around.
 
C

CrazyJanitor

Guest
I have been trying to work around this and i cant seem to :banghead: . Basicly this trigger is supposed to remove the buff from the castor after the unit he casted the ability on is dead is anyone able to tell me how i could do this. I can not use parasite as the base spell becuase it conflicts with my other parasite based skill.
 

ayumilove

Youtube account suspended! youtube.com/ayumilove8
Reaction score
110
wahhhhh..... aceheart (admin) responding to me, so cool to have a reply from
admin <3


lol bumps !


by the way (btw) i dont really get your spell, is it an aura?
if tahts the case, below is the steps of how to make 1
ok here is a guideline on how to remove the buff thingy

1. create a new frenzy aura (base it on endurance aura)
2. customize the frenzy aura to suit your spell
3. change the buff icon for your aura as well
4. create trigger!

Trigger Steps
- Create a trigger that detects frenzy buff
- if unit is under frenzy buff from aura, then add frenzy ability
- if unit is not under frenzy buff from aura, then remove frenzy ability


explanations
1. using aura is easier to remove buff if caster is no longer with friendly units.
2. in that way, you will need to focus on adding the frenzy ability to them.

simple as that <3
 

Tom Jones

N/A
Reaction score
437
So if i understand correctly, you got a ability that gives a buff to the target, and the caster? If so, try this:
Code:
Killing frenzy
    Events
        Unit - A unit Dies
    Conditions
        And - All (Conditions) are true
            Conditions
                (Unit-type of (Killing unit)) Equal to Beastman
                ((Killing unit) has buff Killing Frenzy(Beastman)) Equal to True
    Actions
        Unit - Remove Killing Frenzy(Beastman) buff from (Killing unit)
 
C

CrazyJanitor

Guest
Killing frenzy
Events
Unit - A unit Dies
Conditions
And - All (Conditions) are true
Conditions
(Unit-type of (Killing unit)) Equal to Beastman
((Killing unit) has buff Killing Frenzy(Beastman)) Equal to True
Actions
Unit - Remove Killing Frenzy(Beastman) buff from (Killing unit)
the problem with useing this is the beastman actually has to kill it if his teammate kills it he will still have the buff and this is a problem because if he has that buff he is automaticly cleared from the owner's selection.
 

chovynz

We are all noobs! in different states of Noobism!
Reaction score
130
Will not the buff go away after a certain short time anyway? Do you want to remove the buff instantly?
 
C

CrazyJanitor

Guest
i need it the buff to be removed after he kills his target unit or the target unit is killed. basicly the spell makes him attack a unit until it is killed or he. Once the buff is removed he is able to be used normally this is why i need to remove the buff after the unit is dead.
 
C

CrazyJanitor

Guest
no i have it based off of curse and i have a dummy unit cast a spell based off of inner fire on the casting unit to give him the buff.
 

ayumilove

Youtube account suspended! youtube.com/ayumilove8
Reaction score
110
no i have it based off of curse and i have a dummy unit cast a spell based off of inner fire on the casting unit to give him the buff.

Code:
frenzy stop Copy
Events
Unit - A unit Dies
Conditions
((Triggering unit) has buff Killing Frenzy ) Equal to True
Actions
Unit Group - Pick every unit in (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Beastman)) and do (Actions)
Loop - Actions
Unit - Remove Killing Frenzy(beastmaster) buff from (Picked unit)
Unit - Set (Picked unit) movement speed to (Default movement speed of (Picked unit))
[B][COLOR="Red"]This trigger is supposed to remove the Killing Frenzy(beastmaster) buff from the beasman after the unit with Killing Frenzy buff is dead but it is [/COLOR][/B]not

ok from the red bold words, you are stating that:-
the beastman cast frenzy buff on himself, AND if he dies, Remove buff, right?


Code:
Killing frenzy
Events
Unit - A unit Dies
Conditions
And - All (Conditions) are true
Conditions
(Unit-type of (Killing unit)) Equal to Beastman
((Killing unit) has buff Killing Frenzy(Beastman)) Equal to True
Actions
Unit - Remove Killing Frenzy(Beastman) buff from (Killing unit)
[B][COLOR="Red"]the problem with useing this is the beastman actually has to kill it if his teammate kills it he will still have the buff and this is a problem because if he has that buff he is automaticly cleared from the owner's selection.[/COLOR][/B]

and in the next post you made, you said that:-
if beastman kills the enemy unit, then only remove buff,
or else can't remove due to other people killing that targeted unit.


AHHHHHHHHHHh you make people confused :nuts: :banghead: :eek:


i need it the buff to be removed after he kills his target unit or the target unit is killed. basicly the spell makes him attack a unit until it is killed or he. Once the buff is removed he is able to be used normally this is why i need to remove the buff after the unit is dead.

please make some spacing when you are explaning your problem, and
put all your problems in one post, just like the quote above. please give
more details on how the spell work, so the community here can give a
better clearer solution to you problem. <3


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

ok, so i can conclude that:-
You want the buff to be remove buff from beastman after he kills
the targeted enemy OR the targeted enemy is being killed by allies.

here is a guide on how to do it

Steps
1. Create a spell based on Curse
2. Create 1 custom buff for Curse call it as FrenzyVictim
3. Create a custom spell based on InnerFire
4. Create 1 custom buff for InnerFire, name it as FrenzyHero


explanation of what i am going to do:-
when the hero cast Curse on targetted unit (enemy), the dummy will be
given 2 abilities, Curse and Inner Fire. Dummy Unit will give
1. FrenzyHero buff to caster/hero
2. FrenzyVictim buff to enemy

Code:
Trigger: ActivateFrenzy
Event - A unit starts the effect of an ability
Condition - Ability being cast Equal to SuperFrenzy 
Action - 
Set Caster = Triggering Unit
Create 1 Dummy for Ownver of Triggering Unit at Position of Trigering Unit facing 0.00 degrees.
Unit - Add Curse to Last Created Unit
Unit - Order Last Created unity to Undead Banshee Curse Target Unit of Ability Being cast 
Unit - Add a 1 second Generic expiration timer to Triggering Unit
Create 1 Dummy for Ownver of Triggering Unit at Position of Trigering Unit facing 0.00 degrees.
Unit - Add Inner Fire to Last Created Unit
Unit - Order Last Created unity to Human Priest - Inner Fire Triggering Unit
Unit - Add a 1 second Generic expiration timer to Triggering Unit
Turn on CheckFrenzyVictim

The code above simply activates all the stuff, and it activates the second
trigger that checks the targeted enemy which has the FrenzyVictim Buff
I have created a variable called Caster that stores the hero/caster/triggerer


Code:
Trigger: CheckFrenzyVictim
Event - A unit dies
Condition - Triggering Unit has buff FrenzyVictim Equal to True
Action -
Unit - Remove FrenzyVictim buff from triggering unit
Unit - Remove FrenzyHero buff from Caster
Set Caster = No unit
 

Tom Jones

N/A
Reaction score
437
But we've allready concluded that dead units don't have buffs (2'nd post, 1st line, by Aceheart), so your second trigger wont fire. You could change the condition ((Triggering unit) has buff Killing Frenzy Equal to True to Caster has buff Killing Frenzy Equal to True, but then it won't be MUI. And your first trigger leaks everytime it creates a dummyunit.
 

ayumilove

Youtube account suspended! youtube.com/ayumilove8
Reaction score
110
hi tom, could you show me where is the leak, i'm still newbie at leaks
Do i need to turn it off the trigger which I have activated in the first place?

what is MUI? I know what is GUI stands for.

And the code below, what does it mean? Please explain.
it doesn't seem logical to me, since you said that we cant detect buff from dead
Code:
((Triggering unit) has buff Killing Frenzy Equal to True to Caster has buff Killing Frenzy Equal to True
 

Sim

Forum Administrator
Staff member
Reaction score
534
MUI = Multi-Instanceable, which means a spell that can be casted at the same time by 2 different players.

Read tutorials on Memory Leaks ;)
 

ayumilove

Youtube account suspended! youtube.com/ayumilove8
Reaction score
110
hi daxtreme <3

btw, i read memory leaks before, but still, i can't chew it, too hard. o.o
daxtreme could you please show me where is my leak? *points at the trigger

[edit]

how come it is dummyunit? i already set the expiration timer

and i dont understand how does MUI relates to this problem.
MUI ? targeted enemy shoot magic to the hero who cast the spell?
what happens if the unit doesnt have spell at all?
 

Tom Jones

N/A
Reaction score
437
Read emilj3rs tutorial.
*Edit*
Your leaks are here, it's the point where you create the unit:
Code:
Trigger: ActivateFrenzy
Event - A unit starts the effect of an ability
Condition - Ability being cast Equal to SuperFrenzy 
Action - 
Set Caster = Triggering Unit
[COLOR="Red"]Create 1 Dummy for Ownver of Triggering Unit at Position of Trigering Unit facing 0.00 degrees.[/COLOR]
Unit - Add Curse to Last Created Unit
Unit - Order Last Created unity to Undead Banshee Curse Target Unit of Ability Being cast 
Unit - Add a 1 second Generic expiration timer to Triggering Unit
[COLOR="Red"]Create 1 Dummy for Ownver of Triggering Unit at Position of Trigering Unit facing 0.00 degrees.[/COLOR]
Unit - Add Inner Fire to Last Created Unit
Unit - Order Last Created unity to Human Priest - Inner Fire Triggering Unit
Unit - Add a 1 second Generic expiration timer to Triggering Unit
Turn on CheckFrenzyVictim
>And the code below, what does it mean? Please explain.
it doesn't seem logical to me, since you said that we cant detect buff from dead
Well, i thought you set the variable Caster to (Killing Unit). My fault.
>and i dont understand how does MUI relates to this problem.
Well, i'm just pointing it out. Two Beastman won't be able to cast this ability at the same time.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top