• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Venom bolt - spell request

Status
Not open for further replies.
I got a spell request:

spell name: Venom Bolt (chain lightning based)

The spell will do this: Creating a venom effect on one enemy unit , damaging over time by the spell level * hero agility , last for X (x = caster hero level) seconds.
this will make damage over time and turn the target unit black (using 0% 0% 0% unit color) in that time , and make it again (100% original colors) when the impact ends, there is 12 players on the map so it must work for any possible player.
can you make it?
 
Level 33
Joined
Mar 27, 2008
Messages
8,035
What you said about "(chain lightning based)" is just its base spell, right ?
You doesn't want this spell to affect enemies, chain method, right ?
This spell affects a single-target only, right ?

Don't give confusing statement @.@"
 
What you said about "(chain lightning based)" is just its base spell, right ?
You doesn't want this spell to affect enemies, chain method, right ?
This spell affects a single-target only, right ?

Don't give confusing statement @.@"

True, the spell chain lighning will only show which unit was targeted.
The lightning effects one target with zero damage for animation only.
Do you need more details?
 
Venom Bolt is done.

If you need a spell request, please visit my Spell Workshop, thank you :)

Looks great, much better than I wanted , truly a master peace. thanks.

  • VB Remove Unit
    • Events
      • Unit - A unit Dies
    • Conditions
    • Actions
      • Unit Group - Remove (Triggering unit) from VenomedGroup
"condition unit is in unit group" is a condition check needed?
and if the unit dies, will the special effect be removed? if not , how to fix?
 
Level 33
Joined
Mar 27, 2008
Messages
8,035
Lol, how can I forgot the SFX removal when die >.<"
Sorry about that, I've uploaded a new version, fixed it with flushing the data
You can test the effectiveness of the "SFX Removal" trigger by killing the Paladin (I suggest level up the Venom Bolt until 10 and then cast on it)
The hero will be instantly revived and have its SFX, gone.

About that condition, if you put a condition there, the trigger will perform at a slower rate as it needs to check whether the unit is in group or not

If we just remove the unit from the Unit Group, it works more fast
Also, if the dying unit is not in any of the Unit Group, the trigger returns a null result, that won't damage the trigger even a bit, instead, it just returns a 0 result, nothing more.

So, any unit dies, we remove it from the Unit Group (regardless of the unit is in unit group or not)
 

Attachments

  • Venom Bolt.w3x
    17 KB · Views: 58
looks perfect! but if I cast the spell twise on the same unit the spx will not be removed , therefore it need somehow to see if the unit ALLREADY in a unit group and if NOT then giving it a spx , can you do this? since I don't know how.

  • VB Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Venom Bolt
    • Actions
      • Set Units[1] = (Triggering unit)
      • Set UnitLevel = (Real((Level of Units[1])))
      • Set HeroAgility = (Real((Agility of Units[1] (Include bonuses))))
      • Set AbilityLevel = (Real((Level of Venom Bolt for Units[1])))
      • Set DamagePerSecond = (AbilityLevel x HeroAgility)
      • Set Duration = UnitLevel
      • Set Units[2] = (Target unit of ability being cast)
      • Set HandleID = (Key (Target unit of ability being cast))
      • Hashtable - Save DamagePerSecond as (Key DPS) of HandleID in Hashtable
      • Hashtable - Save Duration as (Key Duration) of HandleID in Hashtable
      • Hashtable - Save Handle OfUnits[1] as (Key Caster) of HandleID in Hashtable
      • Hashtable - Save Handle OfUnits[2] as (Key Target) of HandleID in Hashtable
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Target unit of ability being cast) is in VenomedGroup) Equal to False
        • Then - Actions
          • Special Effect - Create a special effect attached to the chest of Units[2] using Abilities\Spells\Other\AcidBomb\BottleImpact.mdl
          • Set VenomSFX = (Last created special effect)
          • Hashtable - Save Handle OfVenomSFX as (Key Venom) of HandleID in Hashtable
        • Else - Actions
      • Unit Group - Add Units[2] to VenomedGroup
      • Trigger - Turn on VB Loop <gen>
Attached the fixed version.
Hope I did it right...
Thanks a lot :ogre_haosis:
 

Attachments

  • venom fixed version.w3x
    17.3 KB · Views: 58
Level 33
Joined
Mar 27, 2008
Messages
8,035
That is normal for hashtable as it doesn't support "stacking" method
Indexing supports "stacking" method but I'm too lazy to learn it anyway :)

Well, I guess you should make the cooldown of the spell is greater than the duration of the spell

Example:
Duration 10 seconds
Cooldown 12 seconds
 
Status
Not open for further replies.
Top