Spellpack Bowling Bash, Terror, Chop and Pull

Sim

Forum Administrator
Staff member
Reaction score
534
> And for Terror, if it's not on everytime, it will become non-MPI

Indeed.

> Set Knockbackpoint[(Player number of (Owner of (Casting unit)))] = (Position of (Casting unit))
> Set Knockbacktargetpoint[(Player number of (Owner of (Casting unit)))] = (Position of (Triggering unit))

Casting unit and Triggering Unit is the same thing.

> about this, I already deleted it before, and the ability only work once, so I create it again

Alright.

Approved.
 

Nightshadow

New Member
Reaction score
0
Variables

Two words,"You're Amazing..."

No leaks,no lag, no bugs, very good :D
Currently, im busy working on my own mod, and i can work quite advanced(or atleast i think so hehe :p )triggers and abilities, but ive noticed with you're work that, most of it is through variables alone, excluding simple things like , Unit starts effect of ability, and ability equal to Whatever. And I realized through this that, to make skillful and effective abilities, you can go nowhere without variables, I didnt know where else to post this so i just posted it here :p.

If you can help me at all or tell me where to post it you'd be,"You're more Amazing.." :D
 

mr-death

Acolyte
Reaction score
51
Two words,"You're Amazing..."

No leaks,no lag, no bugs, very good :D
Currently, im busy working on my own mod, and i can work quite advanced(or atleast i think so hehe :p )triggers and abilities, but ive noticed with you're work that, most of it is through variables alone, excluding simple things like , Unit starts effect of ability, and ability equal to Whatever. And I realized through this that, to make skillful and effective abilities, you can go nowhere without variables, I didnt know where else to post this so i just posted it here :p.

If you can help me at all or tell me where to post it you'd be,"You're more Amazing.." :D

where to post what... :confused:

If you want to post any spell, post it on the Tutorial, Spells, and Trigger Code forum.
 
B

brulogaz

Guest
the bowling spell has some flaw,

you may want to add this in one of your loop so you wont toss buidling away :p
((Picked unit) is A structure) Not equal to True


theres also a problem with units getting stuck... if an unit get stuck in a corner the spell wont ever end, the unit will eventually die and the dust effect will remain until someone walk by it. I suggest you to verify if the unit is moving, if not then make the effect end. (Its actually impossible to detect this bug on your test map since the terrain is empty, the same thing apply if the target hit an ally player, it will get stuck and eventually die over time.)If i were you i would remove the condition that make ally players immune to the bowling effect cause its no very credible and cause the target to get stuck.

Good job for the rest. I look forward for more of your stuff.

Edit: Im running out of time but if you want me to post a fix just ask and il do it later



(+rep)

Edit2: Found one more bug. With 2units (+the caster) you can cast on the first unit in direction of the second one and make it go trough cliff/gates/walls whatever. This can be fixed by disabling the following action in the last loop

Unit - Turn collision for (Picked unit) Off

By the way, in the last loop your not turning it back on, and why are you even turning it off? Collision off does not add anything to the spell and open the path to exploit.
 

mr-death

Acolyte
Reaction score
51
About the corner one it's already fixed about 3,5 weeks ago, I tested it about when I write this reply, there's no stucks, (may I see your stucks screenshot on the corner?).

About the building and else, it's your options ;) I just give you an example of making spells like these.
 
B

brulogaz

Guest
i don't know how you can miss this bug but any obstacle in terrain, doodads, even ally units will cause the bug(Try adding some ally units on your map and send a red unit in the mass)... i just re-dled the version of the first post and its still there.... but since u don't believe me heres the screen

So hmm, i casted the spell on a guard sending him to the corner, then he eventually die of the neverending loop, and in this screen you can see the dust stick on the corner a few seconds after he died... and it won't end until i move by it.

Shot at 2007-07-05

Just think about it, theres nothing in your code to make the spell stop if the target is not moving anymore. it just calculate the distance. But hmm whatever to fix it or not is up to you but its kinda required if you want your spell to not kill 1shoot in any maps with a terrain.

So you may want to add a timer on the spell(That would leave the effect the same) or for more realism add something that will cause the target to stop if the target move backward(Thats what i did, but of course this method will "nerf" the spell cause the spell will stop if too many units are blocking the path of the target), both methods will fix the bug. Anyway i fixed it for my personnal use, everything else is masterpiece and you will get credit for it on my map ;)
 
F

flyingphippo

Guest
yeah when u use bowling bash against a tree or cliff the unit will be stuck there forever until it dies.
 

Magazette2

New Member
Reaction score
3
im importing these spells to my map because there so pro

but

they dont work

