1. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  2. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still haven't received your rank award? Then please contact the administration.
    Dismiss Notice
  3. Ride into the sunset with the 32nd Modeling Contest. The contest is optionally paired. Best of luck, people!
    Dismiss Notice
  4. This adventure has come to an end. Congratulate our heroes in the 16th Mini Mapping Contest Results.
    Dismiss Notice
  5. From the gates of hell, the 5th Special Effect Contest Results have emerged.
    Dismiss Notice
  6. Race against the odds and Reforge, Don't Refund. The 14th Techtree Contest has begun!
    Dismiss Notice
  7. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

REPO in progress - mapping damage types to their abilities

Discussion in 'The Lab' started by Bribe, Jun 13, 2019.

  1. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    For information on cross-referencing the terminology used below, please review: Wc3C.net - View Single Post - ATTACK_TYPE and DAMAGE TYPE testing. Big shout out to @Tasyen for helping me to fill out this list and also providing good feedback.

    Damage Type Used by Abilities Behavior
    Magic Aerial Shackles
    Mana Burn
    Finger of Death/Pain
    Life Drain
    Dispel
    (Damage Summon)
    Cannot damage spell immune; bypasses Armor.

    Fire Rain of Fire
    Flame Strike
    Firebolt
    Immolation
    Liquid Fire
    Soul Burn
    Phoenix Fire
    Drunken Haze+Breath of Fire
    (DoT only)
    Incinerate (proxy damage source: exploded unit)
    Same as Magic

    Sonic Storm Bolt
    Frost Bolt
    Hurl Boulder
    Thunder Clap
    War Stomp
    Shockwave
    Breath of Fire
    Crushing Wave
    Carrion Swarm
    Same as Magic

    Force Cluster Rockets
    Impale
    Bash
    Tornado
    (building)
    Inferno (proxy damage source - Infernal)
    Same as Magic

    Lightning Chain Lightning
    Forked Lightning
    Mana Flare
    Lightning Shield
    (proxy damage source - shield wielder)
    Same as Magic

    Cold Blizzard
    Frost Nova
    Cold/Frost Arrows/Freezing breath
    (zero-damage event on top of the normal attack; only on-buff)
    Same as Magic

    Shadow Strike Shadow Strike
    Acid Bomb
    Same as Magic

    Defensive Spiked Carapace
    Spiked Defenses
    (Orc building)
    Same as Magic

    Plant Thorns Aura
    Entangling Roots
    Same as Magic

    Death Death Coil
    Unholy Frenzy
    Same as Magic

    Divine Holy Light Same as Magic

    Mind <None> Same as Magic

    Normal All Melee/Ranged Attacks
    Volcano
    Suicide
    (Unstable Concoction/Kaboom!)
    Locust Swarm (proxy damage source - Locust)
    Can’t affect Ethereal, but can affect Spell immune (unless applied with ATTACK_TYPE_MAGIC, in which case this is inverted), applies Armor.
    Enhanced Cleaving Attack (subsequent targets only)
    Pulverize
    Fan of Knives
    Bladestorm
    Burning Oil
    Same as Normal, but bypasses Armor.

    Poison Parasite
    Envenomed Weapons
    Same as Enhanced

    Disease Disease Cloud Same as Enhanced

    Acid Devour Same as Enhanced

    Slow Poison Slow Poison Same as Enhanced

    Demolish Unsummon Same as Enhanced

    Universal Earthquake
    Doom
    Stampede
    Starfall
    Death and Decay
    Monsoon
    Orb of Fire
    (splash only)
    Can affect both Ethereal and Spell Immune when using ATTACK_TYPE_NORMAL (Spells in GUI), bypasses Armor.

    Unknown This is always a zero damage event.
    Used when most debuffs are applied, also when Stuns wear off.
    Used by almost all Orbs - even Orb of Frost.
    Same as Universal



    Slightly reformatted chart from Sophismata from wc3c.net:

    Damage Type Attack Type Affects Ethereal Affects Spell Immune
    Magic Normal No No
    Magic Spells Yes No
    Magic Magic Yes No
    Universal Normal No Yes
    Universal Spells Yes Yes
    Universal Magic Yes No
    Normal Normal No Yes
    Normal Spells No Yes
    Normal Magic Yes No


    Attack type classifications from the above table:

    Normal (can never damage Ethereal targets):
    • ATTACK_TYPE_MELEE ("Normal" in GUI)
    • ATTACK_TYPE_PIERCE
    • ATTACK_TYPE_SIEGE
    • ATTACK_TYPE_CHAOS
    • ATTACK_TYPE_HERO
    Spells (only this attack type applies the Spell Damage Reduction and Spell component of Elune's Grace):
    ATTACK_TYPE_NORMAL ("Spells" in GUI)
    Magic (can never damage Spell Immune targets but will always damage Ethereal ones):
    ATTACK_TYPE_MAGIC
    Added notes: Ability damage types cannot be changed via Object Editor tweaks, which is why only a spell based on an ULTIMATE has the ability to hit both ethereal and magic immune.

    Additionally:
    DEFENSIVE and the PLANT damage from Thorns aura fire recursively - The DAMAGING event fires from the melee attacker, then the retaliating damage from the damaged unit applies the DAMAGING and DAMAGED event, then finally the DAMAGED event from the melee attacker is deployed. Damage engines need to be built around this, and Damage Engine 5.1.2.1 already compensates for this behavior.

    Lastly, SPIRIT_LINK damage works like this: attacker fires DAMAGING event, then all the spirit link damage is applied (the original target is included among these, but not necessarily damaged first), then the DAMAGED event fires for the original target. Damage engines need to be built around this, and Damage Engine 5.1.2.1 already compensates for this behavior.​
     
    Last edited: Aug 10, 2019
  2. Tasyen

    Tasyen

    Joined:
    Jul 18, 2010
    Messages:
    1,488
    Resources:
    18
    Tools:
    2
    Maps:
    3
    Spells:
    8
    Tutorials:
    4
    JASS:
    1
    Resources:
    18
    You should also include:
    Incinerate (Fire lord attack orb + explosion)
    Soul Burn (Fire lord dot)
    Finger of death/Pain.
    Monsun (channeled Lightning strikes)
    devour magic (undead unit spell)
    dispell magic (human and hostile)
    purge
    parasit

    I did tests myself.
    mana flare DAMAGE_TYPE_LIGHTNING
    burning oil DAMAGE_TYPE_ENHANCED
    liquid fire DAMAGE_TYPE_FIRE
    unstable concoction DAMAGE_TYPE_NORMAL
    Vulkan DAMAGE_TYPE_NORMAL


    Bash is force not sonic.

    Edit: It might be good to mention that Inferno and Lightning Shield have not the caster as damage source.
     
    Last edited: Jun 13, 2019
  3. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    Wow Burning Oil is enhanced?? I was joking when I said "wonder what this could be".

    Thanks!
     
  4. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
  5. Wareditor

    Wareditor

    Joined:
    Jan 16, 2009
    Messages:
    681
    Resources:
    3
    Maps:
    3
    Resources:
    3
  6. Almia

    Almia

    Joined:
    Apr 24, 2012
    Messages:
    4,843
    Resources:
    35
    Spells:
    30
    Tutorials:
    4
    JASS:
    1
    Resources:
    35
    by player terms, "Universal" can also be called as "Pure", a damage type that bypasses damage resistances (as both Death and Decay and Stampede are listed in that field)
     
  7. Kyrbi0

    Kyrbi0

    Joined:
    Jul 29, 2008
    Messages:
    7,985
    Resources:
    1
    Models:
    1
    Resources:
    1
    This is an excellent repository of invaluable knowledge. Definitely voting for it to be Pinned or somesuch. Good work, guys.
     
  8. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    Updated the grid as I have been advised that Unsummon is identified as the sole user of DAMAGE_TYPE_DEMOLISH.
     
  9. Prometheus3375

    Prometheus3375

    Joined:
    Jul 20, 2018
    Messages:
    96
    Resources:
    0
    Resources:
    0
    What means "Spell Behavior" column?
     
  10. Pyrogasm

    Pyrogasm

    Joined:
    Feb 27, 2007
    Messages:
    3,788
    Resources:
    1
    Spells:
    1
    Resources:
    1
    How the spell damage is classified by the game engine and if it interacts with armor for purposes of damage mitigation.
     
  11. Prometheus3375

    Prometheus3375

    Joined:
    Jul 20, 2018
    Messages:
    96
    Resources:
    0
    Resources:
    0
    So is it an attack type? But there is no Enhanced or Universal attack type. Damage type is mentioned in 1st column.

    Notes about spell interactions with armor are useful, but what mean Magic, Physical, Enhanced and Universal words?

    Did you check Possession or Charm?
     
    Last edited: Aug 10, 2019
  12. Prometheus3375

    Prometheus3375

    Joined:
    Jul 20, 2018
    Messages:
    96
    Resources:
    0
    Resources:
    0
    I read original post and understood it. It is necessary to add such table here.

    Снимок 204.PNG

    To @Bribe: remove excess colons in 1st column. In 3rd column place only "pure" damage types, i. e. Normal, Enhanced, Magic (not Magical) and Universal. Place the table above (screenshot) before main table.
    This will help to make the main table more understandable. For now, it seems like Fire and etc. has unknown behavior with armor.

    Here is a typo.

    ULTIMATE = 4th spell of a hero which requires 6th level?
    AFAIK, heroes with level 2+ can launch abilities on magic immune targets.

    You lost highlighted with yellow information.

    Снимок 205.PNG
     
    Last edited: Aug 10, 2019
  13. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    Yes, they don't use it. Mind isn't used anywhere in WarCraft 3.

    No need for yet another table - I already added the classification of what is affected by armor into the first big table, in the "Spell Behavior" column.

    Done.

    I tried to merge the rows in that final column to make it more understandable, but Hive's BBCode doesn't support things like column /row span the method I did here was to signpost.

    In response to your feedback, I've made it more clear that I'm signposting and have changed the text to read "Same as <parent type>".

    I've also changed the terminology to get rid of keywords like "Magical" and "Physical", instead they are Magic and Normal and the behavior types formerly attributed to those are now instead defined when I define the damage type in the parent row.

    Thanks, fixed!

    I'm not sure which abilities you refer to here, but I'd like to know. The only abilities that use UNIVERSAL damage are:

    Earthquake
    Doom
    Stampede
    Starfall
    Death and Decay
    Monsoon
    Orb of Fire
    (splash only)

    Thanks, I've added that to the attack type spread as well as some other patterns to their respective attack types.
     
  14. Prometheus3375

    Prometheus3375

    Joined:
    Jul 20, 2018
    Messages:
    96
    Resources:
    0
    Resources:
    0
    Now it looks much better. Thanks a lot!


    I didn't get what means ULTIMATE here.

    Seems this is wrong.

    Some question related to this topic.
    1. Which attack type do spells have?
    2. I heard what Bash has different damage type (or attack type?) if it's used by ranged units. Did you test this?
    3. What this constants do? Especially the selected one.

    Снимок 206.PNG
     
  15. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    Ultimate is the level 6 ability (ie. Resurrection, Animate Dead) of a hero. Those are the only types of spells using UNIVERSAL damage.

    1. Spells in WarCraft 3 is always ATTACK_TYPE_NORMAL ("Spells" in GUI). So Mana Burn uses DAMAGE_TYPE_MAGIC and ATTACK_TYPE_SPELLS for example.

    2. Bash has a separate attack type (Sonic) if used as a percentage, but if it is set to 100% then the Bash becomes integrated into the unit's own attack and you can no longer determine a unique damage type from that attack instance (although if using Damage Engine you would notice that the DamageEventLevel is greater than 1 because the attack was preceded by DAMAGE_TYPE_UNKNOWN).

    3. That constant would make units like Dryad invulnerable to ultimates such as Starfall.
     
  16. Prometheus3375

    Prometheus3375

    Joined:
    Jul 20, 2018
    Messages:
    96
    Resources:
    0
    Resources:
    0
    You meant Force damage type as said in the table?

    This is true, if a ranged unit has Bash, Bash damage will be always a part of attack damage. Test map.


    I also tested next thing. Setting level requirements to 6 allows a spell to hit Magic Immune targets, but do 0 damage EVEN if you change Magic Damage Factor in Spell Immunity ability or change Gameplay - Magic Imunes Resist Damage to False in gameplay constants. This can be useful in making custom Bash with dummy cast.


    In addition, in Gameplay - Magic Imunes Resist Ultimates Ultimates = any hero ability with requirement 6+ level. In test map a made a Storm Bold an ultimate, so it can hit Magic Immune targets, if Gameplay - Magic Imunes Resist Ultimates is false, otherwise it cannot.

    Text below should be edited, since any spell can become an ultimate and can hit both Magic Immune and Ethereal, but only spells based on the spells with Universal damage type can damage both Magic Immune and Ethereal.


    I updated test map, added Banish to heroes.
     

    Attached Files:

    • tmp.w3x
      File size:
      13.7 KB
      Views:
      32
    Last edited: Aug 11, 2019
  17. The_Silent

    The_Silent

    Joined:
    Feb 4, 2008
    Messages:
    2,929
    Resources:
    159
    Models:
    49
    Icons:
    89
    Packs:
    8
    Skins:
    12
    Maps:
    1
    Resources:
    159
    I wonder what type Mind Rot is, it is one of those unused spells that is still in the editor.
     
  18. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    It is unfortunately incapable of dealing damage so we can't know.

    yes pardon me.

    Interesting I will check it out.

    I'll have to test if the damage type itself has changed or just if the WC3 engine has allowed a zero damage event from whatever the original damage type was.

    What is the purpose of adding the Banish?
     
    Last edited: Aug 11, 2019
  19. Prometheus3375

    Prometheus3375

    Joined:
    Jul 20, 2018
    Messages:
    96
    Resources:
    0
    Resources:
    0
    I added to check that a common spell with 6+ level requirements can hit both Magic Immune and Ethereal.

    Damage type remains the same.
     
  20. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,162
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    So I have tried this a month or two ago with Inferno against a magic immune target. The target was stunned and the DAMAGED event fired with the full amount, but no damage was taken (the second event didn't go off).

    Also I've tried it with Carrion Swarm against spell immune targets - the targets take 0 damage and trigger just the first event runs.

    I tried tinkering with the Damage Types and changing to UNIVERSAL helped in the case of Inferno but did nothing for Carrion Swarm (unless I changed the value of that damage via triggers). I'll run some tests with Carrion Swarm and others being level 6 required and see if the pre-event then retains the damage value.