Spell Muscular Cripple

C

Cookie

Guest
Alright everyone, heres the first spell i've ever made! I hope you enjoy it, and please give me some constructive criticism. Many thanks to Daelin for his great tutorial... i think it should be dubbed greatest tutorial of all time... its definately worth reading it, i recommend it to everyone!

Btw, its a GUI Spell :D

Muscular Cripple:

Ruptures a poisonous vein in the ground, exploding,
causing all enemy ground units in the AoE to be
'Muscular Crippled'

Note: As displayed in World Editor

Level 1 -
Attack speed Reduction: to 70%
Damage Reduction: to 50%
Movement Speed Reduction: to 75%

Duration Hero: 3 Sec
Duration Normal: 10 Sec


Level 2 -
Attack speed Reduction: to 60%
Damage Reduction: to 40%
Movement Speed Reduction: to 60%

Duration Hero: 4 Sec
Duration Normal: 12 Sec


Level 3 -
Attack speed Reduction: to 50%
Damage Reduction: to 30%
Movement Speed Reduction: to 45%

Duration Hero: 5 Sec
Duration Normal: 14 Sec

Screenshots:

http://img412.imageshack.us/my.php?image=muscularcripplejn9.jpg
Muscular Cripple upon impact...

Map:

(Now attached lol...)

thanks dudes :p
 

Sooda

Diversity enchants
Reaction score
318
There isn' t any map to test, you forgot to attach one. From picture it makes sircle and everyone who are hit by it or in it gets attack and move speed reduced while gaining damage resistance ?
 
C

Cookie

Guest
ahhaha ahahhaha thats is easily the funniest thing ive eva done baha i forgot to attach the map... lol ahhah ill attach it now fellas, sorry... hahahahh im cacking myself laughing here...

yeah sooda, its just a basic AoE spell... first spell ive ever done and it took me hours... lol! sorry to waste your time man :(
 

ManyTimes

I'm so lonesome I could cry...
Reaction score
293
Nice one, short n working...buuut, you should try remove the leaks:

leak1.
Code:
Special Effect - Create a special effect at [COLOR="YellowGreen"](Target point of ability being cast)[/COLOR] using Abilities\Spells\Items\VampiricPotion\VampPotionCaster.mdl

leak2.
Code:
Unit - Create 1 Dummy Caster! for Player 1 (Red) at [COLOR="yellowgreen"](Position of (Picked unit)) [/COLOR]facing Default building facing degrees

leak3.
Code:
Unit Group - Pick every unit in (Units within (250.00 + ((Real((Level of Muscular Cripple  for (Triggering unit)))) x 25.00)) of ([COLOR="yellowgreen"]Target point of ability being cast)[/COLOR] matching ((((Matching unit) is A structure) Equal to False) and (((Matching unit) is A ground unit) Equal to True))) and do (Actions)

How to fix leaks???
As for leak 3 do this
Code:
Actions
    Set POINTVARIABLE = (Position of (Target unit of ability being cast))
    Unit Group - Pick every unit in (Units within (250.00 + ((Real((Level of Muscular Cripple  for (Triggering unit)))) x 25.00)) of [COLOR="yellowgreen"]POINTVARIABLE[/COLOR] matching ((((Matching unit) is A structure) Equal to False) and (((Matching unit) is A ground unit) Equal to True))) and do (Actions)
...
Custom Script line: call RemoveLocation(udg_[COLOR="yellowgreen"]POINTVARIABLE[/COLOR])

Leak2
Code:
Loop - Actions
    Set POINTVARIABLE2 = (Position of (Picked unit))
    Unit - Create 1 Dummy Caster! for Player 1 (Red) at [COLOR="yellowgreen"]POINTVARIABLE2[/COLOR] facing Default building facing degrees
    Custom script:   call RemoveLocation(udg_[COLOR="yellowgreen"]POINTVARIABLE2[/COLOR])

Leak1
..just use the same variable as you use in leak 3. "POINTVARIABLE". PS: then u cannot remove the location inside that trigger (bythat i mean,Muscular Cripple), but you put the custom script line at BOTTOM of Muscular Cripple effects..

Cheerio
(hmm this went fast:()
 
C

Cookie

Guest
Oooo sweet, shall get on to fixing leaks straight away! I feel like a professional spell make fixing leaks now... lol!

Edit: Or maybe I wont.. i realised I have an exam at school tomorow... ROFL!

btw, thanks for the feedback fellas, but mores still welcome!
 

ManyTimes

I'm so lonesome I could cry...
Reaction score
293
Oh, just a little tip, how to choose cooldown when you are giving out a [spell]... Choose not several minutes, choose the spell duration + 3-4 seconds is just fine. Which mean for your spell, 6-7 seconds cooldown, not 120;)
Cheerio

lol..Well, edit: Your spell "Musclar Cripple" got 2 minutes (120 seconds) cooldown at level 1. (example)Make it instead like this:
Question 1: How long is the spell duration ( how long the effect lasts on the units) Answer: 4 seconds
Then do some math like this : 4 (answer in Question 1.) + ...2 or 3 seconds, = 6 or 7 seconds, and put that as your cooldown instead.
Why do this? Well, I just tested the spell once, why? I do not want to sit around waiting for 2 minutes, to test your spell again (no offence nor anything..juuust, hope you understand... :))
Cheerio again
 

Sooda

