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

Choosing a DDS

Status
Not open for further replies.
Level 5
Joined
May 20, 2013
Messages
162
Hi, i am doing some editor work that needs a Damage Detection System. I realize over the years there have been a good number of these offered up here. So, i am at a disadvantage in knowing what to choose, or whats currently up to date or... really even what to look for or ask for exactly.

I really only use GUI on a regular basis. Any Code i incorporate is cut&paste from stuff that smarter people posted. But that does not mean i categorically reject Code based material -i am just saying that i will likely not know how to modify or repair it if adjustments are needed.

But, anyway, i would welcome any guidance in picking out a DDS.

& TY in advance! ;)
 
Level 5
Joined
May 20, 2013
Messages
162
@GIMLI_2 TY, i imported it... but wow, it is overwhelming! How am i going to use this? It has four trigger category folders & God only knows how many triggers with fields it seems i am supposed to customize. I don't think i know enough to operate this. It looks really big!
 
@GIMLI_2 TY, i imported it... but wow, it is overwhelming! How am i going to use this? It has four trigger category folders & God only knows how many triggers with fields it seems i am supposed to customize. I don't think i know enough to operate this. It looks really big!

I recommend reading up the thread for said damage engine. All DDS comes with a manual on how to use them.
 
Level 5
Joined
May 20, 2013
Messages
162
@Daffa the Mage TY, i am coming to terms with Damage Engine bit by bit. It is an awesome tool, i just get intimidated by all the new terms for the variables & the expanded trigger functionality they represent. I have some disability with memory & reading comprehension, so most instruction documents go in my eyes & out my ears with no retention. But the instructional that has made some sense to me is the test map. Playing the units in the test map & then going back & looking at the variables associated with them helps me understand the system better. Damage Engine makes it super easy to create an old WC2 style Unholy Armor spell, and do a legitimate Life Steal Attack for ranged weapons. Those are the first two features i am gleaning from it. Really neat program! ;)
 
Last edited:
Level 13
Joined
Oct 12, 2016
Messages
769
Well, I guess I should be that guy and ask:
Do you really need a damage detection system? Is it just for the pretty numbers, or is it integral for a function you can't perform with GUI triggers (like damage totals or damage reduction on spells)?

I ask this for simplicity's sake.
For life stealing on ranged units, for example, that's totally possible with the life stealing item ability, and can be rigged to be a buff with GUI triggers alone.
 
Level 5
Joined
May 20, 2013
Messages
162
@Wark, for me the DDS is purely functional. I don't give a flying ^%$# about the numbers on the screen. I hate that visual clutter! But the functions i need are pretty basic. There were two things i immediately wanted to simplify, & the DDS really does seem to help a lot with it.
'
#1 was life Steal ranged attack that wasn't just a fudged trigger. I wanted the Life Steal recipient to actually get life return based upon real damage dealt not on a pre-calculated projection or average.

#2 was an old school WC2 style Unholy Armor. In WC2 the buffed unit was still targetable -he just never took damage. And the Unholy Armor presented a faux spell immunity, but it was only immune to the damage of a spell. A unit with Unholy Armor could still be polymorphed. With the DDS, it is easy to produce this with simple triggering. In years past i have simulated this with the editor, though i lose my frame of reference (i have cognitive/memory problems). I don't remember how i did it exactly. Anything i accomplish on the editor is through those fleeting moments of clarity. And then they are gone! ;)

i would love to see your method of GUI triggering of either of these with the Editor as is.
 
Level 13
Joined
Oct 12, 2016
Messages
769
The life stealing ranged unit thing would just involve giving the "Item Life Stealing" ability to the unit, turning on a timer, then removing the ability when a dummy buff expires through conditions in the timer.
You can set the % life stealing with the item ability, and it does steal health equal to damage dealt. Works for melee, too.

As I recall, there is the one version of Anti-Magic Shell that absorbs spell damage but doesn't grant spell immunity. It doesn't absorb physical damage, however (magic and spell damage only). Not sure if that's what you're looking for.
 
Level 5
Joined
May 20, 2013
Messages
162
@Wark the Item Life Steal works great -but only for melee. There is no ranged life steal in the standard editor. And there is another problem when i do it that way. Not often -but often enough to be a spoiler, the add/remove filter doesn't misses a unit, and they end up with permanent life steal without the buff, or with no life steal at all while having the buff. Then i have to build a second screen to filter them out too.

The best i came with the editor this time around to producing what i wanted with Unholy Armor was adding several item abilities to the target while buffed. They were modified from the item abilities. They included: Item Life Steal, Item Armor Bonus, Item Runed Bracers (Magic Damage Reduction), Item Spell Shield with the cooldown tweaked. Add/remove four passive abilities to a unit. It worked about 95% of the time.

