Strafe and next delay against single targets.

Jul 5, 2010
738
256
63
Hiya.

I've been theorycrafting possible lvl 98 bowazon builds for the untwinked 99er challenge; and I'm stuck on how strafe's 4 frame next-delay works. The information in wiki and basin and such tells me strafe has 4 frame next-delay and there's a whole diagram telling me how it takes 1~2 frames for the arrow to pass through the target; and I have no idea how to combine the two information.

Assume 5/3/3/3/7 frames for strafe and stationary target(same travel time of arrows).

1. Firing arrows and animation frames. When we talk about 8fpa, 6fpa, etc swings, are the frame before or after the swing?
Rich (BB code):
#1. Frames after arrow fires        #2. Frames before arrow fires        #3. Somewhere in between

  start strafe animation              start strafe animation             start strafe animation
> Arrow 1 fires > 5 frames delay    > 5 frames delay > Arrow 1 fires     > 2 frames delay > Arrow 1 fires > 3 frames delay
> A2 > 3 frames                     > 3 frames > A2                      > 2 frames delay > A2 > 1 frame
> A3 > 3 frames                     > 3 frames > A3                      > 2 frames delay > A3 > 1 frame
> A4 > 3 frames                     > 3 frames > A4                      > 2 frames delay > A4 > 1 frame
> A5 > 7 frames                     > 7 frames > A5                      > 2 frames delay > A5 > 5 frames
> end strafe animation              > end strafe animation               > end strafe animation
                                                                         * frames are arbitary, they just add up to 5, 3 and 7

I'm thinking #2 is how it really work, but I'm not a 100% sure.


2. Strafe's 4 frame next-delay and the arrows hit. (assuming 100% chance to hit)

Rich (BB code):
#1. based on when last hit, frames after animation.
Arrow 1 will hit.
Arrow 2 will hit.
Arrow 3 will NOT hit.
Arrow 4~n every other arrow will hit.
Arrow n will hit. (if n = even).

#2. based on when last hit, frames before animation.
Arrow 1 will hit.
Arrow 2 will NOT hit.
Arrow 3~n every other arrow will hit.
Arrow n will hit. (if n = odd).

Am I correct to assume only every other arrow will hit due to 4 frame next-delay and 3 frame mid-strafe arrows?


3. How does arrow taking 2~ frames to leave the target affect the next-delay? If at all?


The reason I started looking up strafe and the next-delay was that I wanted to compare how Strafe and GA would compare against Diablo. There are other things to consider such as strafe-lock, chance to hit, skill points invested and such; but i'll leave that for later after i sort out the above question first.


Any insights or links to other ppl's insights would be very much appreciated. :D

E: edited format.

E2:
After a bit of searching, I found that strafe will miss every other arrow (regardless of frames before or after the animation, how long it takes an arrow to leave the target, and next-delay) and concluded that GA > strafe against Diablo.

Strafe
+ higher ctc amp
+ high chance of CB (but CB works at 1/8 effectiveness w/ a ranged attack + against bosses)
+ ~25% faster than GA
- every other arrow will miss.
- 3/4 weapon dmg (bigg factor)
- AR issues (requires extra 19 points + points in dex to make up for it)
- strafe lock (another big factor)

GA
+ always hit (no AR issues - works great w/ my Faith, as ITD on it lets me skip AR on both GA and MS)
+ don't have to worry about diablo's position (running away and missing the arrow)
+ low(er) mana cost
+ can dodge lightning hose
+ no need to invest extra 19 points in penetrate and extra points in dex
- lower ctc amp
- lower CB



@maxicek : I sorta got what I was looking for and don't need to have the thread up anymore. Could you delete it? If general rule is to keep the thread alive, then that's fine too. =P
E3: got a reply. worth leaving it up.
 
Last edited:
The main reason why GA is better versus Diablo is that you can run to elsewhere when he's breathing or pouring out a firestorm. He's also less likely to catch you in a bone prison. I'm even putting extra skill points into GA because it needs less mana and for a bit extra damage. For a non-hybrid physical bowazon, there's not much else to do with all the skill points anyway.

I don't know exectly how the game does its calculations. With this posting, I'm just drawing conclusions from my observations, together with knowing about strafe having a next delay of 4 frames.

