不知不覺,已經進入第三篇文章了...我的算法跟上兩篇大大些許不同
供給大家參考
我只能說...這個遊戲的算法真的很奇怪,
除了第一次攻擊顯示傷害後
跟按下good/great/perfect 顯示第二次攻擊後的算法正確之外,
其他完全有誤差
誤差值落差在0.00~0.10之間
希望我發這篇文可以讓高手算出真正的公式
正文開始
本篇測試為格鬥隊, 隊伍如下
http://ppt.cc/vL3w
攻擊力 屬性 打擊數
lv.33 哲普 424 技 5
lv.23 魯夫 661 力 8
lv.19 喬巴 465 力 4
lv.21 香吉士 542 速 4
lv.39 摩奇&利基 463 心 6
lv.40 哲普 529 技 5
打擊數是非常重要的一個環節,打擊數越多影響great/perfect給予的傷害越少
打個比喻,魯夫的打擊數為8, 香吉士為4
若兩人攻擊力一樣的話,按到perfect攻擊會一樣,但按到great的話香吉士會大輸
待會再給個例子
我原本是想要發回復跟攻擊的文章啦..
但回覆太簡單了...全部成員的回復加起來
不管按到good或是great, 回復力都一樣
打個比喻,假設隊伍六個成員包含副隊長的回覆力是600
任何成員不管按到good或是great,回復就是600
我的公式分成三個部分,分為 第一次攻擊、第二次攻擊、加成攻擊
公式一,第一次攻擊:
攻擊力 / 打擊數 x (打擊數-3) x 隊長攻擊倍率 x 插槽 x 剋屬 x chain倍率
- 敵防禦 x (打擊數-3)
首先先拿哲普當比喻, 遇到的對手是15話的惡龍 防禦力50
我的哲普攻擊力424 打擊數為5 攻擊倍率為6.25 插槽是火 為0.5 惡龍火屬性 為0.5
第一次攻擊 chain倍率為1
因此攻擊力為
424 / 5 x (5-3) x 6.25 x 0.5 x 0.5 x 1 - 50 x (5-3) = 165 但遊戲顯示164
接著拿香吉士當比喻
我的香吉士攻擊力 542 打擊數為4 攻擊倍率為6.25 插槽是水 為2 惡龍火屬性 為2
最後一次攻擊 chain倍率為2.5
因此攻擊力為
542 / 4 x (4-1) x 6.25 x 2 x 2 x 2.5 - 50 x (4-1) = 8418.75 遊戲顯示 8419
再加上觀察下來所有的計算
最大的誤差攻擊數只有在6, 但通常都只差0~2, 誤差率都在0.00以下
但沒辦法算到精確的數字很傷心就對了..
公式二,第二次攻擊跑的第一次數字:
第一次攻擊 / (打擊數-3) x miss / good / great / perfect
good多打1下 也就是(打擊數-2)
great多打2下 也就是(打擊數-1)
perfect多打3下 也就是打擊數
這就是為何公式裡打擊數(5-3)的原因
只拿哲普當比喻
第一波攻擊為164
遇到good: 164 / (5-3) x (5-2) = 246
遇到great: 164 / (5-3) x (5-1) = 328
遇到perfect: 164 / (5-3) x (5-0) = 410
這邊算是都是正確的,應該不會有誤差的疑慮
遇到miss有三種狀況, 但攻擊到此為止,沒有公式三的加成
1) 第一波攻擊前按下miss = 第一波攻擊 (打螃蟹存技補血好用)
2) 第一波攻擊瞬間按下miss = good攻擊
3) 過了perfect才按miss = perfect攻擊
* 公式三,加成,最後攻擊的顯示
第二次攻擊 x perfect:1.9 great 1.7 good 1.5
例如哲普的攻擊
good 246 x 1.5 = 369
great 328 x 1.7 = 557
perfect 410 x 1.9 = 779
為什麼打星號呢? 因為我這邊怎麼算都算錯
只能拿出平均值給大家參考
但錯誤率都在10%左右
這個原因我還在尋找,但找不到
若有高手能夠為大家解答,那我這篇也算是有幫上一點忙了
總整理:
公式一雖然錯誤率在0.00以下,但無法抓到精準數字
某神魔的遊戲所有加成後的小數點都是無條件捨去法
所以不會算錯..但這邊讓我很沮喪
無條件進入 無條件捨去 四捨五入法都會碰到..
公式三只能給大約數字,有待其他高手來解題了..
再來要補充
打擊次數的重要性
只能魯夫跟香吉士比較
我們假設他們攻擊力都在500, 遇到的敵人是巴奇, 防禦0
在最後一波chain2.5, 插槽都是自己屬性
根據公式
遇到perfect =
攻擊力 x 隊長攻擊倍率 x 插槽 x 剋屬 x chain倍率 x perfect加成
魯夫 500 x 6.25 x 2 x 1 x 2.5 x 1.9 = 29687.5
香吉士 500 x 6.25 x 2 x 1 x 2.5 x 1.9 = 29687.5
所以遇到perfect 不影響
但遇到great的話
公式
攻擊力 / 打擊數 x (打擊數-3) x 隊長攻擊倍率 x 插槽 x 剋屬 x chain倍率=公式一
公式一 / (打擊數-3) x (打擊數-1) x great加成
魯夫 500 / 8 x 5 x 6.25 x 2 x 1 x 2.5 = 9766 / 5 x 7 x 1.7 = 23243
香吉士 500 / 4 x 1 x 6.25 x 2 x 1 x 2.5 = 3906 / 1 x 3 x 1.7 = 19920
同樣攻擊力 魯夫攻擊次數多, 只落了約22%的攻擊力
但香吉士一差就差了33%的攻擊力
由此可見,打擊次數越高,效果比較好
打螃蟹也是如此阿!!
寫的很多,有點亂
有那裡不懂請留言或站內信
有指教的地方,更不用客氣糾正了
謝謝大家的收看...