Spell Elite Spark

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
k i made a spell and come to think about it that's my first time i do it:
and btw don't say it's omnislash or copied cuz it's not and it's not even based on omnislash (just an idea came up and then i found out that omnislash is based on the same idea)

[Spell] Elite Spark


Description: This spell increases the hero's movement speed making him attack in amazing speed
confusing and terrifying his enemies and not letting anyone in range to escape, Deals 100 damage on each strike and has 15 second duration.

Level 1 - attacking enemies within 500 range in Elite Speed, has 100 second cooldown and cost 200 Mana.
Level 2 - attacking enemies within 1000 range in Ultimate Speed, has 150 second cooldown and cost 350 Mana.
Level 3 - attacking enemies within 1500 range in Monstrous Speed, has 200 second cooldown and cost 500 Mana.


The Trigger of the spell (for the lazy guys :D):
JASS:
//@@@@@@@@@@@@@@@@@@@@ Elite Spark @@@@@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@ Created By Doom-Angel @@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@ ~~Have Fun~~ @@@@@@@@@@@@@@@@@@@@@@@@@@


//To import this spell:
//Copy the spell "Elite Spark" in your map and make sure it has the same raw id in the constant function below.
//Copy this trigger into your map.
//Change the constant functions below if you wish to change how the spell operates a bit.


//Constants start here
//You can change here the ability id in case your based ability id is different to check for id go to object editor->your ability and press ctrl+D and u will see the ability id.
constant function ES_abilityID takes nothing returns integer
    return 'AOws'
endfunction


//You can change here the duration of the skill which is set by deafult to 15 seconds.
constant function ES_Duration takes nothing returns real
    return 15.00
endfunction


//You can change here damage dealt per a strike which is set by deafult to 100 damage.
constant function ES_DamageDealt takes nothing returns real
    return 100.00
endfunction
//Constants end here

function ES_Conditions takes nothing returns boolean
    return (GetSpellAbilityId() == ES_abilityID())
endfunction


function ES_filter takes nothing returns boolean
    return (IsUnitEnemy(GetTriggerUnit(),GetOwningPlayer(GetFilterUnit()))) and (GetUnitState(GetFilterUnit(),UNIT_STATE_LIFE) > 0.405) and (IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE) == false)
endfunction


function ES_Check takes timer t,group g returns boolean
    return (TimerGetRemaining(t) == 0) or (CountUnitsInGroup(g) == 0)
endfunction


