World-of-Warcraft-Classic
魔獸攻擊速度計算
閱讀魔獸世界的攻擊速度計算我注意到攻擊速度的公式是:
Attack_speed = “目前攻擊速度” / ((“百分比增加或減少” / 100) + 1 )
因此,如果使用速度為 1.8 的武器並啟動 40% 的攻擊速度增益,我們將擁有:
Attack_speed = 1.8 / ( (40 / 100) + 1 ) = 1.2857
所以我只是想知道為什麼公式中有+1。從邏輯上講,我會假設一個人會這樣計算攻擊速度:
Attack_speed = 1.8 - (1.8 * (40 / 100)) = 1.08
這只是從 1.8 中減去 1.8 的 40%。這只是設計使然還是有一些邏輯?
為什麼使用那個公式?
它確保結果在所有情況下都是合理的,無論你的攻擊速度加成有多大,並且不需要限制可能的攻擊速度加成。
考慮你提出的公式 -
"current attack speed" - ("current attack speed" * ("attack speed bonus" / 100))
- 攻擊速度加成 100%(評論中歸功於 Studoku):1.8 - (1.8 * (100 / 100)) = 1.8 - (1.8 * 1) = 1.8 - 1.8 = 0
實際上,攻擊速度為 0 意味著什麼?您希望以這種攻擊速度每秒攻擊多少次?
任何超過 100% 的加成都會出現類似的問題,此時你的攻擊速度為負數。那意味著什麼?
為什麼包括+1?
它避免了在某些情況下不正確的——甚至是未知的——結果(即特定攻擊速度的增加)。考慮以下兩個範例,而
+ 1
公式中沒有使用。0% 攻擊速度加成:
1.8 / (0 / 100) = 1.8 / 0 = ???
攻擊速度加成 100%:
1.8 / (100 / 100) = 1.8 / 1 = 1.8