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

Veigar's Event Horizon and Primoridal Burst

Status
Not open for further replies.
Level 5
Joined
Oct 16, 2015
Messages
132
Hello, I want to know if there is a way to make Veigar's E and Ult? His ultimate could be easy but I dont how to increase its damage based on the targeted unit's missing health, also his E could also be hard for me since I'm really noob at triggering, any ideas?
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
If you want to increase damage based on the target's missing health you can either trigger the damage or increase the dealt damage using a DDS. I would go with triggering the damage all along, but depending on when the damage is supposed to be dealt (instant, missile, damage over time) this can be a bit harder.
I don't know what his E and Ult exactly are.
 
Hello, I want to know if there is a way to make Veigar's E and Ult? His ultimate could be easy but I dont how to increase its damage based on the targeted unit's missing health, also his E could also be hard for me since I'm really noob at triggering, any ideas?

Judging by what the ultimate does, I guess it is an on-hit event or damage event, by which Jampion has already suggested using a DDS in order to catch the event. When the event fires, you'll filter out if the triggering unit is an enemy of the source of the damage and if the level of the ultimate is not 0 and fire the corresponding events.

As to the E in the Veigar's, I don't know how exactly what it does.
 
Level 5
Joined
Oct 16, 2015
Messages
132
If you want to increase damage based on the target's missing health you can either trigger the damage or increase the dealt damage using a DDS. I would go with triggering the damage all along, but depending on when the damage is supposed to be dealt (instant, missile, damage over time) this can be a bit harder.
I don't know what his E and Ult exactly are.

Hmmm veigar's E creates a circle like something in an area and all the enemies that attempt to go out will be stunned, and his ult will deal damage and is increased depending on the target's missing health

