• 🏆 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] MUI channeled %HP DoT spell.

Status
Not open for further replies.
Level 7
Joined
Aug 11, 2009
Messages
193
Hello!

I'm currently trying to create a channeled single target DoT spell that deals a %MAX HP of a target as damage and uses GUI entirely but I am not sure where to start. I know what kind of damage I want to deal with the spell and such but I am at a loss in terms of how to shape it up trigger-wise. I'd like some pointers as to how I can make it work. I was looking at Paladon's DoT system on the forum but I don't see how I can convert it to a channeled ability. Would appreciate some help.

28ad2f42ed754568ac1e6bfb3d43fade.png


This is the full spell in question I want to build. I know how to do the damage amplification through a couple of workarounds and how to make it deal 20% of target's MAX HP and stun it by the end of it. It's the DoT part that I don't know how to make.
 
Last edited:

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
Timing things properly is not that easy in GUI, because waits are bad and timers are not directly supported like in JASS. When I did my triggers in GUI I usually used dynamic Indexing together with periodic triggers.
Depending on whether your spell needs to be MUI/MPI you can make it a lot easier by not using dynamic indexing and using globa variables directly.

Life Drain could be a nice base spell, as it has some nice effects, that could help you. It applies a buff, which you can detect, so it's easier to trigger, as you don't have to catch events when the caster stops. The spell is automatically canceled, if the target gets untargetable (transport, invulnerability).
 
Level 21
Joined
Dec 4, 2007
Messages
1,473
So Liadrin channels towards one specific target everytime?
Are there multiple Liadrins possible?

If so, you can set things up easily in gui, using a secondary trigger which runs every x seconds to apply the dot.
It could also work easily against multiple targets, using a specific unitgroup which stores all units who have been marked by Retribution after a successful channelling.

It looks clumsy and can be done much easier and more efficient in JASS, but it gets the job done regardless.
 
Level 7
Joined
Aug 11, 2009
Messages
193
I came up with an idea and managed to do it. Posting this for anyone who might need to do it in the future. Sadly enough this will break if RetriTarget changes so you cannot give it to more than 1 caster if you want to cast it at the same time. I suppose that in order to make it MUI I'd have to change RetriTarget to a different variable type.
74b0bfc783ef441484c9f0ba39821221.png

7c307c4241b1411caf42f9ac7f3c27c1.png

e1e7fb6f48144843a5b227bbdc84adb7.png

5e806e890e60466b93669d17c8c184d0.png

4fecc22e06d54ab08fc689f5fca35541.png

19cd0c3aa5994bb78bd2f8e45e8f3a24.png
 
Status
Not open for further replies.
Top