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

[Spell] frostmourne hungers!

Status
Not open for further replies.
Level 5
Joined
Aug 14, 2020
Messages
118
It is very simple to make a slightly buggy version of this.

So for learning purposes, perhaps you should start by saying how you think you would do the spell first rather than someone hand you the answer right away.
This way we can correct your thinking in the process.

I have tried man, I used a channel ability as base, for damage increase used item damage ability
a unit starts casting an ability
ability equal to frostmourne hungers
add frostmourne damage ability to arthas
set current life and mana of hero to +30


I couldn't find a way to make him attack immediately:(
 
Level 24
Joined
Feb 9, 2009
Messages
1,787
@Chaosy
tenor.gif


@Pwnica
I think he wants it to reset the auto attack, it's hard to explain.
Trying something with Berserk from what's said here.

Edit: Works fine as far as I see with berserk edited (500% increased attackspeed) and Bribe's damage engine to detect the hit
  • Damage
    • Events
      • Game - DamageModifierEvent becomes Equal to 1.00
    • Conditions
      • (DamageEventSource has buff Berserk) Equal to True
    • Actions
      • Unit - Remove Berserk buff from DamageEventSource
      • Set VariableSet DamageEventAmount = (DamageEventAmount + (25.00 + (Real((10 x (Level of DamageEventSource))))))
      • Unit - Set life of DamageEventSource to ((Life of DamageEventSource) + 30.00)
      • Unit - Set mana of DamageEventSource to ((Mana of DamageEventSource) + 30.00)
 
Last edited:
Level 5
Joined
Aug 14, 2020
Messages
118
Why not use roar ? And remove the buff after the first attack?
And trigger that it increase 25 + 10 x Level of Arthasunit ?
And trigger the mana and hp..
So do you want it to reg the hp or instantly gain 40 hp an mana
because
I already have an ability based on roar
cold embrace:increase attack damage,armor and life regeneration of undeads
 
Level 12
Joined
Mar 13, 2020
Messages
421
Windwalk

Speed to 0
transmision time to 99999999
Extra dmg to 25

and then use a trigger

Unit starts effect of ability

ability equal to Frostmunio Boi