Diversity enchants
Reaction score
318
"levelOfAbiltiy" is integer variable with default starting value.
"triggeringPlayer" is player variablewith default starting value.
"tempPoint" is point variable with default starting value.
"tempUnitGroup" is unit group variable with default starting value.

Code:
Muscular Cripple
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Muscular Cripple 
    Actions
        Set levelOfAbility = (Level of (Ability being cast) for (Triggering unit))
        Set triggeringPlayer = (Owner of (Triggering unit))
        Set tempPoint = (Target point of ability being cast)
        Wait 2.00 seconds
        Unit Group - Pick every unit in (Units within (250.00 + (15.00 x (Real(levelOfAbility)))) of tempPoint matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is A ground unit) Equal to True) and (((Matching unit) is alive) Equal to True)))) and do (Unit Group - Add (Picked unit) to tempUnitGroup)
        Custom script:   call RemoveLocation(udg_tempPoint)
        Unit Group - Pick every unit in tempUnitGroup and do (Actions)
            Loop - Actions
                Set tempPoint = (Position of (Picked unit))
                Unit - Create 1 Dummy Caster! for triggeringPlayer at tempUnitPoint facing Default building facing degrees
                Unit - Add Cripple (Neutral Hostile) to (Last created unit)
                Unit - Set level of Cripple (Neutral Hostile) for (Last created unit) to levelOfAbility
                Unit - Order (Last created unit) to Undead Necromancer - Cripple (Picked unit)
                Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
                Custom script:   call RemoveLocation(udg_tempPoint)
        -------- This line needs to be out of loop. --------
        Custom script:   call DestroyGroup(udg_tempUnitGroup)
> I didnt really follow what u were saying.

Good, then maybe this post makes things more clear. Als otry to store things into variables. Read memory leaks tutorials and keep doing good abilities. It looked really nice when not counting triggering mistakes. There was one un-nessecary Destroy Effect also. You should also display text message to players what commands are available and set mana and cooldown cost for your ability to 1. Show picture of your ability in this thread because it looks really good.
 
C

Cookie

Guest
wow, thanks for the support :D I will read the memory leaks tutorial in spare time... because as you can probably see I have hardly any knowledge of them. I will soon make the changes needed to make the spell leak-less, and hopefully make the spell map more improved etc... for better usage :D
 

pheonixashes

Those who misplace trust in gods learn their fate.
Reaction score
65
Nice spell Cookie, though the word "Muscular Cripple" seems a bit out of place. I suggest changing it.

Other than that, +rep.
 

Tom Jones

N/A
Reaction score
437
This is weird:
Code:
       Unit Group - Pick every unit in (Units within (250.00 + (15.00 x (Real(levelOfAbility)))) of tempPoint matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is A ground unit) Equal to True) and (((Matching unit) is alive) Equal to True)))) and do (Unit Group - Add (Picked unit) to tempUnitGroup)
You use a unit group to fill another unit group. Why not fill the group directly:
Code:
       set TempGroup = Pick every unit in (Units within (250.00 + (15.00 x (Real(levelOfAbility)))) of tempPoint matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is A ground unit) Equal to True) and (((Matching unit) is alive) Equal to True))))
 

Sim

Forum Administrator
Staff member
Reaction score
534
Original idea.

First of all, in your test map, please include a "Press ESC to set life/mana of hero to 100% and level to 10".

Your abilities need to be custom, the Dummy Caster! too.

In your spell's tooltip include the % reductions of the spell (damage, speed, etc.) and the duration.

> Wait 2.00 seconds

Why wait 2 seconds?

> Unit - Create 1 Dummy Caster! for Player 1 (Red) at (Position of (Picked unit)) facing Default building facing degrees

(Owner of (Triggering unit)) not Player 1 (Red). It also leaks, as mentionned above.

Code:
Muscular Cripple effects
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Muscular Cripple 
    Actions
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Items\VampiricPotion\VampPotionCaster.mdl
        Wait 1.00 seconds
        Special Effect - Destroy (Last created special effect)
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Human\MarkOfChaos\MarkOfChaosTarget.mdl
        Wait 1.00 seconds
        Special Effect - Destroy (Last created special effect)
        Special Effect - Destroy (Last created special effect)
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Other\Drain\ManaDrainTarget.mdl
        Wait 1.00 seconds
        Special Effect - Destroy (Last created special effect)
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Items\AIvi\AIviTarget.mdl
        Wait 2.00 seconds
        Special Effect - Destroy (Last created special effect)

Destroy the effects just after they get created.

Code:
Muscular Cripple effects
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Muscular Cripple 
    Actions
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Items\VampiricPotion\VampPotionCaster.mdl
        Special Effect - Destroy (Last created special effect)
        Wait 1.00 seconds
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Human\MarkOfChaos\MarkOfChaosTarget.mdl
        Special Effect - Destroy (Last created special effect)
        Special Effect - Destroy (Last created special effect)
        Wait 1.00 seconds
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Other\Drain\ManaDrainTarget.mdl
        Special Effect - Destroy (Last created special effect)
        Wait 1.00 seconds
        Special Effect - Create a special effect at (Target point of ability being cast) using Abilities\Spells\Items\AIvi\AIviTarget.mdl
        Special Effect - Destroy (Last created special effect)

Also, (Target point of ability being cast) is lost as time passes. Store it into a point variable first and use the variable.
 

Sim

Forum Administrator
Staff member
Reaction score
534
Removing this from approval list unless you tell me you're still working on that ;)
 
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