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!
Active/Target Point: Trows a giant electric chain which grabs nearby unit damaging it and pulling it over to your hero. 100 damage per level, distance 450 + 150 per level. Manacost: 160/170/180/190 Cooldown: 15/13/11/10 seconds
Hook
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Power Hook
Actions
-------- ----------------------- --------
-------- Index System --------
-------- ----------------------- --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
PH_Index[1] Equal to 0
Then - Actions
Trigger - Turn on Hook Loop <gen>
Else - Actions
Set PH_Index[1] = (PH_Index[1] + 1)
Set PH_Index[2] = (PH_Index[2] + 1)
-------- ----------------------- --------
-------- Spell Settings --------
-------- ----------------------- --------
Set PH_Counter[PH_Index[2]] = 0
-------- ----------------------- --------
-------- Points for angle --------
Set PH_Cast_Point = (Position of (Triggering unit))
Set PH_Target_Point = (Target point of ability being cast)
-------- ----------------------- --------
-------- Caster --------
Set PH_Caster[PH_Index[2]] = (Triggering unit)
Unit - Pause PH_Caster[PH_Index[2]]
Unit - Add Invulnerable (Neutral) to PH_Caster[PH_Index[2]]
-------- ----------------------- --------
-------- Angle for hook --------
Set PH_Hook_Angle[PH_Index[2]] = (Angle from PH_Cast_Point to PH_Target_Point)
-------- ----------------------- --------
-------- Hook (Dummy) --------
Set PH_Near_Point = (PH_Cast_Point offset by 100.00 towards PH_Hook_Angle[PH_Index[2]] degrees)
Unit - Create 1 Hook for (Owner of PH_Caster[PH_Index[2]]) at PH_Near_Point facing Default building facing degrees
Set PH_Dummy[PH_Index[2]] = (Last created unit)
-------- ----------------------- --------
-------- Things needed for spell to work fine --------
Set PH_Hooked_Is[PH_Index[2]] = False
Set PH_Hooked_Unit[PH_Index[2]] = No unit
Set PH_Effects[PH_Index[2]] = (Units of type Hook)
Set PH_Damage = (100 x (Level of (Ability being cast) for PH_Caster[PH_Index[2]]))
Set PH_Distance = (15 + (5 x (Level of (Ability being cast) for PH_Caster[PH_Index[2]])))
-------- ----------------------- --------
-------- ----------------------- --------
Hook Loop
Events
Time - Every 0.02 seconds of game time
Conditions
Actions
For each (Integer PH_Index[3]) from 1 to PH_Index[2], do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
PH_Counter[PH_Index[3]] Less than PH_Distance
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
PH_Hooked_Is[PH_Index[3]] Equal to False
Then - Actions
-------- ----------------------- --------
-------- Moving hook and creating effects --------
-------- ----------------------- --------
-------- Counter incrasing --------
Set PH_Counter[PH_Index[3]] = (PH_Counter[PH_Index[3]] + 1)
-------- ----------------------- --------
-------- Set Locations and move Hook dummy --------
Set PH_Dummy_Point[PH_Index[3]] = (Position of PH_Dummy[PH_Index[3]])
Set PH_Hook_Point[PH_Index[3]] = (PH_Dummy_Point[PH_Index[3]] offset by 30.00 towards PH_Hook_Angle[PH_Index[3]] degrees)
-------- ----------------------- --------
Unit - Move PH_Dummy[PH_Index[3]] instantly to PH_Hook_Point[PH_Index[3]]
Unit - Create 1 Effect for (Owner of PH_Caster[PH_Index[3]]) at PH_Dummy_Point[PH_Index[3]] facing PH_Hook_Angle[PH_Index[3]] degrees
Unit - Turn collision for (Last created unit) Off
Unit Group - Add (Last created unit) to PH_Effects[PH_Index[3]]
Hashtable - Save Handle Of(Last created unit) as PH_Counter[PH_Index[3]] of PH_Index[3] in PH_Table
-------- ----------------------- --------
-------- Hooking enemy unit --------
-------- ----------------------- --------
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in (Units within 64.00 of PH_Hook_Point[PH_Index[3]] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of PH_Caster[PH_Index[3]])) Equal to True))) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is Magic Immune) Equal to False
PH_Hooked_Is[PH_Index[3]] Equal to False
Then - Actions
Set PH_Hooked_Unit[PH_Index[3]] = (Picked unit)
Set PH_Hooked_Is[PH_Index[3]] = True
Unit - Pause (Picked unit)
Unit - Turn collision for (Picked unit) Off
-------- ----------------------- --------
-------- Deal damage --------
Unit - Cause PH_Caster[PH_Index[3]] to damage (Picked unit), dealing (Real(PH_Damage)) damage of attack type Spells and damage type Lightning
18:37, 22nd Dec 2009
TriggerHappy:
Review for Spell
The coding looked decent and I couldn't produce any bugs.
Status
Feel free to message me here if you have any issues with
my review or if you have updated your resource and...
In the movie the hooked unit is ever behind the caster
(Maybe cause of pathing dunno) But please add more documentation. Anyhow a nice spell but not really new idea
Improvements:
Make a dummy unit, and make it be paused, so you can use your hero while the hook is flying away.
I can't belive people make spells like this but so little creativity deprives them of a much better thing
Make the dummy caster paused, and make the unit get hooked to the dummy caster, thus making the real caster able to move while the one really paused is the dummy one.
Also one more improvement is to reduce the loop triggers period to 0.03-0.02 making the hook look really better and the whole effect generaly better.
It is not a leak -.-'
It is the Channel's(base ability) bug....Esc is just a help and it bugs with Channel....it Won't bug in game because in game you won't going to have Esc to Refresh...
EDITED SPELL:
Now dummy is created at 100 towards next to caster...so now no unit will be moved behind caster...
I think that creating dummy 100 towards is much better? if you do this unit won't be moved behind the caster...
still you can't move caster but if you can looks weird ....hook looks like broken it is not following you..
Ok i made like in dota....when hook finishes it's destination moving foward you will be unpaused....but if it hooks someone you will stay paused until it reaches to you..
Why do people try to copy Dota spells? If your spell is a variation of Dota's original that is fine. Perhaps someone will find it more useful in their map. Besides has anyone tried that League of Legends game? Its horrible
it is changed version i think...new one has no lightning effects it is normal hook
change it in object editor unit named Effect change it's model if you want lightning effect back
EIDT: I'll try to make a meat hook like in Pudge wars.....soon hope so
i likes it. now we can show Ice Frog that we too, can make a decent hook system, and in GUI! its alot smoother than Ice Frog's hook. i like that. all his hook does is stand still and lacks motion and a standing animation.
It is not a leak -.-'
It is the Channel's(base ability) bug....Esc is just a help and it bugs with Channel....it Won't bug in game because in game you won't going to have Esc to Refresh...
EDITED SPELL:
Now dummy is created at 100 towards next to caster...so now no unit will be moved behind caster...
I don't encounter bugs with ESC and channel, maybe you set the orderID to the same ID used by escape. I don't know if ESC has the same ID as cancel but cancel uses the OrderID "absorb".
isnt it better to mini stun the target, for a very minimum length cause what I've heard doesnt pause targets fuck up channeling units as they wont get interupted?
It works as it is intended, and the bug baassee is talking about is that channeling spells can bug if the caster is paused, however this isn't channeling and can't be abused in normal conditions.
Man I think this spell has got a bug:
I have imported the triggers, the models. But when I use it this is what hapens:
A big harpy apears and my hero goes paused. And it never unpouses.
Pleassssssse check that out man.
Thanks
When you copy triggers raw code of unit like Effect dummy is changed so maybe in somewhere in the trigger where I used Unit- Create 1 Effect at loction... It is changed to Unit- Ceate 1 "YourUnitWithSameRawCode" at location )) ...
Already explained in the PM
The spell is very good. There is only one problem that I have encountered. You used the Channel ability when creating the Hook ability. If I want to issue order a unit through a trigger to cast the ability, what ability order do I use?
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.