Q1: It seems that she puts down the bow and up again between the strafe rounds. I can also notice neither more time passing between the first and the second arrow nor between the second last and last. Therefore I think the first number is the amount of frames before the first arrow and the last is the amound after the last arrow while the others are the amount inbetween. However, the time passed between strafe rounds is clearly shorter than the sum of the two. I think that either the first is only applied when starting with strafe or the second only when ending with it while they don't add up between strafe rounds.

Q2: I think that the next delay counter gets started once the game acknowledges a hit, so if monsters had no noticable thickness, only every second arrow should indeed hit. However, see Q3.

Q3: An arrow will need more than one frame to pass through a monster, probably even the amallest, perhaps except on glancing blows, so there should always a strafe arrow "within" the monster each time the next delay time passes. Therefore I think there should be the chance for a hit once every 4 frames. On a miss, a bit more time will pass. With 3 frames between arrows, that would be 6 frames instead of 4.

If I'm right, then the conclusion is that you are better off with 3 frames between strafe rounds than with 4, in spite of a next delay of 4 (although not quite by a factor of 4/3), because with 3 frames, you will have a chance on another hit after just 6 frames rather than 8.
 
@krischan

haven't though about bone prison; good to know.

Ah, that makes sense. 5 frames to pick up the bow, 3 frames between arrows, 7 frames to drop the bow and be allowed to move.

That does make me wonder if 8fpa swings like berserk has no delay after the hit; i.e. 8 frames to swing, hit registers, and you can do something else the very next frame. Seems like it is; but i never found any detailed writeup about this.

Ideally I would use strafe to proc amp, and switch to GA to finish him off; but in this particular setup i was strictly deciding between 20 GA vs 20 Strafe with no extra points into the other. For now, I am quite convinced GA is the way to go.

Thanks =D
 
@krischan
Ah, that makes sense. 5 frames to pick up the bow, 3 frames between arrows, 7 frames to drop the bow and be allowed to move.

That does make me wonder if 8fpa swings like berserk has no delay after the hit; i.e. 8 frames to swing, hit registers, and you can do something else the very next frame. Seems like it is; but i never found any detailed writeup about this.

It's rather the other way around. Attacks and casts typically have a wind-up, an action, and a wind-down.

"Rollback" skills, like Strafe, are actually exceptions to this rule, at least in part.
What these skills do is, once the counter has reached the ActionFrame, then the counter is rolled back by a percentage of the current counter value. This percentage is 100 for Zeal, 60 for Fend, and 50 for Strafe. Essentially, these "repeats" completely cut off the wind-down, and Fend and Strafe also cut off a part of the wind-up. No other skills do this.

This "counter" I referred to is how the game determines what frame of the animation to display, and potentially if it should "do something" (ActionFrame).
Typically, this counter goes up by 1 per game-frame, but it can be modified to be less or greater than 1. Things like FCR and IAS modify this number.

An example. I'll just use a casting Sorceress:
With 104 FCR, the counter rate will be modified to be 1.546875.
The base length of the Sorceress cast animation is 14, and ActionFrame is 7. The game does not render the last frame for cast animations.
With Teleport selected:
  • You click the mouse. In this game-frame the counter immediately adds 1.546875. The first frame of the base animation is displayed.
  • The second game-frame, you simply add another 1.546875, and the counter is now at 3.09375. What does this mean? It means that the second frame of the 14-frame length animation is skipped, and in stead it is frame #3 of the animation that is displayed.
  • Third game-frame, counter is at 4.640626. Frame #4 of the animation is displayed.
  • Fourth game-frame, counter is at 6.1875. Frame #5 of the animation is skipped. Frame #6 of the animation is displayed.
  • Fifth game-frame, counter is at 7.734375. ActionFrame reached! You are now where you clicked to teleport! Frame #7 is displayed.
  • Sixth game-frame, counter is at 9.28125. Frame #8 of the animation is skipped. Frame #9 of the animation is displayed.
  • Seventh game-frame, counter is at 10.828125. Frame #10 of the animation is displayed.
  • Eight game-frame, counter is at 12.375. Frame #11 of the animation is skipped. Frame #12 of the animation is displayed.
  • Ninth game-frame, counter is at 13.921875. Frame #13 of the animation is displayed. End of animation, since cast animations do not display the last frame.
  • Tenth game-frame, this game-frame is open for a new action, for example the first animation-frame of a a new cast, or walking, etc.