Well, you could also check here: Veigar | League of Legends
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
DDS: Damage Detection System
It basically gives you a generic unit event "unit takes damage"
Pseudo Code:
  • Pseudo
    • Events
      • Unit - A unit takes damage
    • Conditions
      • (Damage comes from Veigar's Ult) Equal to True
    • Actions
      • Unit - Cause Veigar to damage Target , dealing 500.00 damage of attack type Spells and damage type Normal
You detect when Veigars Ult damages the target and deal additional damage to it.
The difficulty with using a DDS here is, that you must verify that the damage you want to amplify comes from the ultimate and not a different source.

His E will be a bit more complex I guess.
 
Level 16
Joined
Mar 24, 2017
Messages
827
I recall having a conversation regarding why certain items spells that are supposed to purge an enemy a certain % of the time dont work, and the person I was talking to told me that because if the unit attacks another unit without the player directing it to do so it somehow doesn't trigger it, is the damage detection system something that can change this?
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
I recall having a conversation regarding why certain items spells that are supposed to purge an enemy a certain % of the time dont work, and the person I was talking to told me that because if the unit attacks another unit without the player directing it to do so it somehow doesn't trigger it, is the damage detection system something that can change this?
It is true that these orb effects only work when the unit is ordered to attack. If it attacks a unit after automatically acquiring nearby enemies the effect will not trigger. The orb abilities are lightning orb and slow orb I guess. They have a chance to trigger a different ability (purge and slow).

Yes you can detect any kind of damage. If you have the right DDS it can even distinguish between attacks and spells. You can then detect when a unit is attacked (using the DDS not "is attacked") and trigger the effect of the orb.
 
I recall having a conversation regarding why certain items spells that are supposed to purge an enemy a certain % of the time dont work, and the person I was talking to told me that because if the unit attacks another unit without the player directing it to do so it somehow doesn't trigger it, is the damage detection system something that can change this?

Not in the sense that you put it, but it will work. Let's take Critical Strike, for example. Critical Strike works by multiplying the damage dealt when an enemy unit takes damage. It has a certain percentage that determines how frequent the multiplication of damage occurs. Now, in a triggered Critical Strike, when a unit is damaged, you would filter out the attacker and check if the attacker is an enemy and has the triggered Critical Strike ability. Then, you would add a condition that checks for the chance for occurence. If the condition is fulfilled, you would multiply the damage.
 
Level 16
Joined
Mar 24, 2017
Messages
827
Ok, I'm not sure if I completely got that....but here's my question: you have this item ability called " Orb of Lightening (new) " it has a certain % to cast purge (or whatever ability you switch it to) but I was told that it only works when you manually tell a unit to attack an enemy, how do I make it so that it has a % to purge (or anything else) a unit that it simply attacks without me giving it the order to do so.
 
Ok, I'm not sure if I completely got that....but here's my question: you have this item ability called " Orb of Lightening (new) " it has a certain % to cast purge (or whatever ability you switch it to) but I was told that it only works when you manually tell a unit to attack an enemy, how do I make it so that it has a % to purge (or anything else) a unit that it simply attacks without me giving it the order to do so.

Oh, didn't know you just needed to catch the attack instance. You just use

  • Event - a unit is attacked
event.

This will fire no matter what order you give the unit as long as the unit is being attacked.
 
I'm used to vJASS, but here's the trigger in GUI:

  • Events
    • Event - A unit is attacked
  • Conditions
    • (Attacking Unit) belongs to an enemy of (Owner of (Triggering Unit)) equal to true
    • (Level of <dummy spell> for (Attacking Unit)) not equal to 0
  • Actions
    • If - All Conditions are true then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • (Random real number between 0.00 and 1.00) less than or equal to <percentage in decimals>
      • Then - Actions
        • <Do stuff>
      • Else - Actions
        • <Do nothing>
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
@MyPad that's a very bad solution. The a unit is attacked event does not fire when the unit is attacked (the sword strikes its body/the arrow hits its body), but when the attacker starts attacking (the attacker swings its sword/draws an arrow). Using a sequence of attack,stop,attack,stop you can trigger multiple "is attacked" events without even hitting the target once.
Because of this you need to use "takes damage" instead of "is attacked". So you need a DDS, as there is no generic unit event for "takes damage". You also need to make sure it's an attack and no spell when using "takes damage".
It is a lot of work to get it working, but the "is attacked" event is just not capable of detecting actual attacks. It only detects when an attack starts, but attacks can also be canceled.

Also I think we should get back to the topic. Maybe just open another thread about attack detection.
 
Level 16
Joined
Mar 24, 2017
Messages
827
@MyPad that's a very bad solution. The a unit is attacked event does not fire when the unit is attacked (the sword strikes its body/the arrow hits its body), but when the attacker starts attacking (the attacker swings its sword/draws an arrow). Using a sequence of attack,stop,attack,stop you can trigger multiple "is attacked" events without even hitting the target once.
Because of this you need to use "takes damage" instead of "is attacked". So you need a DDS, as there is no generic unit event for "takes damage". You also need to make sure it's an attack and no spell when using "takes damage".
It is a lot of work to get it working, but the "is attacked" event is just not capable of detecting actual attacks. It only detects when an attack starts, but attacks can also be canceled.

Also I think we should get back to the topic. Maybe just open another thread about attack detection.

So what's the solution?
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
So what's the solution?
You need:
1. DDS
2. make sure damage comes from an attack

An easy to use DDS is https://www.hiveworkshop.com/threads/gui-friendly-damage-detection-v1-2-1.149098/.
You can use the Orb of Corruption ability to verify that the attack came from an attack. A disadvantage is, that orb effects don't stack, so if you plan to use other orb effects (items, searing arrow, ...) you need to trigger all of them.

Give me 5 minutes and I can upload a map.
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
If you play the map, you will see that the attacks event is fired when the lich fires his shot. The damage event is fired when the shot hits the target. I use Orb of Corruption ability to place a buff on the target. When the target takes damage and his this buff, it was an attack and the buff gets removed (you will never see the buff in the game, because it lasts 0 seconds).

No orb effects do not stack. The workaround is that every unit has this orb of corruption ability to detect attacks. In the trigger you check which dummy items/abilities he has and trigger the orb effect. For example if the hero has a sword of ice, you trigger the slow effect and the item itself has now effect.

If you really need arrow abilities, you use frost arrow and detect when the target has the buff (same as orb of corruption just as an arrow ability).
 

Attachments

  • Orb.w3x
    24.2 KB · Views: 52
Last edited:
Ok can
Game - GDD_Event becomes Equal to 0.00 be replaced with "unit is attacked" ?

It depends on what is your intention. Detect damage, do Game - GDD_Event becomes Equal to 0.00. Detect incoming attack, do "unit is attacked"

I don't know jass or what the jass trigger does

Watch out, don't double post. They would rather that you merge the post into one.
Anyway, leave it be for now. Use it as indicated in the library given.
 
Level 16
Joined
Mar 24, 2017
Messages
827
Basically attack does not mean damage because it can be canceled at the last moment, but damage means the unit has already lost some life right?
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
Hey, can I know what part of the condition is the one you used in "(Damage comes from Veigar's ult) equal to True. I don't know where in the conditions it is.
Well it's pseudo code. This means it's just to describe what I meant. There is no conidition like this. You could create dummy a dummy unit "VeigarUlt" and let it deal the damage and apmlify it.
But I think it's better to detect when the missile hits the target and deal all of the damage with triggers.
Here you can use GDD again to detect when the missile hits. I will upload a map soon.

The idea is the same as with the orbs. Use a missile ability with buff (drunken haze/acid bomb as they have no side effects like storm bolt), detect when the unit is damaged and has the buff, remove the buff and do you action.
 
Level 16
Joined
Mar 24, 2017
Messages
827
Will this work?

  • Damage
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • ((Attacked unit) has buff Attack Buff ) Equal to True
    • Actions
      • Unit - Remove Attack Buff buff from GDD_DamagedUnit
      • Game - Display to (All players) the text: ((Name of GDD_DamageSource) + ( deals damage with an attack to + (Name of GDD_DamagedUnit)))
 

Jampion

Code Reviewer
Level 15
Joined
Mar 25, 2016
Messages
1,327
Ok, but what are the drawbacks? what spells cannot not use because of using this system then?
Orb effects:
Searing Arrow, Frost Arrow**, Poison Arrow, Black Arrow, Incinerate
Frost Attack, Poison Attacks, Mask of Death Lifesteal, Orb of Corruption*, orb of lightning/slow ***
Bash, Critical Strike

Maybe I missed something, but that should give you an idea.
These abilities should be avoided on units that you want to have your custom orb effect. Other units don't matter. However you can rebuild all of these abilities in the trigger.

* avoid using Orb if corruption in general with this system, because it is used as base ability of this system
** same here. Frost Arrow can be used as base ability of you need compitability with arrow abilities
*** don't use in general, after all this system is an alternative to these buggy abilities
 
Level 11
Joined
May 16, 2016
Messages
730
Hello, I want to know if there is a way to make Veigar's E and Ult? His ultimate could be easy but I dont how to increase its damage based on the targeted unit's missing health, also his E could also be hard for me since I'm really noob at triggering, any ideas?
ENJOY 2 SKILLS JUST LIKE IN THE LoL Veigar's horizon and Veigar's burst
 

Attachments

  • Event Horizon +Burst.w3x
    38.6 KB · Views: 46
Status
Not open for further replies.
Top