1: What is this?This is just a simple answer to a FAQ I've been getting
For those who don't know basics: D2 is a frame based game. Unlike most 3d games which render the entire environment every time a draw() is called, both the graphics and the logic of the game in Diablo 2, as well as many older video games, proceeds based on a ticker that blits the graphics to the screen after computing the state of the game every single "frame". 25 times per second, the game reads all the inputs for that frame, calculates all the changes to all actors and other variables in the engine, then draws the current environment for the player onto the frame. In the client/server model, the server simply skips the update stage, and the client attempts to syncronize with the server and still runs the same loop, just being fed most inputs. In other words, when you play Warcraft III, the game is constantly updating the threads for each action, and drawing is done nondeterministically at whatever arbitrary frame rate based on the current state at that time- the game could display at 600 FPS or 1 frame every 5 seconds, the action proceeds at the same rate. In Diablo 2, each frame is running through all the actions in one loop, then drawing.
As a result, animations in D2 are given a big importance. Whereas in a 3d game an attack might take 3.1274 seconds, expressed in some floating point format, in Diablo 2 each animation has to take an integer amount of frames. Either 3, or 4. Perhaps alternating.
Certain formulas are used to determine how long an animation takes, and they are rounded up or down or floored or ceil'd, having to be an integer. Hence "breakpoints" exist where an animation say skips from 5 frames down to 4 frames- calculated exactly it might have been [5.02] down to [4.98]
This is pretty common knowledge. Most people understand by now that attacks take certain specific integer speeds. You might have a 5 frame zeal, you might have a 9 frame bash.
What is generally not common knowledge are
action frames.
In Diablo 2, much like many other games, animations have both a "foreswing" and a "backswing".
A foreswing is the part of the animation that occurs before the actual event. The backswing is the animation that occurs after the event.
Say you are a sorcerss and cast "Lightning", taking 11 frames to cast it as you "d2 breakpoints" page tells you, because you have 195% faster cast rate, and the breakpoint is "194%"
In reality, you have a 5 frame "action point". This means that you cast the spell on frame #5, then spend another 6 frames doing the spells backswing.
So you spend 5 frames in animation, cast the spell on frame 5, then spend 6 frames in animation. The spell can only be cast on a single frame, and it rarely occurs at the *end* of the animation, rather often towards the middle.
What you might NOT have realized is that action frames are separate in scaling from total animation breakpoints. At 194% faster cast rate, Lightning takes 11 total frames, with A = 5. At 200% FCR, Lightning takes 11 total frames, but with A = 4.
The total animation takes the same amount of time, but you cast the spell earlier into the animation.
2: Why is this important?Action points are important especially in PvP because it means getting off an attack before your opponent. If your attack is interrupted, say by a Blocking animation or Hit Recovery animation, or even the secret in part #3, then your spell will fail
But only if the interrupt occurs BEFORE the action point. If your 5 action point lightning gets interrupted on frame #7, you still have already cast the lightning. If you teleported before the interrupt, the teleport still moves you, nothing is lost.
So for example if a 195% faster cast rate lightning sorceress and a 200% faster cast rate lightning sorceress both teleported on top of each other and cast lightning at the exact same frame, somehow striking the other on the same frame it was cast (won't really happen), then the 200% faster cast rate sorc may interrupt the casting of the other one, causing her lightning to fail, meaning the 200% sorc can lock up her opponent and win the duel based on that 5% fcr difference alone, despite the total animation being the same speed.. And more generally, it just helps your reflexes because it cuts down on the combined "Lag + Human Reaction Time + Action Frame" time between an event occurring and you being able to respond to it.
Further, it plays a role in simply being able to escape stun locks. For example, someone spamming Mind Blast on you, might actually leave you able to teleport away, despite say a 11 frame mind blast interrupting your 11 frame teleport with a 4 frame hit recovery. This is possible because you might have say a 6 frame action point- if you get interrupted on frame #1, you'll finish your FHR at frame #5, start your teleport on frame #6, finish on frame #10- before the next mind blast on frame #12. So you will be able, barring lag, reaction times, and modulo mistiming, to simply teleport out of what looks like it should just be able to pin you down.
3: How do we abuse it?Those familiar with fighting games already know the answer to this. It is called "Animation Canceling". Since the backswing of your animation does not do anything to help you, but instead leaves you immobile and vulnerable, it is possible, through certain techniques that you'll have to figure out for yourself (sorry, I don't spoonfeed everything), to cancel the second half of animations. In doing so, you can dramatically speed up the rate you cast at, but thats generally such an inhuman task (exploitable by hacks, not humans) that in GM dueling and such, it is more useful for being able to say WSG out of an animation and start moving before you've "finished casting". I won't reveal it all ofc.
But for a small taste of what is possible, let me point to the Trangs Fastnec Bomboklatze. It is a build heavily dependent on exploiting various glitches and syncing issues with the servers, and animation canceling plays a clutch role.
Normally, a necromancer in Trang Oul's Set in vampire form has terrible animations. For example, 0% FCR gives you a 23 frame animation- almost a full second! But the action frame is only 5, meaning 18 frames of the animation can be skipped through canceling.
Thus a TO necro properly canceling can cast and then move faster than a 200% FCR sorc would be able to without abuse.
The other, passive, method to use this is to simply build your character to use the proper action frame breakpoints, so that you can benefit from that extra little knowledge. For example going 200% on a lightning sorc instead of 194%
So for that, I present:
4: Statistics ripped straight off the mannm faqtoids pageWhat are the action frames for other things like attacks? I don't know. Ask Eywa. In fact, I'm sure he'll pop his earth-mother head in to either correct a few of the minor errors of entirely refute everything I've said