Jump to content

Welcome to Obsidian Forum Community
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Photo

Thinking about Attack Speed System in Deadfire

Mechanics Attack Speed Recovery

  • Please log in to reply
6 replies to this topic

#1
MaxQuest

MaxQuest

    (8) Warlock

  • Members
  • 1164 posts
  • Deadfire Backer
  • Fig Backer
From what we know, Obsidian are going to make the inner mechanics of Attack Speed system more transparent and intuitive. Plus things like speed, armor and other recovery-affecting stuff will also start influencing reloading_duration. Source:
Spoiler


This made me thinking how exactly could the speed system be improved:
1. the game should clearly communicate all phases of action cycle and stick to the same terminology everywhere.
2. tooltips should specify the correct phase that is getting affected. For example in PoE1, speed tooltip reads "+20% Attack Speed", when in fact it reduces recovery.
3. if the tooltip reads "+20%" then.. it should be +20% (at least in the absense of other effects). And I think this can be achieved even if we don't touch the attack duration. Example:

ELFwZsm.png
Link to spreadsheet.

Pros of this approach:
- player can calculate in mind how much will his attack rate get increased from taking x talent or using y buff.
- reloading weapons are now fully affected by speed, armor and other recovery-affecting effects.
- armor penalty is heavier now, in line with the tooltip values.
- reduced gain snowballing when approaching zero-recovery. But this is compensated by the fact that other speed categories are now as important as AttackSpeedMult, and will have higher impact when pushing for the last mile.
- flexibility. You can easily change recovery_factor without breaking anything; relative speedup will be the same. You can also make attack_duration getting decreased when recovery becomes negative (i.e. remove the hard-cap), without fear of getting to extreme 0 attack-duration.

Formulas:
Spoiler

 
P.S. Few questions regarding terminology:
skNcIiU.png

- how would you name the blue phase? In PoE1 it was named "attack" or "totalAnimation" (if in code). But this also refers to buffing/casting animation and potion consuming.
- how would you name the green part?
- how would you name the yellow phase?: "recovery time" or "recovery duration"? We can't just use the term "recovery", because it will lead to duration <> speed confusion.
Spoiler

Edited by MaxQuest, 24 July 2017 - 08:15 AM.

  • Insidous likes this

#2
Madscientist

Madscientist

    (5) Thaumaturgist

  • Members
  • 470 posts
  • Deadfire Silver Backer
  • Fig Backer
  • Black Isle Bastard!

Hallo MaxQuest

I have 2 questions:

 

- In your formula "speed_modifier = (1 * multiplication of negative effects) / (1 * multiplication of positive effects)"

I assume the value in the brackets is 1 if there is no positive and/or no negative effect.

If there is no effect and you multiply 1 with nothing, you will get problems.

 

- In PoE1 only dex influences everything, all other things influence only recovery or reloading.

Dex increases attack speed by 3% per point.

Does it mean a char with 43 (or more) dex would attack infinitely fast and causes infinite damage?

(33 * 3 = 99; so it reduces the duration of attack/recovery/reload by 99%)

Or does it mean that a char with 100% (33,333...dex) attacks twice as fast? (attack duration is halved)

 

In other words: does "+X% attack speed" mean you do X% more attack in a fixed time or does it mean the duration of an action is reduced by X%?

Whenever I see %, I ask % of what.

 

off topic:

I do long distance running. I almost every context, speed is measured in distance/time (like km/h). Only runners use time/distance (like minutes/km). As a scientist this is driving me crazy sometimes.



#3
MaxQuest

MaxQuest

    (8) Warlock

  • Members
  • 1164 posts
  • Deadfire Backer
  • Fig Backer

- In your formula "speed_modifier = (1 * multiplication of negative effects) / (1 * multiplication of positive effects)"
I assume the value in the brackets is 1 if there is no positive and/or no negative effect.
If there is no effect and you multiply 1 with nothing, you will get problems.

Yeap, it is 1.

Imagine as if there were two internal variables both initiated with a value of 1:
possitiveSpeedEffectsCoef
negativeSpeedEffectsCoef

Now you are affected by a buff that increases your recovery speed by 20%, in this case in code you multiply possitiveSpeedEffectsCoef by 1.20. And if that buff would decrease recovery speed, than negativeSpeedEffectsCoef would get multiplied by 1.20 instead.

Now guess why it is better to have two variables, instead of just one :)


- In PoE1 only dex influences everything, all other things influence only recovery or reloading.
Dex increases attack speed by 3% per point.
Does it mean a char with 43 (or more) dex would attack infinitely fast and causes infinite damage?
(33 * 3 = 99; so it reduces the duration of attack/recovery/reload by 99%)
Or does it mean that a char with 100% (33,333...dex) attacks twice as fast? (attack duration is halved)
 
In other words: does "+X% attack speed" mean you do X% more attack in a fixed time or does it mean the duration of an action is reduced by X%?
Whenever I see %, I ask % of what.

I understand your confusion.

Regarding DEX:
- 2nd variant: you would be attacking twice as fast. I.e. your attack, recovery and reloading durations will be halved.

Regarding "+X% attack speed":
- stuff that states this in their PoE1 tooltip, affects only recovery phase.
- 1st variant: recovery duration can be reduced to zero
 

off topic:
I do long distance running. I almost every context, speed is measured in distance/time (like km/h). Only runners use time/distance (like minutes/km). As a scientist this is driving me crazy sometimes.

I will help you regain sanity  :grin:
km/h - is speed
minutes/km - is not speed. It's pace, also sometimes called tempo.

Edited by MaxQuest, 15 August 2017 - 07:14 AM.


#4
Madscientist