function ES_Actions takes nothing returns nothing
    local unit u = GetTriggerUnit()
    local timer t = CreateTimer()
    local real y = GetUnitY(u)
    local real x = GetUnitX(u)
    local group g = CreateGroup()
    local group g2 = CreateGroup()
    local integer level = GetUnitAbilityLevel(u,ES_abilityID())
    local boolexpr b = Condition(function ES_filter)
    local unit target
    local unit first
    local effect array e
    local integer i = 0
    local real x2
    local real y2
    call SetUnitVertexColor(u,255,255,255,15)
    call SetUnitTimeScale(u,4-level)
    call TriggerSleepAction(0.20)
    call TimerStart(t,ES_Duration(),false,null)
    call SetUnitPathing(u,false)
    call SetUnitInvulnerable(u,true)
    call PauseUnit(u,true)
    call GroupEnumUnitsInRange(g,x,y,500*level,b)
      loop
        set i = i+1
        set first = FirstOfGroup(g)
        exitwhen (first == null)
          call SetUnitMoveSpeed(first,100)
          set e<i> = AddSpecialEffectTarget(&quot;Abilities\\Spells\\Orc\\StasisTrap\\StasisTotemTarget.mdl&quot;,first,&quot;head&quot;)
          call GroupRemoveUnit(g,first)
      endloop
    call GroupEnumUnitsInRange(g,x,y,500*level,b)
    call GroupEnumUnitsInRange(g2,x,y,500*level,b)
      loop
        exitwhen (ES_Check(t,g))
          set target = GroupPickRandomUnit(g)
          set x2 = GetUnitX(target) 
          set y2 = GetUnitY(target)
          call SetUnitPosition(u,x2,y2)
          call SetUnitAnimation(u,&quot;attack&quot;) 
          call SetUnitFacingTimed(u,bj_RADTODEG * Atan2(y2 - y, x2 - x),0.01)
          call UnitDamageTarget(u,target,ES_DamageDealt(), true, false, ATTACK_TYPE_CHAOS,DAMAGE_TYPE_UNIVERSAL,WEAPON_TYPE_METAL_MEDIUM_SLICE)
          call DestroyEffect(AddSpecialEffectTarget(&quot;Objects\\Spawnmodels\\Undead\\UndeadBlood\\UndeadBloodNecromancer.mdl&quot;,target,&quot;chest&quot;))
          call DestroyEffect(AddSpecialEffectTarget(&quot;Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageCaster.mdl&quot;,u,&quot;origin&quot;))
          call GroupClear(g)
          call TriggerSleepAction(1.06-(0.35*level))             
          call GroupEnumUnitsInRange(g,x,y,500*level,b)
            loop                
                set first = FirstOfGroup(g)
              exitwhen (first == null)
                if (IsUnitInGroup(first,g2) == false) then
                set i = i+1
                call SetUnitMoveSpeed(first,100)
                set e<i> = AddSpecialEffectTarget(&quot;Abilities\\Spells\\Orc\\StasisTrap\\StasisTotemTarget.mdl&quot;,first,&quot;head&quot;)
                endif
                call GroupRemoveUnit(g,first)
            endloop
          call GroupEnumUnitsInRange(g,x,y,500*level,b)
          call GroupEnumUnitsInRange(g2,x,y,500*level,b)
      endloop
    call SetUnitPathing(u,true)
    call SetUnitInvulnerable(u,false)
    call PauseUnit(u,false)
      loop        
        set first = FirstOfGroup(g2)
        exitwhen (first == null)
          call SetUnitMoveSpeed(first,GetUnitDefaultMoveSpeed(first))
          call GroupRemoveUnit(g2,first)
      endloop 
      loop
        exitwhen (i == 0)
          call DestroyEffect(e<i>)
          set e<i> = null
          set i = i-1
      endloop 
    call SetUnitVertexColor(u,255,255,255,255)
    call SetUnitTimeScale(u,1)
    call DestroyGroup(g)
    call DestroyGroup(g2)
    call DestroyBoolExpr(b)
    call DestroyTimer(t)
    set u = null
    set b = null
    set t = null
    set g = null
    set g2 = null
    set target = null
    set first = null
endfunction

//===========================================================================
function InitTrig_EliteSpark takes nothing returns nothing
    set gg_trg_EliteSpark = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ(gg_trg_EliteSpark,EVENT_PLAYER_UNIT_SPELL_EFFECT)
    call TriggerAddCondition(gg_trg_EliteSpark, Condition(function ES_Conditions))
    call TriggerAddAction(gg_trg_EliteSpark, function ES_Actions)
endfunction</i></i></i></i>



it was kinda hard to catch a screenshot of it as being in the speed theme so i don't think u can get anything from the screenshot but u should try and check the spell.





Enjoy~~ :p
 

Attachments

  • [Spell]Elite Spark.w3x
    28.7 KB · Views: 544

Sim

Forum Administrator
Staff member
Reaction score
534
You need to add implementation instructions.

Nice spell!

Change the names of your functions. "Check" could be in conflict with another function with this name in one's map.

Add a prefix, such as "ES_functionname"
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
>You need to add implementation instructions.
care to give an example?

>Nice spell!
ty :D

>Change the names of your functions. "Check" could be in conflict with another function with this name in one's map.

k i will do it later on
 

Sim

Forum Administrator
Staff member
Reaction score
534
> care to give an example?

Ok:

"To import this spell:
- Copy the dummy unit "Dummy" in your map.
- Copy the spell "Elite Spark" in your map.
- Copy the dummy spell "namewhatever" in your map.
- Copy this trigger into your map.
- Don't forget to change the raw codes!
- Change the constant functions below if you wish to change how the spell operates a bit."
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
k thx i got it.
i will edit it as well later on