Code:
 Chop and Pull target
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Chop and Pull 
    Actions
        Set Chopandpulltargetability = (Target point of ability being cast)
        Set ChopandpullFreshTargets = (Random 0 units from (Units in (Playable map area)))
        Set ChopandPulltargets = (Random 0 units from (Units in (Playable map area)))
        Set ChopandPullpoint = (Position of (Triggering unit))
        Set ChopandPullDegrees = (Integer((Angle from ChopandPullpoint to Chopandpulltargetability)))
        Set Chopandpulllevel = (Level of Chop and Pull  for (Triggering unit))
        Set ChopandPullcasting = (Triggering unit)
        For each (Integer A) from 1 to (20 x (Level of Chop and Pull  for ChopandPullcasting)), do (Actions)
            Loop - Actions
                Set Chopandpullcastingpoint = (ChopandPullpoint offset by (10.00 x (Real((Integer A)))) towards (Real(ChopandPullDegrees)) degrees)
                Set ChopandpullFreshTargets = (Units within 125.00 of Chopandpullcastingpoint matching (((Matching unit) belongs to an enemy of (Owner of ChopandPullcasting)) Equal to True))
                Unit Group - Pick every unit in ChopandpullFreshTargets and do (Unit Group - Add (Picked unit) to ChopandPulltargets)
                Custom script:   call RemoveLocation (udg_Chopandpullcastingpoint)
                Custom script:   call DestroyGroup (udg_ChopandpullFreshTargets)
        Wait 1.00 seconds
        Unit Group - Pick every unit in ChopandPulltargets and do (Unit - Turn collision for (Picked unit) On)
        Custom script:   call DestroyGroup (udg_ChopandPulltargets)
        Custom script:   call RemoveLocation (udg_ChopandPullpoint)
        Custom script:   call RemoveLocation (udg_Chopandpulltargetability)
        Custom script:   call RemoveLocation (udg_ChopandPullpointtarget)

Code:
 Chop and Pull Copy
    Events
        Time - Every 0.04 seconds of game time
    Conditions
    Actions
        Unit Group - Pick every unit in ChopandPulltargets and do (Actions)
            Loop - Actions
                Set ChopandPullpointtarget = (Position of (Picked unit))
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Distance between ChopandPullpointtarget and ChopandPullpoint) Greater than 100.00
                    Then - Actions
                        Set ChopandPullDegrees2 = (Angle from ChopandPullpointtarget to ChopandPullpoint)
                        Set ChopandPullPoints = (ChopandPullpointtarget offset by 20.00 towards ChopandPullDegrees2 degrees)
                        Unit - Turn collision for (Picked unit) Off
                        Unit - Move (Picked unit) instantly to ChopandPullPoints
                        Custom script:   call RemoveLocation (udg_ChopandPullPoints)
                    Else - Actions
                        Do nothing
                Custom script:   call RemoveLocation (udg_ChopandPullpointtarget)

that was chop and pull and this next one is terror

Code:
 Terror
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to warcrything (Neutral Hostile)
    Actions
        Set TerrorCasting = (Triggering unit)
        Set Terrorcastingpoint = (Position of TerrorCasting)
        Set TerroredUnits = (Units within (225.00 + (200.00 x (Real((Level of Terror  for TerrorCasting))))) of Terrorcastingpoint matching (((Matching unit) belongs to an enemy of (Owner of TerrorCasting)) Equal to True))
        Unit Group - Pick every unit in TerroredUnits and do (Actions)
            Loop - Actions
                Set schreechpoint = (Position of (Picked unit))
                Unit - Create 1 Dummy-schreech for (Owner of TerrorCasting) at schreechpoint facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Set level of schreech  for (Triggering unit) to (Level of Terror  for TerrorCasting)
                Unit - Order (Last created unit) to Night Elf Druid Of The Talon - Faerie Fire (Picked unit)
                Custom script:   call RemoveLocation (udg_schreechpoint)
        Wait (2.00 + (2.00 x (Real((Level of Terror  for TerrorCasting))))) seconds
        Custom script:   call DestroyGroup (udg_TerroredUnits)
        Custom script:   call RemoveLocation (udg_TerrorRunPoint)
        Custom script:   call RemoveLocation (udg_Terrorcastingpoint)
        Custom script:   call RemoveLocation (udg_Terroredunitspoint)

Code:
 Run
    Events
        Time - Every 0.50 seconds of game time
    Conditions
    Actions
        Unit Group - Pick every unit in TerroredUnits and do (Actions)
            Loop - Actions
                Set Terrorcastingpoint = (Position of TerrorCasting)
                Set Terroredunitspoint = (Position of (Picked unit))
                Set TerrorRunPoint = (Terroredunitspoint offset by 500.00 towards (Angle from Terrorcastingpoint to Terroredunitspoint) degrees)
                Unit - Order (Picked unit) to Move To TerrorRunPoint
                Custom script:   call RemoveLocation (udg_TerrorRunPoint)
                Custom script:   call RemoveLocation (udg_Terrorcastingpoint)
                Custom script:   call RemoveLocation (udg_Terroredunitspoint)

please help
 
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