Madscientist

    (5) Thaumaturgist

  • Members
  • 470 posts
  • Deadfire Silver Backer
  • Fig Backer
  • Black Isle Bastard!

Thanks so far.

Two more questions:

 

- With the rule set of POE1, lets assume you have 43,3 dex (attack, recovery and reload half as long) AND you have equipment that would make your recovery time half as long (if dex was zero). Would you have no recovery ( dex + equipment bonus added), 25% recovery (equipment halves the time that is determined by dex) or vice versa 25% (dex halves the time determined by equipment).

 

- In your suggested system, speed modifiers still affect only recovery time. The difference to the old system is: In the old system X% speed meant X% of the base recovery time is cut and in the new system the +X% speed refers to the whole action cycle. Assuming dex still has a similar effect in POE2, how would dex influence the table above?

 

Your new system is more consistent than the old one, but if dex still effects everything (including the duration of the attack itself) while all other things effect only recovery and reload, things may remain complicated.



#5
MaxQuest

MaxQuest

    (8) Warlock

  • Members
  • 1164 posts
  • Deadfire Backer
  • Fig Backer

- With the rule set of POE1, lets assume you have 43,3 dex (attack, recovery and reload half as long) AND you have equipment that would make your recovery time half as long (if dex was zero). Would you have no recovery ( dex + equipment bonus added), 25% recovery (equipment halves the time that is determined by dex) or vice versa 25% (dex halves the time determined by equipment).

You would have: [half as long] attack duration, [quarter as long] recovery and [half as long] reloading duration.
 

- In your suggested system, speed modifiers still affect only recovery time. The difference to the old system is: In the old system X% speed meant X% of the base recovery time is cut and in the new system the +X% speed refers to the whole action cycle.

Not quite)

In PoE1 system:
- "+x% attack speed" stuff affects only recovery duration. Plus we cannot really say if "base recovery duration" or "current recovery duration" are affected, because if target is under the influence of only one such effect then both are true, and if multiple - neither are true (because of the complicated way it is calculated, to the point when there is no longer direct proportion between effects and actual speedUp).

In proposed system:
- "+x% attack speed" generally yes - could be said to affect the whole action cycle, as you can see by [speedUp] column.
..
- although actually it affects only recovery AND reloading. You probably have noticed the trick I do use, e.g: when I calculate the new value for recovery I calculate the duration of green phase, and than compute what the recovery should be to accommodate this result. In such a way attack duration is kept intact just like in PoE1. But the end values of action cycle are proportional to the product of current speed effects.

Spoiler

 

Assuming dex still has a similar effect in POE2, how would dex influence the table above?

Assuming DEX is computed as it is in PoE1, and taking your example from above, it would be:
- POE1: [half as long] attack duration, [quarter as long] recovery and [half as long] reloading duration.
- Prop: [half as long] attack duration, [quarter as long] recovery and [quarter as long] reloading duration.

 

Your new system is more consistent than the old one, but if dex still effects everything (including the duration of the attack itself) while all other things effect only recovery and reload, things may remain complicated.

Tbh, I like that DEX does affect all phases. Still thinking how it would be better to apply it though. At the end, multiplicatively; or make it directly affect the speed modifier (as one of positive or negative effects).

In any case, I think it would make sense to adjust the DEX effect when it's value is less than 10, specifically:
PoE1:
20 DEX => 1/1.30 = 0.769
18 DEX => 1/1.24 = 0.806
15 DEX => 1/1.15 = 0.869
10 DEX => 1/1.00 = 1
 5 DEX => 1/0.85 = 1.176
 2 DEX => 1/0.76 = 1.315
 0 DEX => 1/0.70 = 1.428

Proposed:
20 DEX => 1/1.30 = 0.769
18 DEX => 1/1.24 = 0.806
15 DEX => 1/1.15 = 0.869
10 DEX => 1/1.00 = 1
 5 DEX => 1.15/1 = 1.15
 2 DEX => 1.24/1 = 1.24
 0 DEX => 1.30/1 = 1.30


In this case something like Gauntlets of Swift Action would exactly compensate for the malus from having 5 DEX in comparison to having 10.


Edited by MaxQuest, 17 August 2017 - 07:18 AM.


#6
Madscientist

Madscientist

    (5) Thaumaturgist

  • Members
  • 470 posts
  • Deadfire Silver Backer
  • Fig Backer
  • Black Isle Bastard!

Thanks again

 

So with your new system it is still possible to get zero recovery (and even zero reloading time in theory), but it is harder to achieve than in the old system.

 

In both systems each point of dex will always have the same usefulness. It speeds up your action cycle by 3%. If you have reduced the recovery time to zero, your action cycle consists only of the attack itself.



#7
MaxQuest

MaxQuest

    (8) Warlock

  • Members
  • 1164 posts
  • Deadfire Backer
  • Fig Backer

So with your new system it is still possible to get zero recovery (and even zero reloading time in theory), but it is harder to achieve than in the old system.

- yeap, it's possible to achieve zero recovery
- no, you can't achieve zero reloading. I would expect that stacking all reloading decreasing stuff would decrease it by x4-x6 at most.
- yeap, it's harder to achieve zero recovery (especially when using single weapon); on the other hand there will be more effect variants to achieve it as effects from other categories than AttackSpeedMult become as important.
- how hard or easy is to achieve zero recovery can be adjusted by modifying recovery_factor value.

In both systems each point of dex will always have the same usefulness. It speeds up your action cycle by 3%. If you have reduced the recovery time to zero, your action cycle consists only of the attack itself.

Generally - yes.





Also tagged with one or more of these keywords: Mechanics, Attack Speed, Recovery

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users