The numbers might look funky, but that's because the game runs the counter with a precision of 256. (The game actually holds these values as integers. Multiply the above values by 256, and that's how the game keeps track of them.)
Also note that only in the fifth game-frame, something happens. All the other frames are just wind-up-to and wind-down-from that ActionFrame. Pretty graphics you can stare at.

Berserk works similarly. It uses a base animation (depending on which weapon is equipped and how it's wielded), which has a base length in frames, as well as an ActionFrame. A counter has started when the skill is initiated, and this counter goes up by a value modified by things like IAS. Totally unmodified, this counter would go up by precisely 1 (or 256 according to the game) per game-frame, but that's rarely the case of course. Note that it is possible for the counter to go up by less than 1 per game-frame, and in such cases you might see the same animation-frame display for multiple game-frames.


Now, Strafe for example, will cut that counter in half once ActionFrame has been reached.
Let's say hypothetically the numbers above were those for a Strafe animation, then in the fifth game-frame it would shoot the arrow (ActionFrame), as well as take the current counter value (7.734375), truncate it, and cut it in half. So everything after the decimal is removed, which leaves 7, which is cut in half, 3.5, which is then again truncated. The game sets the counter to exactly 3.

Then at the sixth game-frame, the counter will just continue to add the modified counter rate.
So it will not jump up to 9.28125 like the cast animation did, but in stead jump to 3+1.546875 = 4.546875.
End you've now entered the loop. Ratatata!

When Strafe (or Zeal or Fend) realizes that the current arrow is the last one of the sequence, it will simply play out the animation. So the start of the last arrow still cuts off 50% of the wind-up, but the wind-down will be played. After the wind-down has finished playing, you are finally free to run away from Diablo's Hose!


Hope it was clear enough! If not, well sorry for the wall I guess. :(
 
Last edited:
@Fruit to be honest i didnt fully understand it as i was just quickly skimming through it. Ill read it more thoroughly later when im in front of a computer. Im guessing the jist of it is that its neither before or after, but just somewhere in between; and Strafe and zeal is just special. Thanks for the wall =) i like reading walls of txt lol.

@Albatross ill read it when i get a chance. But seeing how other ppl have already liked ur comment, it really must be pure gold. :p

E: @Fruit i just re-read your post and now i have some questions, if you dont mind answering.

What happens if you have so much fcr - counter high enough - that you skip over the action frame?? Or, in your example above, what happens if the action frame was 8 instead of 7?

On a similar note, you mentioned actions only happen at every 5th frame. What happens if fcr is so high that i reach counter 7 before the 5th frame? Iirc you can reach like 4fpa with 120%ias phaseblade on a werebear; does that mean its effectively the same as 5fpa attacks?

And this is rather nit-picking at the details, but for things like strafe, does the halfing of the counter happen instead of adding the counter or does it half the counter before adding in the same game frame? You say it halfs in 6th and adds in 7th; i just wanted to confirm. :p
 
Last edited:
Edit: (Misunderstood the question at first!)
If the counter would jump from 6 to 8 and thus skipping 7, that's not a problem. If counter ≥ ActionFrame, action is performed.
The only way that the action would be skipped is if the animation ends before the ActionFrame was reached. But there is a hard cap on FCR that prevents this, and I'm not sure you could even reach enough FCR anyway.


Oh no! I see now I completely messed up that sentence.
When I said that "only in the fifth game-frame, something happens", I just meant to clarify that besides the ActionFrame, all other frames are nothing but graphics that you are waiting on. ActionFrame just happened to be the fifth game-frame in this example.
Sorry about that. :p


Expert last question. :cool:
But against the player's favor, it indeed halves it in stead of adding. Whether that was done deliberately or not, I wouldn't know. It certainly wouldn't surprise me if it was on purpose, as it would've been a bit too easy to reach those low 3fpa (and 2fpa) "repeats" with Bows.
 
Last edited:
@Fruit. gotcha. Thanks for the explanations. =D

Now then taking a a step back and bringing back the strafe vs GA comparison, - and combining wind-up, the action, and the wind-down as just one big chunk, I assume the 5/3/3/3/7 means it takes 5 frames for the 1st arrow, 3 frames for the middle arrows and 7 frames for the last arrow - and not that it takes that many frames in between the arrows. For my strafe vs GA comparison, that makes the calculation simple enough.

Andddd even simpler is reading what other ppl have already calculated. Thanks to @onderduiker for the calculations and @Albatross for the link.

Depending on chance to hit, attack rate and minimum arrows, Strafe can still outperform Guided Arrow against single targets, despite its next delay and damage penalty.

Against single targets, Strafe has maximum 5 frame attack rate with 50 EIAS at levels 8-11 (3 out of 4 arrows can hit in 15 frames) and levels 28-31 (5 out of 9 arrows can hit in 25 frames), and with 58 EIAS at levels 1-3 (2 arrows can hit in 10 frames). Guided Arrow has 9 frame attack rate with 50 EIAS, 8 frame with 56 EIAS and maximum 7 frame with 75 EIAS.

Consequently, at maximum attack rate Strafe applies modifiers like Crushing Blow faster than maximum attack rate GA when chance to hit is >71%, while it is faster than 8 frame GA with >62% chance to hit. In terms of weapon damage per second, it is better than 9 frame GA with >74% chance to hit, and better than 8 frame GA with >83% chance to hit; however, it is slightly worse than 7 frame GA even with 95% chance to hit.
...

My main concern was that GA would be too poor of a choice compared to strafe for Diablo. Strafe IS better with proccing Amp and applying CB and thus should be faster; but the difference seems marginal. I also like the fact that I can completely opt out of any AR from skills, dex and items when using GA and invest the extra points elsewhere.

Of course, this is all assuming that I stick by the original theme of bowazon all the way through till lvl 99 at the cost of efficiency, and not have a melee setup on switch for Diablo.


Thanks again @Fruit for the detailed explanations; I learned smth new about the game. And thanks to @Albatross for the link that had exactly the information I was after. :D

E: striked out 'incorrect' information.

The calculations by @onderduiker was based on 2fpa strafe bug, which happened due to server-side/client-side desync. 5.4 frame avg strafe is the best achievable with 5/37 breakpoint in SP, at exactly 7 arrows (skill level 20~23). E: edited this out. strafe bug apparently does exist in SP; see @onderduiker's reply below.

GMB Faith reaches 5/3/7 strafe with 20ias + 12Fana.
MB Fatih reaches 5/3/7 strafe with 0ias + 12Fana.
Diamond Bow/Shadow Bow Fatih reaches 5/3/7 strafe with 10ias + 12Fana.

All things considered, I will opt for 45ias+14Fana on MB for 7fpa GA. (E: not 12 Fana. it's 14 and up.)
 
Last edited:
All things considered, I will opt for 45ias+12Fana on MB for 7fpa GA.
I've been waiting for days to say this: just use Titans on switch and CS him to death...


*hides*
 
@crawlingdeadman tell me about it... titans, griffons. Lit facets... i found them all with this char.

I see my char clear CS at the speed she does, and im oh so very tempted to respec to java. Then i see that there hasnt been any bowas on 99er list, and im determined to stick by as a bowa all over again. :confused:
 
The calculations by @onderduiker was based on 2fpa strafe bug, which happened due to server-side/client-side desync. 5.4 frame avg strafe is the best achievable with 5/37 breakpoint in SP, at exactly 7 arrows (skill level 20~23).
Desync between client (what's displayed) and server (what's actually happening) also applies in Single Player: I've always played and tested in SP (almost) exclusively, and I did so for Strafe, so the 2-frame client-side bug also occurs in SP.

All things considered, I will opt for 45ias+12Fana on MB for 7fpa GA.
According to the Attack Speed Calculator, 50 IAS (technically only 48) is required for 7-frame GA for a Faith MB with level 12 Fanaticism.
 
@onderduiker the man himself! =D

Thanks for pointing out that strafe bug exists in SP too. Would never thought of server/client desync in a single player...:confused:

So the strafe bug still applies to SP; does that mean I can move after the displayed animation ends? Or, is this the strafe-lock ppl are talking about, where I can't move until the server-side strafe ends even though the client-side strafe already did?

iirc I probably meant to say 45ias with 14/15 fana for the 7fpa GA with MB. Thanks for the correction.

For ppl looking for tldr; go CS on switch. It'll make life easier. If you are stubborn like me and want to stick with a bow, strafe > GA 99% of the time, even against single targets.

At 7 frame GA vs 5/3/7 frame strafe, GA does slightly more damage than strafe; but strafe has more chances to proc CB. Since you also have the option of higher damaging bows like GMB that can hit the same breakpoints for strafe, 5/3/7 frame strafe actually might come out on top on more realistic setups.

Only in this very specific situation where I am targeting just the Diablo, GA will provide the necessary safety maneuvering around Diablo's bone prison and lightning hose, and allow easy time hitting him with low dex/AR.
 
So the strafe bug still applies to SP; does that mean I can move after the displayed animation ends? Or, is this the strafe-lock ppl are talking about, where I can't move until the server-side strafe ends even though the client-side strafe already did?
If the displayed (client) Strafe sequence is shorter than the actual (server) sequence, then you cannot actually move until the actual sequence ends: if you try, then once the displayed sequence ends you simply walk or run in place until it actually ends, then you can move freely again.
 
I was just fiddling around with some numbers.

I'll just tag it along here for anyone curious, just as a continuation of my decision to use Multi/GA over strafe.

This below is a - 10/0/-10 Bow comparison at various ias/fpa (for regular attacks/multi shot/guided arrow)
Rich (BB code):
Necessary ias for each breakpoint with 12~15 Fanaticism :

10 BOW (GMB)
    FANA 12 13 14 15
FPA        
11        0  0  0  0
10        8  7  6  6
9        24 23 22 22
8        50 48 46 46
7        99 95 92 92

0 BOW (SHADOW)
    FANA 12 13 14 15
FPA        
10        0  0  0  0
9        11 10  9  9
8        32 30 29 29
7        70 68 65 65

-10 BOW (MB)
    FANA 12 13 14 15
FPA        
9         0  0  0  0
8        18 16 15 15
7        48 46 44 44


Bow avg damage :
  GMB    - 43
  Shadow - 37
  MB     - 33.5


Example of simple damage calculation used for comparison : 
  10fpa GMB, 9fpa Shadow bow, 8fpa MB.
  10 * 9 * 8 frames = 720 frames.
  GMB    = 72 attacks => 43 * 72   = 3096
  Shadow = 80 attacks => 37 * 80   = 2960
  MB     = 90 attacks => 33.5 * 90 = 3015
  => GMB > MB > Shadow


Bow comparison at various ias :
15ias - 10fpa GMB > 8fpa MB with 14/15 Fana > 9fpa Shadow > 9fpa MB with 12/13 Fana
20ias - 10fpa GMB > 8fpa MB > 9fpa Shadow
25ias -
30ias - 9fpa GMB > 8fpa Shadow with 13/14/15 Fana > 8fpa MB > 9fpa Shadow with 12 Fana
35ias - 9fpa GMB > 8fpa Shadow > 8fpa MB
40ias -
45ias - 7fpa MB with 14/15 Fana > 9fpa GMB > 8fpa Shadow > 8fpa MB with 12/13 Fana
     * 7fpa MB max
     * at any higher ias, GMB/Shadow will always be better.
50ias - 8fpa GMB > 7fpa MB > 8fpa Shadow
55ias -
60ias -
65ias - 8fpa GMB > 7fpa Shadow with 14/15 Fana > 7fpa MB > 8fpa Shadow with 12/13 Fana
70ias - 8fpa GMB > 7fpa Shadow > 7fpa MB
     * 7fpa Shadow max
     * at any higher ias, GMB will always be better.
75ias -
80ias -
85ias -
90ias -
95ias - 7fpa GMB with 13/14/15 Fana > 7fpa GMB with 12 Fana > 7fpa Shadow > 7fpa MB
100ias - 7fpa GMB > 7fpa Shadow > 7fpa MB


Conclusion :
Disregarding CB/Proc and ability to move between shots;
GMB is the best dps.
At exactly 45ias and only then; MB with 14/15 beats GMB by a very tiny margin.


tldr;
- GMB dominates at almost every ias breakpoints.
- Shadow peaks at 30ias with 13/14/15 Fana. (still behind GMB)
- MB peaks at 45ias with 14/15 Fana.


p.s. Despite the calculations, I wouldn't want to stick with 10/9fpa.
I'd recommend as below for 8/7fpa.
15~25 ias = 8fpa MB
30~40 ias = 8fpa Shadow
45    ias = 7fpa MB
50~   ias = 8fpa GMB

E: 537 strafe
Mb 12-15 fana 0ias
Shadow 12-15 10ias
Gmb 12-15 20 ias
 
Last edited:
PurePremium
Estimated market value
Low
High