Something i did in the past was Add a tweaked troll Berserk button to a unit, & auto press it. When you have the damage increase set as high as it goes, like 10, it would make the berserked unit damage immune, but still fully targetable. As good as the function of the modified Berserk was in itself, forcibly adding/removing it the way i did was just too clunky.

I will show you how simple it was doing those same things using the DDS (Damage Engine).

First the Unholy Armor spell. In WC2 Unholy Armor gave a unit brief invulnerability at the price of half it's current health. While it was fully damage proof, it was not necessarily debuff proof. A unit clad in Unholy Armor could still be polymorphed. WC2 really didn't have disenchants in the same way WC3 did. In WC2, the disenchant was that a mage spell would trump a death knight spell. But Ogres with bloodlust were definately more powerful than Paladins with heal. Anyway, i digress! ;P

  • Unholy Armor Damge Proofing
    • Events
      • Game - DamageModifierEvent becomes Equal to 1.00
    • Conditions
      • (DamageEventTarget has buff Unholy Reduction (UF base)) Equal to True
    • Actions
      • Set DamageEventAmount = 0.00
      • Set DamageEventType = DamageTypeBlocked
Next, the Life Steal attack that includes ranged, melee, & magic. This trigger is more complicated, but it also distinguishes between physical damage & magic damage, and gives different life return rates between melee, ranged, & spell. And it calculates damage actually delivered, rather than damage projected. I just can't do that with the prepackaged GUI -not on the level that i understand it anyway.

  • Unholy Armor Life Recoup
    • Events
      • Game - AfterDamageEvent becomes Equal to 1.00
    • Conditions
      • (DamageEventSource has buff Unholy Reduction (UF base)) Equal to True
      • (DamageEventTarget is A structure) Equal to False
      • (DamageEventTarget is Magic Immune) Equal to False
      • (DamageEventTarget is Mechanical) Equal to False
      • (DamageEventTarget is an illusion) Equal to False
      • (DamageEventTarget is dead) Equal to False
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (DamageEventSource is A ranged attacker) Equal to True
        • Then - Actions
          • Unit - Set life of DamageEventSource to ((Life of DamageEventSource) + ((DamageEventAmount / 2.00) + 0.00))
          • Game - Display to (All players) the text: The Humans be slaug...
        • Else - Actions
          • Unit - Set life of DamageEventSource to ((Life of DamageEventSource) + ((DamageEventAmount / 1.00) + 0.00))
          • Game - Display to (All players) the text: The Elven scum must...
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • IsDamageSpell Equal to True
        • Then - Actions
          • Unit - Set life of DamageEventSource to ((Life of DamageEventSource) + ((DamageEventAmount / 4.00) + 0.00))
          • Game - Display to (All players) the text: Death wills it!!!
        • Else - Actions
Yes, i know classic Unholy Armor did not have a health recoup in it. I added it for the sake of the AI which would not be able to use it effectively otherwise. But admittedly, i like the idea too! ;)

As much as i love dinking around. I can not deny that the DDS delivers results that i can not produce no matter how long i fudge with it.

And these are only very basic applications of the DDS.

I guess i am saying: yes, i was very skeptical, but now i'm actually quite impressed. Damage Engine has really been helpful!

So i am giving it a commercial! ;)
 
Last edited:
Level 13
Joined
Oct 12, 2016
Messages
769
It's totally doable without a DDS for the ranged life stealing. This applies for all ranged and melee attacks (except artillery and splash).
For spell damage, that'll just take some triggering.

But yea, damage absorption is something else.
 

Attachments

  • Ranged Life Steal.w3x
    17.6 KB · Views: 13
Last edited:
Level 5
Joined
May 20, 2013
Messages
162
Hmmm... @Wark well you definitely corrected me in regards to the life steal. I suppose at some point i formed the notion that since Vampiric Aura only applied to melee, that Item Lifesteal only applied to melee as well. Keep in mind, the editor has been around for what, 15 years now? That is long enough for a persons memory to get tangled up over what does what! ;)
 
Level 13
Joined
Oct 12, 2016
Messages
769
Yea, I gotcha. I'm still learning new things myself with JASS.
The interesting thing about the item ability is that it's an orb effect, which actually stacks with Vampiric Aura. For example: item life steal (25%) + vampiric aura (25%) = 50% total life stealing for melee.

You know, this thread now gives me an idea with using Hardened Skin as an AoE buff... hmm.
 
Status
Not open for further replies.
Top