Skip to the “The Question” section above the first video if you understand in depth how NextDelay, LastCollide, Missile Size, and the Martial Arts (MA) charge-up skills function. My suggested changes will be below all the explanations and video demonstrations, near the bottom.
In D2, there is a function for missiles and skills called NextDelay (also called NextHitDelay or NHD). NHD has several purposes. Its main purpose for the MA skills is to prevent many of the same type of missile from hitting the same monster all at the same time and effectively preventing the area-of-effect (AoE) design of these skills.
Additionally, there is a function called LastCollide (LC), which prevents a multi-collision missile from hitting a monster for every frame it is passing through it. All untargeted Lightning skills have LC, as an example. LC is not an ideal solution in every scenario to preventing a single missile from hitting a monster more than once, which will be discussed below.
Missiles also have a size. This size dictates how many subtiles it occupies as it travels. A Size 1 missile is (normally) only capable of hitting one monster per frame along its path. A Size 2 missile can occupy two subtiles at any given time, so it has the potential to hit two (sometimes more) monsters per frame. A Size 3 (max) missile occupies three subtiles at any given time, and has a high likelihood (depending on how the missile travels) of hitting more than one monster at any given time.
Lastly, charge-up skills have a function called prgstack, which controls whether or not the release of a charge-up skill will activate all charges below it as well. Fists of Fire, Claws of Thunder, and Blades of Ice use this, while the rest do not. This means that when you release the third charge of Claws of Thunder, you will also activate the effects of the first and second charges of Claws of Thunder too. Likewise, If you release the second charge of Claws of Thunder, you will also activate the effects of the first charge of Claws of Thunder. However, if you release the third charge of Phoenix Strike, you will only release the effects of the third charge of Phoenix Strike.
However, the flaw with NHD is that it is global amongst all skills and missiles who use it. If a monster is hit by a skill or missile with NHD, every other skill or missile with NHD cannot interact with that monster for the duration of the NHD. In the case of all relevant MA skills, the NHD is 4 frames.
The relevant missiles in this discussion are:
Charge | Missile Name | NextHitDelay | LastCollide | Missile Size |
---|---|---|---|---|
Claws of Thunder (CoT) 2 | Nova | 4 frames | Yes | 1 |
Claws of Thunder (CoT) 3 | Charged Bolts (CB) | 4 frames | Yes | 1 |
Phoenix Strike (PS) 2 | Chaos Lightning | 4 frames | No | 2 |
Phoenix Strike (PS) 3 | Chaos Ice Bolts | 4 frames | Yes | 1 |
From here on, if I reference “Nova”, I am specifically referencing CoT 2 isolated. Likewise, “CB” references CoT 3 isolated. If I reference “CoT 3”, I am referencing the charges of CoT 3, 2, and 1. If I reference PS 3, I am only referencing the charge of PS 3 (see the explanation of prgstack above if this confuses you).
The Question
Practically, how does NHD impact the combination of these missiles? Theoretically, they have the potential to prevent each other from actually doing anything. The faster missiles will typically win the race, so Nova and Chaos Lightning would likely take dominance. But what happens if you only use CoT 3? Both Nova and CB have NHD. Would one make the other redundant to some degree? This is what I aim to demonstrate.
I will be demonstrating NHD within combinations of these missiles by setting one of the missiles to deal cold damage so the chill overlay will visualize what a missile does and does not hit. In my test, all of my skills are level 60. My charges were set to be infinite and to never consume. I have modded CoT and PS missiles to deal only 1 damage. I have set the Blood Moor to be densely packed with Zombies, made them immune to everything except cold damage, and gave them 5 HP.
When looking at these visualizations, the chill overlay is the takeaway. There will be combinations with other missiles which do lightning damage and activate their NHD. The idea is to see how a specific missile interacts with the rest of them. Each missile in each combination will have its own video applying cold damage to show how it interacts with other missiles.
First, let’s see how each missile visualizes when it is alone.
Nova:
CB:
Chaos Lightning:
Chaos Ice Bolts:
Here is what we can see from this:
CB and Chaos Ice Bolts expire on first collision. The first time they hit a monster, they are deleted.
Nova and Chaos Lightning do not expire on collision (only on distance/time). They will continue to hit multiple monsters.
This means LC has no impact for CB and Chaos Ice Bolts despite having it. They expire on first collison so they cannot hope to repeatedly hit the same monster as the missile passes through the monster.
LC would normally be impactful for Nova, but in truth it has little effect. Nova is a circular AoE, so it has extremely high chances of colliding with multiple monsters on each frame, thus making LC useless, as the LC status would swap back and forth between the monsters rapidly, achieving nothing.
LC has slightly more impact for Chaos Lightning than it does for Nova, but largely falls under the same issue. Chaos Lightning has a decent chance to hit more than one monster at a time, especially since it is Size 2.
In conclusion: LC alone is not enough to prevent these missiles from colliding with a monster more than once on their own, thus giving reason to their NHD.
Now, let’s look at how the missiles interact with each other. The phrasing of this will be written in the way of “How Missile X interacts with Missile Y”. What this means is Missile X is the missile that is being visualized and how ineffective it may be when used in combination with Missile Y. These demonstrations should be compared with how the missile normally visualizes by itself (with the examples above).
Let’s look at CoT 3 first and see if Nova and CB interfere with each other:
How Nova interacts with CB:
How CB interacts with Nova:
Interestingly, these missiles don’t really impact each other. The same monsters in the same areas are hit in the same frequency regardless of what the other missile does (Do note there is a bug or unknown interaction in the game where some missiles ignore their NHD, Fist of the Heavens is one such example).
How Chaos Ice Bolts interact with CoT 3:
Here is where we can see some real impact. Take note of the original Chaos Ice Bolts video and how closely packed the Chaos Ice Bolts hit. In this video, we can see the Chaos Ice Bolts hit much farther out. This is because the Nova is faster and applies a 4 frame NHD, so for the 4 frames following Nova, Chaos Ice Bolts cannot interact with a monster, so they hit monsters further away.
One may think, “Well, this is okay, it just makes the effective hitbox further away.” Sure, this is true, but try the skill out practically and see how it works. Unless you’re in highly dense areas, it is more common than not that the Chaos Ice Bolts hit little to no monsters and is effectively useless.
Also, note a visual bug! The client does not respect NHD and causes the Chaos Ice Bolts to vanish on first monster collision attempt. However, the missiles did not actually hit the monsters there, and continue moving server side. Thus, you see the monsters further away get hit by what appears to be nothing. The Chaos Ice Bolts are invisible as a result of this visual bug.
Let’s move on to other interactions.
How Chaos Lightning interacts with Nova and CB:
Once again, seemingly very little interference. The Chaos Lightning persists much longer than the Nova or CB missiles do, so it is effectively difficult to cause Chaos Lightning to be ineffective.
How Nova and CB interacts with Chaos Lightning:
Likewise, the same. Nova and CB are faster than Chaos Lightning, so they dominate their space first and Chaos Lightning does not interfere with them. You can see small interference in the middle of Nova’s AoE and see how some monsters don’t turn blue, but the effect is not extreme.
Phoenix Strike does not have prgstack, so unless this were changed, Chaos Ice Bolts and Chaos Lightning could never happen at the same time.
TL;DR of the video demonstrations: CoT 3 massively deters PS 3 in the area of CoT’s Nova, but otherwise none of the four NHD missiles are massively detrimental to each other. So nothing needs to change, right?
The Greater Concern
Dragon Talon is able to kick at a speed of up to 3 frames. With these 4 missiles having 4 frame NHD, it makes every other charge activation for those missiles ENTIRELY redundant. Let’s suppose you only used CoT 3 and PS 3. This would mean, with exception to the single target effect of CoT 1, every other kick is entirely wasted, and you are effectively kicking at 6 frames. You are forced to stay at 4 frame kick to gain the full effect of your skills (with exception to the interference mentioned above). Additionally, Dragon Claw’s action frames are very likely within 4 frames of each other at high speeds, making the second hit of Dragon Claw also completely redundant.
My Proposed Changes
The best solution is to redesign NHD to not be global amongst all missiles and only global per skill function execution! This will still prevent a single Nova from hitting a monster more than once. It will prevent two different missiles from the same skill function execution from hitting the same monsters at the same time. It will not prevent missiles from other skill function executions from hitting this monster as well (each charge would be its own execution of a skill function). This change alone would completely fix the missile interference issues listed above!
Assuming the above fix is out of the question:
Remove NHD from CB. It is fine if multiple Charged Bolts hit the same target. Charged Bolt (Sorceress) and Charged Strike do not have NHD, and their Charged Bolts are capable of hitting the same target. Let this effect be single-target burst. This change would be unnecessary (though welcome) if NHD were reworked.
Reduce NHD of Nova to 3. This will have the effect of allowing Nova to double hit Size 3 monsters ~50% of the time (depends on orientation and active movement of the monster) which is not a huge issue. Other novas already double hit at the outer edge of their AoE. Nova is the only exception to this rule because it does not slow down at the end like others do. This Nova is weaker than Sorceress’s Nova, and I do not think it would be overpowered to let this Nova have a chance to double hit large, moving monsters. This change would be unnecessary if NHD were reworked.
Remove NHD from Chaos Lightning. Instead, enable LC to reduce the chances of the missile hitting a monster more than one per passthrough. No other untargetted Lightning ability has NHD. This Lightning is more easily capable of colliding with more than once monster at a time than other untargetted Lightning abilities, so hitting a monster more than once on a single passthrough is possible, but still unlikely given that monsters move. At the very least, give it a NHD between 1 and 3 so that it is not entirely redundant when used with quick finishing skills. This change would be unnecessary (though welcome) if NHD were reworked.
Reduce NHD of Chaos Ice Bolts to 3. This skill design actually needs NHD, otherwise the initial spiraling motion of the missiles will all collide with (and then expire on) the same monster, nullifying its AoE effect. This change would be unnecessary if NHD were reworked.
With these changes, the designs of the skills will be preserved without an immense amount of unintended missile collisions and allow them to be used to the fullest potential under rapid activations. The interference between Nova and Chaos Ice Bolts will still exist unless NHD is redesigned, but the effect will be slightly reduced.