set Arthasunit to casting unit
Set ability Real level (Arthasunit, Frostmunio Boi, level 0 (because 0 = 1) real field ( shift + d in object editor On your spell and search the extra dmg field code it’s something like ucs1 for example) to 25 + 10 x level of Arthasunit
 

Chaosy

Tutorial Reviewer
Level 40
Joined
Jun 9, 2011
Messages
13,183
TNX

it’s just one arthas

Trigger 1
a unit starts casting an ability
ability equal to frostmourne hungers
set frostmourneHungers = true​

Trigger 2
a unit is attacked
unit type of attacking unit is equal to arthas AND frostmourneHungers is equal to true
set frostmourneHungers = false
set hp of trigger unit to hp of triggering unit + 30
set mp of trigger unit to mp of triggering unit + 30​

The tricky part is the auto reset, honestly would either skip that entirely for conveneince or use an attack speed increase until the next attack is made.

Also noteworthy that a DDS is better than unit is attacked event
 
Level 5
Joined
Aug 14, 2020
Messages
118
Windwalk

Speed to 0
transmision time to 99999999
Extra dmg to 25

and then use a trigger

Unit starts effect of ability

ability equal to Frostmunio Boi

set Arthasunit to casting unit
Set ability Real level (Arthasunit, Frostmunio Boi, level 0 (because 0 = 1) real field ( shift + d in object editor On your spell and search the extra dmg field code it’s something like ucs1 for example) to 25 + 10 x level of Arthasunit

I used windwalk as you said but there is two problem:
1.backstab or extra damage of ability wont work until unit becomes invisible,and arthas never becomes invisible so!
2.i searched there was no ucs1:/
 
Level 5
Joined
Aug 14, 2020
Messages
118
Trigger 1
a unit starts casting an ability
ability equal to frostmourne hungers
set frostmourneHungers = true​

Trigger 2
a unit is attacked
unit type of attacking unit is equal to arthas AND frostmourneHungers is equal to true
set frostmourneHungers = false
set hp of trigger unit to hp of triggering unit + 30
set mp of trigger unit to mp of triggering unit + 30​

The tricky part is the auto reset, honestly would either skip that entirely for conveneince or use an attack speed increase until the next attack is made.

Also noteworthy that a DDS is better than unit is attacked event

wow! thanks♡
what do you think about adding a few things?

something like this:

Trigger 2
a unit is attacked
unit type of attacking unit is equal to arthas AND frostmourneHungers is equal to true
set Target to attacked unit
set frostmourneHungers = false
set hp of trigger unit to hp of triggering unit + 30
set mp of trigger unit to mp of triggering unit + 30​
set bolean equal true
add ability gloves of haste with 100٪ (or berserk) to arthas

trigger 3
a unit takes damage


attacked unit equal to target
Ans
bolean equal true

set target to no unit
remove gloves of haste from arthas
set bolean to false
 
Last edited:
Level 5
Joined
Aug 14, 2020
Messages
118
@Chaosy
tenor.gif


@Pwnica
I think he wants it to reset the auto attack, it's hard to explain.
Trying something with Berserk from what's said here.

Edit: Works fine as far as I see with berserk edited (500% increased attackspeed) and Bribe's damage engine to detect the hit
  • Damage
    • Events
      • Game - DamageModifierEvent becomes Equal to 1.00
    • Conditions
      • (DamageEventSource has buff Berserk) Equal to True
    • Actions
      • Unit - Remove Berserk buff from DamageEventSource
      • Set VariableSet DamageEventAmount = (DamageEventAmount + (25.00 + (Real((10 x (Level of DamageEventSource))))))
      • Unit - Set life of DamageEventSource to ((Life of DamageEventSource) + 30.00)
      • Unit - Set mana of DamageEventSource to ((Mana of DamageEventSource) + 30.00)
bribes damage engine doesn't work on my version but thank you anyway♡
 
Level 24
Joined
Feb 9, 2009
Messages
1,787
@masih_julius
You're in luck then, this DDS is dated for 1.21b
Physical Damage Detection for GUI v1.3.0.0
Do note with this restriction of using an old system you're stuck with old restrictions, at this point I'd rely on using "Unit gets attacked" but read this if you wish to press on:
// Important Notes
// ---------------
// 1. Life Drain does not work with this system, so you should use a triggered
// version of this spell if you want to use it.
// 2. Same for Finger of Death, if you want to use this spell bug free with this
// system, you should use a triggered version of it.
// 3. If you use damage modifiers by setting the damage amount variable, you have
// to use GetUnitLife, GetUnitMaxLife and SetUnitLife instead of GetWidgetLife,
// GetUnitState for UNIT_STATE_MAX_LIFE and SetWidgetLife in your whole map to
// ensure there occure no bugs.
// 4. The boolean udg_PDD_SPELL_RESIST_AUTO_DETECT is only neccessary set to true
// if you want to use a customized damage table with spell damage resistance
// above 100%. If this is not the case, it should be set to false, as the
// system is faster then and still works correct.
// 5. As already mentioned you can't use the spell reduction ability when using this
// system (runed bracers and elunes grace). If you want to use them, you can
// trigger them by using the damage modifiers. Runed bracers is already considered
// in this system, so you don't have to code it.

// Implementation
// --------------
// 1. Create all variables that this system uses (compare the variable editor).
// You don't have to set them to specific values, they get initialized
// automatically by the system so just create them.
// 2. Copy this trigger to your map. You can then add damage handlers by using
// the event "value of real variable becomes equal to 1" with the variable
// udg_PDD_damageEventTrigger. Compare the OnDamage trigger for an example usage.
// 3. Copy the two custom abilities to your map and make sure they have the
// correct ID. You can specify the ID in the function InitGlobalVariables
// above.
// 4. Go to the locust swarm ability and invert its damage return portion
// from (default) 0.75 to -0.75.
// 5. Remove the spell damage reduction ability from the spell damage reduction
// items you use (runed bracers). You can configure the resistance of this
// item in the InitGlobalVariables function, modifying the global variable
// udg_PDD_BRACERS_SPELL_DMG_RED.

What possesses you to stay on 1.29?
 
Last edited:
Level 5
Joined
Aug 14, 2020
Messages
118
@masih_julius
You're in luck then, this DDS is dated for 1.21b
Physical Damage Detection for GUI v1.3.0.0
Do note with this restriction of using an old system you're stuck with old restrictions, at this point I'd rely on using "Unit gets attacked" but read this if you wish to press on:
// Important Notes
// ---------------
// 1. Life Drain does not work with this system, so you should use a triggered
// version of this spell if you want to use it.
// 2. Same for Finger of Death, if you want to use this spell bug free with this
// system, you should use a triggered version of it.
// 3. If you use damage modifiers by setting the damage amount variable, you have
// to use GetUnitLife, GetUnitMaxLife and SetUnitLife instead of GetWidgetLife,
// GetUnitState for UNIT_STATE_MAX_LIFE and SetWidgetLife in your whole map to
// ensure there occure no bugs.
// 4. The boolean udg_PDD_SPELL_RESIST_AUTO_DETECT is only neccessary set to true
// if you want to use a customized damage table with spell damage resistance
// above 100%. If this is not the case, it should be set to false, as the
// system is faster then and still works correct.
// 5. As already mentioned you can't use the spell reduction ability when using this
// system (runed bracers and elunes grace). If you want to use them, you can
// trigger them by using the damage modifiers. Runed bracers is already considered
// in this system, so you don't have to code it.

// Implementation
// --------------
// 1. Create all variables that this system uses (compare the variable editor).
// You don't have to set them to specific values, they get initialized
// automatically by the system so just create them.
// 2. Copy this trigger to your map. You can then add damage handlers by using
// the event "value of real variable becomes equal to 1" with the variable
// udg_PDD_damageEventTrigger. Compare the OnDamage trigger for an example usage.
// 3. Copy the two custom abilities to your map and make sure they have the
// correct ID. You can specify the ID in the function InitGlobalVariables
// above.
// 4. Go to the locust swarm ability and invert its damage return portion
// from (default) 0.75 to -0.75.
// 5. Remove the spell damage reduction ability from the spell damage reduction
// items you use (runed bracers). You can configure the resistance of this
// item in the InitGlobalVariables function, modifying the global variable
// udg_PDD_BRACERS_SPELL_DMG_RED.

What possesses you to stay on 1.29?

realy? thank you man!

my campaign, For the Darkside,
I’m working on it with 1.29 so more people will be able to play it.
 
Status
Not open for further replies.
Top