精華區beta CGI-Game 關於我們 聯絡資訊
接下來探討為何 78 重戰打不壞一個大頂。 實際上如果拿 SpeedSim 跑模擬(攻擊方科技 9, 8, 9,防守方 6, 6, 7),會得到類 似這樣的結果: The attacking fleet fires a total of 78 times with the power of 22230 upon the defender. The defender's shields absorb 16000 damage points 大頂只吸收到帳面值的 16000 點傷害,剩下的傷害都結結實實地打在結構上,導致大 頂一到兩回合就爆了。怎麼回事?原作的 log 裡大頂的護盾不是吸收了超多傷害嗎? 要得到這樣的結果,請把 SpeedSim 右側的 "Use old shield calculation" 打勾,再 模擬一次就會得到想要的結果: The attacking fleet fires a total of 78 times with the power of 22230 upon the defender. The defender's shields absorb 22230 damage points 這樣子得到的結果就跟原作的相同了(數字不同是因為少了四台大運)。 由此可以知道,假設 SpeedSim 的戰鬥規則是可靠的,則模擬(至少和原作同 server 時)時應該開啟 "Use old shield calculation" 才會得到較正確的結果。 那麼 old shield calculation 究竟做了什麼事呢?這實在很難猜,如果把上面的模擬 條件再修改一下,增加重戰的數量,一直到 100 重戰時大頂的護盾都還能完全吸收( 射出 28500 吸收 28500),但 101 台重戰時就擋不住了(射出 28785 吸收 28500) 。究竟怎麼回事? 既然難猜,只好找出 SpeedSim 的 source code 來研究,最後發現使用 old shield 時,當目標護盾仍然存在(還沒被耗光)時,有效的攻擊(大於等於目標護盾全滿值 1%)會被無條件捨去到目標護盾全滿值的整數 %,以上列重戰為例,重戰攻擊力 285 約為大頂全滿護盾的 285 / 16000 =~ 1.78%,用了 old shield 後會被捨去成 1% = 160,所以 78 台的總攻擊力是 160 * 78 = 12480 <= 16000,會被全部吸收,因此實 際攻擊力(真正打在結構上的攻擊)是零,依照傷害統計的方式,會顯示為帳面上的 285 * 78 = 22230 攻擊力被全部吸收(射出 22230 吸收 22230)。 同理,100 台重戰的攻擊力是 160 * 100 = 16000 <= 16000,剛好把護盾耗光,故仍 然被顯示為全部吸收(射出 285 * 100 = 28500,吸收 28500)。 但 101 台時,前面 100 台已經把大頂的護盾消耗完,所以第 101 台的攻擊不會被捨 去,285 的攻擊完全打在結構上,故總計 285 * 101 = 28785 的帳面傷害實際只打到 285,所以統計顯示為吸收 28785 - 285 = 28500(射出 28785 吸收 28500)。 可以試著再調整參數,同樣是 78 重戰,把攻擊方的武器科技改成 11,這時重戰的攻 擊力是 315,約為 16000 的 315 / 16000 =~ 1.97%,捨去後是 1%,故仍然會被全部 吸收。但增加到武器科技 12 時,重戰的攻擊力是 330,330 / 16000 =~ 2.06%,捨 去得 2%,所以前面的 50 台重戰以 16000 * 2% = 320 的攻擊力將大頂的護盾耗光, 剩下的 28 台就能以全部的帳面攻擊力 330 * 285 = 9240 打中大頂的結構,所以戰鬥 統計時護盾吸收了 (330 * 78 = 25740) - 9240 = 16500 的傷害(射出 25740 吸收 16500)。 由以上實驗,可以得到兩點結論: 1. ogame 的戰鬥計算,至少以原作所在的 server 為例,與 SpeedSim 的 "Use old shield calculation" 結果相符,故模擬時應該開啟這個選項。 2. 若 1 為真,則戰鬥時目標單位的護盾還沒被打穿之前,攻擊單位的攻擊力會被捨去 成目標單位護盾全滿值的整數 %,而這些憑空「消失」的攻擊力,加上上一篇提到 不滿 1% 會被被忽略的攻擊力都會被視為被目標護盾所吸收而加在每一回合的射擊 結果當中,所以射擊結果的護盾吸收值有可能會出現遠高過目標護盾帳面值的數字。 -- Windows, the aeonian nightmare. These are the jobs of the company: Microsoft. It's continuing mission: To make more money. To make worse applications and worse operating systems. To boldly do what no one has done before. -- MichaelHsin, 2000 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.55
uafone:推 精華區的那篇最好別蓋這些東西又被推翻一樣了嗎 囧 03/10 22:20
chibimin:推 恍然大悟啊 原來模擬失真的原因之一就是這個 03/10 22:23
※ 編輯: MichaelHsin 來自: 140.112.30.55 (03/10 22:37)
shyangs:推薦這兩篇可收錄精華區 03/10 23:09
Freak1033:這大概也是為什麼輕重戰打不沉死星的原因吧. @_@ 03/10 23:16
u06xu6fu6:推這兩篇很值得收精華區 03/10 23:26
uyko:Orz 03/11 00:08
BcBc:好文阿!! 03/11 01:26
unlock:推一個 03/11 01:41
kingzzz:推 06/15 02:43