• 🏆 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!

Blood Mana spell?

Status
Not open for further replies.
Level 6
Joined
Feb 6, 2008
Messages
166
Sorry, but I think I need help on this one. I'm going on a trip soon, so I'm busy packing and helping my family with chores around the house, and I haven't been able to think clearly about this spell.

This is for my Altered Melee again/still. From the Diablo 2 Blood Mana (I kind of did a quick search for "blood mana" around the forums. Not sure if I found anything though.) I'm looking to make a skill that curses enemies in an AoE to take x% of all mana spent on spells in damage.

I initially thought I could do something with a dummy unit and Mana Flare, but it wouldn't work if the enemies disperse and mingle with uncursed units.

Now I'm thinking of using a manual AoE buff like Silence as a dummy spell to apply a buff, and then triggers to check for buffed units casting spells. Then the trigger will deal damage and hopefully the kills that happen will be granted to the cursing unit (or at least the player, for those who like to check the score screens after matches).

So far, what I've got is:
  • Blood Mana
    • Events
      • Unit - A unit Starts the effect of an ability
      • (Used this one, because I heard this phase is when units actually spend the mana. But what about On/off Immolation's mana cost per second? Redirecting damage to mana using Mana Shield and the like? Preferably, both should trigger Blood Mana.)
    • Conditions
      • Something involving checking if the casting unit has the Blood Mana curse buff.
    • Actions
      • I want to be sure at least the player gets the kill, so probably spawn a dummy unit for the cursing player to deal damage to the cursed unit.
Thanks for the constant help, Hive.
 
Level 16
Joined
May 1, 2008
Messages
1,605
Moin moin =)


This curse is only cast by succubus-type monsters and Baal. It causes magic users to lose life whenever they cast spells. However much mana you use to cast the spell, you will take the same amount of damage, reducing your life points.


This is the correct one ye? In this case you can use this trigger: ( make sure that your targets get a buff! )

  • BloodManaCurse
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • ((Triggering unit) has buff Devotion Aura) Equal to True
    • Actions
      • Set ManaCurrent = (Mana of (Triggering unit))
      • Wait 0.05 seconds
      • Set ManaAfterCast = (Mana of (Triggering unit))
      • Set ManaTotal = (ManaCurrent - ManaAfterCast)
      • Game - Display to (All players) the text: (String(ManaTotal))
      • Unit - Set life of (Triggering unit) to ((Life of (Triggering unit)) - ManaTotal)
      • Set ManaAfterCast = 0.00
      • Set ManaCurrent = 0.00
      • Set ManaTotal = 0.00
You see the wait 0.05 - this make the spell not mui but this duration is this like short, that wont make any difference, so is ok to use. All three variables are real variables! The ManaTotal variable is the one who drains the life. You can set any amount from it now.

Greetings
~ The Bomb King > Dr. Boom
 
Level 6
Joined
Feb 6, 2008
Messages
166
Moin moin =)


This curse is only cast by succubus-type monsters and Baal. It causes magic users to lose life whenever they cast spells. However much mana you use to cast the spell, you will take the same amount of damage, reducing your life points.


This is the correct one ye? In this case you can use this trigger: ( make sure that your targets get a buff! )

  • BloodManaCurse
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • ((Triggering unit) has buff Devotion Aura) Equal to True
    • Actions
      • Set ManaCurrent = (Mana of (Triggering unit))
      • Wait 0.05 seconds
      • Set ManaAfterCast = (Mana of (Triggering unit))
      • Set ManaTotal = (ManaCurrent - ManaAfterCast)
      • Game - Display to (All players) the text: (String(ManaTotal))
      • Unit - Set life of (Triggering unit) to ((Life of (Triggering unit)) - ManaTotal)
      • Set ManaAfterCast = 0.00
      • Set ManaCurrent = 0.00
      • Set ManaTotal = 0.00
You see the wait 0.05 - this make the spell not mui but this duration is this like short, that wont make any difference, so is ok to use. All three variables are real variables! The ManaTotal variable is the one who drains the life. You can set any amount from it now.

Greetings
~ The Bomb King > Dr. Boom

Yep, that's the one. :]

Alright, thanks a ton. I'll save it down for now, and I'll gradually work on it being MUI and tweak it to perfection. It'll give me something to do on the airplane, I guess.

You wouldn't happen to play Diablo II, too, would you? xD
 
Level 16
Joined
May 1, 2008
Messages
1,605
Moin moin =)

Diablo II 4tw =)

But actually .... nah this spell is MUI - this delay of 0.05 seconds... even if more player cast an ability at the same time - it's just to hard ( I tested 0.05 maybe you can decrease the time anyway again )

Edit: Btw if you need help with your stuff there - I'm your dude :p

Greetings
~ The Bomb King > Dr. Boom
 
Status
Not open for further replies.
Top