Pages

3/24/2010

法系dps 公式

終於溫完書了, 可以寫一下自己想寫的東西

有很多人常常會問, 到底法師應該怎樣玩? 加速多少才好? 命中多少才好? 爆擊多少才好? 雖然常常可以很輕易中從你的guildmate得到答案, 但是這些答案真的可信嗎? 今天我來分享一下我自己的研究

先來看一下dps 公式



dps = {[(Spell Hit % / 100) * ((Min Spell Damage + Max Spell Damage) / 2 + Bonus Spell Damage) * (Bonus Spell Crit Damage % / 100) * (Spell Crit % /100)] + [(Spell Hit % / 100) * ((Min Spell Damage + Max Spell Damage) / 2 + Bonus Spell Damage)]} / Spell Cast Time

符號化一點, dps = {h*[(min d(x) + max d(x)/2+ D(x))]*DD(x)P(D(x)) + h*(min d(x) + max d(x)/2+ D(x))} / s
h 是spell hit 命中
d(x) 是一個傷害的隨機變數random variable
D(x) 是額外傷害隨機變數
DD(x) 是爆擊額外傷害隨機變數
s 就是施法時間
很多數字因為我們難以控制, 所以是可以剔除的
再簡約一點,
dps = h* (Dp + d)/s
D 就是爆擊時候的平均傷害
d 就是其他時候的平均傷害
爆擊率會影響p
命中率會影響h
加速會影響s
D跟d 則受法術傷害影響. 在部份天賦職業下, 爆擊平均必然是d的兩倍, 所以可以用D=2d 再去簡化

眾所周知, 最重要的是命中. 打不中的魔法是沒傷害的, 而且後續權利也不多. 雖然是真的有”打不中而發動”的飾品, 但是沒理由本末倒置的放棄命中而換取這個權利的.

由公式可見, 命中以外最重要的就是加速. 雖然看上去h 跟dps是成正比, s 跟dps成反比, 但是只要再看清楚一下spell cast time 公式:
NewCastTime = BaseCastTime / ( 1 + HasteRating / ( RatingConversion * 100 )
由於s 是跟dps成反比的, 因此要用1除s再看清楚一點(take reciprocal)
1/ NewCastTime = ( 1 + HasteRating / ( RatingConversion * 100 )
/ BaseCastTime
1/ NewCastTime = BaseCastTime ( 1 + HasteRating )/ RatingConversion * 100
rating conversion 就是數字轉換. 在不同的級數因為數值的上升, rating conversion都可同. 像在70級的時候就是15.77, 80級時就是32.79. 不過這都不是分析的重點. 把newcast time 放回去公式就會很清楚
dps = h* (Dp + d) BaseCastTime ( 1 + HasteRating )/ RatingConversion * 100
就可以看到 haste rating 其實也是跟dps 成正比! 因此在所有法系來說, 加速都是僅次於命中的數字

那爆擊呢? 這就需要用深一層分析.
每多一個單位的爆擊率p, 可以影響到的數字就是 hD*BaseCastTime ( 1 + HasteRating )/ RatingConversion * 100
每多一個單位的爆擊率haste, 可以影響到的數字就是h* (Dp + d) BaseCastTime/ RatingConversion * 100
看上去是haste 影響比較多一點, 因為他比爆擊率的影響多了一個term.
再把dps公式無關的數字再簡化一下就變成
dps = Ah* (Dp + d)(1+S)
現在的S 就是加速haste, A就是一個常數, 就是後面那一堆BaseCastTime RatingConversion * 100等等的垃圾. 假設D=2d
dps = Ah* (2dp + d)(1+S) = Ahd ( 2p+1) (1+S)

微分一下
d(dps)/dp = Ahd (1+S)
d(dps)/dS = Ahd (2p+1)
根據經濟理論, d(dps)/dp 跟d(dps)/dS 都是邊際dps (marginal dps), 如果要以s跟p去最佳化, 那麼d(dps)/dp跟d(dps)/dS 兩者都要一樣, 否則你可以把更多的數字從低的地方放到更有效率的地方去提高dps
那麼 Ahd (1+S) = Ahd (2p+1) => S = 2p
因此你的加速應該是爆擊的兩倍.

雖然現實上是很多問題的,
例如加速的裝是比較難取得,
加速的附魔不比爆擊的多
這會令到你很難做到加速是爆擊的兩倍
但是這個結果告訴你的是, 加速比爆擊更有效
因此是可以選擇的時候, 你應該盡可能要多一點加速以盡可能迫近s=2p
法師因為天賦跟技能的問題而有過多的爆擊都已經是其次的理由了
還有一點就是加速的後續權利不及爆擊的強
加速幾乎都沒有後續權利
很多天賦權利卻是因為爆擊後而追加的(如爆擊後可以回魔—火法的元素大師)
數學上仍然可以分析這會把你的最優化(optimization) 影響多少
但是這樣分析是不必要的
大家隨心去根據你的天賦技能去調整比例即可
從另一方面想, 為什麼有加速的裝備那麼少? 就是因為加速很強啊

雖然法術能量快要消失了, 但是這裡也可以分析一下. 再微分
d(dps)/dS = Ahd (2p+1)
d(dps)/dd = Ah (2p+1)(1+S)
d(dps)/dS = d(dps)/dd => d = (1+S)
當d 跟S 都是很大的數字的時候, d 大約等於S

這就跟小學的時候大家所遇到的問題一樣: 給你32塊木柵, 請問怎樣可以圍出最大的花圃? 答案就當然是圍成一個正方形. 這裡的問題也是差不多. 這樣一個數字d (1+S): 給你選d跟S, 請問怎樣可以把其最大化? 答案就是均分資源, 令到d 跟S 差不多大小.

那你可能會問, 那需要多少的d 跟S? 我不知道. 但是結論就是告訴你, 你不可以偏重於加速或者法術能量. 如果加入裝備設計的考慮的話, 我仍然會建議你儘可能偏重於加速. 因為大部份裝備都有法術能量的, 加速卻不是每一件裝都有. 考慮到加速就像一個倍數(multiplier), 只要你的法術能量有一定的數值, 把他乘上一個很大的數字可能是沒有正方形那麼有效率, 但是那個數字還是很可觀的

這個分析當然是用了我最熟悉的法師去作主軸分析, 但是實際上全部法系職業都可以使用這個分析方法(framework), 只需要根據技能天賦稍稍調整即可. 大部份的法系職業基本的優先都是

命中>加速>法術能量=爆擊

這也是我練了4隻法系上來只玩一隻都原因. 他們基本上都是一樣的, 只是他們的技能改變了一點而已

參考:
http://www.wowwiki.com/Formulas:Damage_Per_Second
http://www.wowwiki.com/Spell_haste

No comments: