• 🏆 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] Needs help checking ability trigger for optimization / crediting system

Status
Not open for further replies.
Level 27
Joined
Nov 25, 2021
Messages
480
Firstly, I'm making an ability based on Shockwave, but the damage it deals will also heal the Hero (it's for a singleplayer campaign, so there should only be one of this Hero on this map at a time, so I don't use unit indexer for simplicity's sake), but since I don't know how to detect the spell damage coming from this specific ability with my current version of Damage Engine (5.4.2.3), so I made these two triggers:

1643052554091.png


- So I created a specific Dummy for this ability to cast the modified Shockwave that deals 1 damage (which I called Tempest (Dummy) ), with the same missile speed, final area, and area of effect as Tempest (Hero), which deals 0 damage, and will be the skill being used by the hero.

1643052746490.png


  • This one will detect the damage dealt by the Dummy, then causes the Hero to damage each target, making sure that he gets credits for the kill. Since I checked that Shockwave deals Sonic damage, I make him deal Sonic damage as well for this to be as close to the original Shockwave as possible.
  • Then, it will heal him for 3%xAbility Levelx(damage dealt or target's health if their health is lower than damage amount)

So, I want to ask if there's any way to make these triggers shorter/more optimized but still give the Hero kill credit, and is there a way to detect damage coming from a specific ability with Damage Engine?

Secondly, I've been using the Buff-Ability Link system that I found in Wazzz's Bandit Outlaw's Techtree Map, but I can't seem to find the original maker of that system. I need help finding him/her so that I can credit them in my maps later.
 
Last edited:

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,534
TempestLev and TempestDmg can be Set outside of the DamageEvent trigger. There's no reason to recalculate it every single time a unit gets damaged.

A unit learns a skill -> Skill equal to Tempest (Hero) -> Set your TempestLev/Dmg variables.

(And - All Conditions are true) is unnecessary. By default all conditions need to be true.

Other than that, this is basically all you can do.

 
Last edited:
Level 27
Joined
Nov 25, 2021
Messages
480
Is there a way to detect damage coming from a specific ability with Damage Engine?
Thank you for your help! And I suppose that this isn't possible, and my way of using a specific dummy type is good enough?

Secondly, I've been using the Buff-Ability Link system that I found in Wazzz's Bandit Outlaw's Techtree Map, but I can't seem to find the original maker of that system. I need help finding him/her so that I can credit them in my maps later.
I will also post an empty map with the system's trigger below, to see if anyone can help me trace back its maker.
 

Attachments

  • Buff-Ability Links.w3m
    17 KB · Views: 11

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,534
Thank you for your help! And I suppose that this isn't possible, and my way of using a specific dummy type is good enough?


I will also post an empty map with the system's trigger below, to see if anyone can help me trace back its maker.
What you're doing is correct. No function exists to change damage sources. A Damage Event is pretty straightforward, one unit was damaged (Damage target), one unit dealt the damage (Damage source), and then there's a bunch of Event Responses regarding the Attack Type, Damage Type, Damage Amount, etc...

Bribe's Damage Engine provides GUI variables that point to these different Event Responses (in the past most of them weren't even available in GUI). That's why changing the DamageEventSource variable doesn't actually change the unit that dealt the damage, because it's already set in stone and out of our control.

Regarding the buff system, I imagine you can find it on Hive.
 
Status
Not open for further replies.
Top