# Spell Help - Knockback

#### Battlemapsta

##### I am the Conduit of Change
I am working on a map right now and need some help. I want to make an abiltity that does damage and knocks the target back for a long range. How can I make the unit be knocked back from the spell?

Is there also a nonjass way to make it since I am clueless in it.

Also which general spell is good for doing the damage? I was thinking firebolt with very very low stun duration like .001

Thanks in advance

I

#### IKilledKEnny

##### Guest
Code:
``````Untitled Trigger 001
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to <<Ability>>
Actions
Set PointVariable = ((Position of (Target unit of ability being cast)) offset by <<Integer>> towards (Facing of (Casting unit)) degrees)
Unit - Move (Target unit of ability being cast) instantly to PointVariable``````

#### uberfoop

##### ~=Admiral Stukov=~
Quick knockback I just threw together:
Obviously you need the kattanna system in yer map for it:

Code:
``````function KnockbackSlide takes nothing returns nothing
local timer t = GetExpiredTimer()
local integer steps = GetHandleInt(t,"steps")
local unit target = GetHandleUnit(t,"target")
local location l = GetUnitLoc(target)
local location ll = PolarProjectionBJ(l,GetHandleReal(t,"dist"),GetHandleReal(t,"angle"))
call SetUnitPositionLoc(target,ll)
call RemoveLocation(l)
call RemoveLocation(ll)
set l = null
set ll = null
set target = null
if ( steps <= 1 ) then
call FlushHandleLocals(t)
call DestroyTimer(t)
return
endif
call SetHandleInt(t, "steps", steps-1)
endfunction

function SimpleKnockback takes unit target, real interval, real dist, real duration, real angle, boolean collision returns nothing
local timer t = CreateTimer()
local integer time = R2I(duration)
local unit targett = target
call SetHandleInt(t,"steps", R2I(duration/interval))
call SetHandleHandle(t,"target",target)
call SetHandleReal(t,"dist",dist)
call SetHandleReal(t,"angle",angle)
if collision == false then
call SetUnitPathing(target,false)
endif
call TimerStart(t,interval,true,function KnockbackSlide)
call PolledWait(time)
set t = null
if collision == false then
call SetUnitPathing(target,true)
endif
set targett = null
endfunction``````
the parameters are as follows:
unit being knockbacked, movement interval, distance per interval, total duration, angle of knockback, true/false for whether you want unit to still have collision or not.

#### Chocobo

##### White-Flower
You should say it requires the handle vars.

#### Battlemapsta

##### I am the Conduit of Change
Thanks for the help guys I will test IKilledEnny's idea first since I suck at triggers and if it won't work I'll go with uberfoop's trigger. I'll reply the results

M

#### Mythic Fr0st

##### Guest
Or the harder GUI way
Variables:
Knockback_Unit, unit, array 1
Stop, boolean, array 1,
X, integer, no array
IA, integer, no array
Loc, point, array 1
Exitwhen_Loc, point, array 1

Code:
``````    Events
Time - Every 0.03 seconds
Conditions
Actions
For each Integer A from 1 to X do MULTIPLE Actions
Loop - Actions
If / Then / Else, Multiple Functions
If - Conditions
Knockback_Unit[Integer A] is alive equal to true
Stop[Integer A] equal to false
Then - Actions
Set Loc[0] = Position of Knockback_Unit[Integer A]
Set Loc[1] = Loc[0] offset by 12 towards facing of Knockback_Unit[Integer A]
Set IA = Integer A
Unit - Move instantly Knockback_Unit[Integer A] to Loc[1]
If / Then / Else, Multiple Functions
If - Conditions
Distance Between Loc[1] and Exitwhen_Loc[Integer A] less than or equal to 50
Then - Actions
Set Stop[Integer A] = true
Unit - Unpause Knockback_Unit[Integer A]
Else - Actions
Custom script:   call RemoveLocation(udg_Loc[1])
Custom script:   call RemoveLocation(udg_Loc[0])
Custom script:   call RemoveLocation(udg_Exitwhen_Loc[udg_IA]
Else - Actions``````
NOTE the Custom script: actions, are not in the Else - Actions of the loop!
(DO NOT PUT THEM IN THE Else - Actions)

Code:
``````    Events
Unit - A unit begins casting an ability
Conditions Ability being cast equal to knockknockwhosthere
Actions
Set Knockback_Unit[X] = target unit of ability being cast
Set Loc[2] = Position of Target Unit Of Ability Being Cast
Set Exitwhen_Loc[X] = Loc[2] offset by 600 towards facing of Knockback_Unit[X] - Facing of Casting Unit
Unit - Pause Knockback_Unit[X]
Set X = X + 1``````
I not sure if it will work

PS (Does anyone notice I hand type all my code O_O?)

#### lh2705

##### Just another Helper
Yeah, I do..
Battlemapsta, You can check out the spells section. I made a passive version, maybe you can tweak it to become an active spell..

#### Battlemapsta

##### I am the Conduit of Change
Yeah, I do..
Battlemapsta, You can check out the spells section. I made a passive version, maybe you can tweak it to become an active spell..

Sorry I didn't reply but ih2705 thanks so much for your trigger . I decided to turn it passive while thinking a lot and your trigger works perfectly with my unit.

+rep

#### The Helper

##### Administrator
Staff member
This thread is showing up as viewed all the time so bumping for great justice!

General chit-chat
Help Users
• No one is chatting at the moment.
• The Helper:
seeing some weird stuff doing some moves to the new Weird News forum please see the bathroom admins
• The Helper:
it is weird
• The Helper:
btw it was just lag the weirdness is gone
• Wizard:
I checked!
+1
• Blackveiled:
How is everyone doing?
• Wizard:
Alright!
• The Helper:
Doing well thanks!
• The Helper:
Tom Mai check out the post I just found you made in 2006, from an apparent banned account, I do not remember that happening, the post is in the General Discussion Hall of Fame about record breakers
• Blackveiled:
Lmao thats somethin right there.
• tom_mai78101:
How far back were you looking at?
• tom_mai78101:
But yes, that was me.
• The Helper:
Do you think I am looking back in the forums for this stuff? LOL, no, I find these posts in the Members Online section or the stats - all these old posts I am bumping and moving around are what people are actually looking at on the website
• tom_mai78101:
Interesting.
• The Helper:
hey Tom your Burrito news is going viral by TheHelper.net standards LOL
• The Helper:
looks like The Burrito has been shared to facebook lol I am getting the facebook bots in now
• The Helper:
I am going to do one more News Forum like the Weird News but this one is Science News for all the cool science and technology articles in the Archive
• tom_mai78101:
Hmm, do I need to start posting some of the Science and Technology news to this new section in the future?
• tom_mai78101:
Or do we need to move the news to their respective sections once the threads are old enough, read to be put into the News Archive?
• The Helper:
The 2nd thing
• The Helper:
I have been moving stuff from the current Headline news like a year old and stuff over when I see it in the logs or members online but mostly I have been moving stuff from the Archives
• The Helper:
It is possible to automate it so that instead of moving to Archive if it has the Science, technology or sci tech tag that it gets archived there instead. I am considering a new Weird News Tag
• tom_mai78101:
Please do. I'll try to tag the news appropriately when I get the chance.
• The Helper:
The new Discourse forum software we are moving to next does alot with the tags and also hashtags
• The Helper:
OK I found the source of your burrito post stuff it is from Reddit and possibly a facebook post too but definitely reddit

### Network Sponsors

Apex Steel Pipe - Buys and sells Steel Pipe.