no more comments except Daxtreme? :(
 

Squll2

je'ne sais pas
Reaction score
76
its good :p

your first JASS spell?

Edit: i have no comment really on the code.. i understand what it does but im yet to master JASS so i couldnt tell you if it wasnt efficent or not but everything looks good. mabye a tiny bit more SFX.. but thats just me
 

Demi666

New Member
Reaction score
127
imba:p in never stopps good spell

7/10 couse it didnt have so much eyecandy and was like a eternal omnislash
 

Zakyath

Member
Reaction score
238
Whoa, it's imba, not quite original, and not so hard... still, could be worse. A lot worse. 5/10
 

waaaks!

Zinctified
Reaction score
256
yeah its a bit omnislash thing! but still nice
so that people can implement 3 kinds of omnislash, first the original, second the non target omnislash, and third this spell :D
so if anybody could submit a spell similar to omnislash again, then could anyone kindly combine all the submitted omnislashes to a spellpack?
like [Spellpack] Omnislash spells rofl!

OFFTOPIC:
just wondering
why does Daxtreme always says 'nice spells' for spells made by spell makers?
for inspiration?
did Dax says 'sucky spell' on a spell lately?
"Evil laugh!"
no offense Dax just wonderin'
:D
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
well u can call it omni slash but i did not base it off it (i didn't knew what omnislash does be4 people told me it's simliar)
actually this spell is kinda easy to make since i made it a long time ago when i was noobier but in GUI so it wasn't MUI so i changed it to JASS and i added it as a spell here.
 

Sim

Forum Administrator
Staff member
Reaction score
534
I like when users submit spells.

I test them and almost always like them no matter what :D

They need to be ready for approval though. Doesn't mean that I like a spell that it is ready for approval!

Sometimes a spell could never be approved, simply because it's just not original/good enough.

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

Reduce the maximum duration of your spell, too. 15 seconds maybe?
 

waaaks!

Zinctified
Reaction score
256
"Daxtreme the spell king lover" no offense just joking

i always want to test spells for leaks and glitches but i dont have wc3 in this pc
i really want to but i cant....:(
if this pc has wc3 then i can help everyday and any questions i find
all the answeres ive answered lately is based on my experience, thats why sometimes i get my answers wrong
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
k i fixed all things:
1) changed function names
2) made it user friends and added implementation instructions
3) reduced maximum duration as suggested to 20 second (i know u wanted 15 but i feel better with 20 :D)

so tell me if anything is missing in order to move it
 

~GaLs~

† Ғσſ ŧħə ѕαĸε Φƒ ~Ğ䣚~ †
Reaction score
180
works fine for me...+rep
_____________________________________________________________
I really loves spell make by jass...

because i duno how write jass :p
 

Sim

Forum Administrator
Staff member
Reaction score
534
Is it me or... you are ordering the units (the murlocs) to move to a random point every time the blademaster hits? There's a difference between not letting the enemy escape and not enabling them to act at all.

You need also to add a buff to the slowed units.
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
well yea i thought it would be cool to make it look like they are trying to escape but they are unable to escape since the speed of unit won't letting them escape also what buff do u suggest adding the unit? (question mark mabye to show confusion?)
 

Sim

Forum Administrator
Staff member
Reaction score
534
Dazzling Sparks or something (equivalent to slow)

Remove that move order, a 20-second stun is way overpowered.
 

PurgeandFire

zxcvmkgdfg
Reaction score
509
Looks good, good job and +REP!

If this hasn't been mentioned before, replace the TSA (TriggerSleepAction) with PolledWait... I didn't read the whole code, I just skimmed it. :D
 

Doom-Angel

Jass User (Just started using NewGen)
Reaction score
167
-added the effect
-changed to 15 seconds
-changed a bit the trigger (looks a bit different but does the same)

and for Purge:
i did had polled wait but Purogasm told me i should change to TSA since that my values are so low that TSA will have better effect

fixed everything spell is ready to be added
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    New recipe is another summer dessert Berry and Peach Cheesecake - https://www.thehelper.net/threads/recipe-berry-and-peach-cheesecake.194169/

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top