Re: [問題] 防禦的計算

看板travian作者 (胖胖 )時間16年前 (2008/06/01 21:02), 編輯推噓40(4002)
留言42則, 41人參與, 最新討論串3/4 (看更多)
我把之前推導的結果整理一下po上來 在下並非理工相關科系的,技術上有錯誤還請專家指正 感激不盡 ================================================================================ 〈前言〉 警告︰本內容純屬學術研究,實用價值極低 想要變強,請多爆肝多買金,或開貓踢唉低〔違法行為〕 閱讀此文章並沒有幫助 也不要噓我orz 必須修過 步騎混攻時的防禦力計算 課程 才能閱讀此篇文章 不然一定看不懂 建議修過 攻擊與搶奪公式 課程 並 有能力用紙筆和計算機算出戰鬥模擬的結果 再行閱讀 ================================================================================ 〈第一章〉投入資源 的公式推導 紅色為主要已知數和變數,黃色為highlight 〔討論中採用攻擊模式討論,並且目標設定為敵我皆全滅〕 攻擊方 防守方 ex ex 劍兵 攻擊65 資源 535 方陣*20 總步防 800 騎防1000 雷法 攻擊90 資源 1090 步兵單位攻擊力=m 〔65〕 「總」步兵防禦力 = A 〔800〕 騎兵單位攻擊力=n ﹝90﹞ 「總」騎兵防禦力 = B 〔1000〕 步兵單位成本= p 〔535〕 騎兵單位成本= q 〔1090〕 單位步攻成本=p/m=C 〔535/65 = 8.23〕 單位騎攻成本=q/n=D 〔1090/90=12.11〕 且知 C恆小於D〔因為遊戲設定騎兵比較快,攻擊力比較昂貴,不然大家都生騎兵就好了...〕 令變數α=步兵攻擊力/總攻擊力 ,α介於0到1之間 則我們知道,交戰時,防守方的總防禦力〔αA+(1-α)B〕 其中忽略城牆和plus等等不影響的計算結果的倍數因子 假設我們要完全破防,我們就必須產生〔αA+(1-α)B〕這麼多的攻擊力 〔其實考慮入其他因子,比如說我想要破防後還存活50%的兵力 用倍數調整一下就好了,不影響α計算結果〕 此時進攻方所付出單位攻擊成本就是〔αC+(1-α)D〕 所以我方的所需總資源投入Y就是 y=〔αA+(1-α)B〕*〔αC+(1-α)D〕,也就是〔總目標攻擊力〕*〔總單位攻擊成本〕 將公式整理可得 y=〔(A-B)α+B〕〔(C-D)α+D〕 =(A-B)(C-D)α^2+.......以下略〔有興趣算出α值的用簡單微積分或 暴力配方法就可以了〕 --- 因為C恆小於D 當A<B時二次函數開口向上 代表y有極小值 但是此時絕對是用α=1,也就是純步兵最划算,為什麼呢? 因為我們已經知道,步兵的攻擊力一定比較便宜 但對方A<B,步兵防禦力還比較弱 那還生騎兵幹嘛? 當A>B時二次函數開口向下 而α在0~1之間 y最低時α不是0就是1,不會是0.5或其他介於其間的數〔自己畫圖比較好懂〕 ------ 結論就這麼樣出來了...orz 在已知對方防禦能力時,要以最少資源生兵破防 以生產純種步兵 或 純騎兵最經濟 哪種比較好?懶得看公式,就用模擬器就對了 ================================================================================ 〈第二章〉進階應用 不過,上述公式可以再加上一個乘數K y= 〔(A-B)α+B〕 * 〔(C-D)α+D〕* K = 我方單位攻擊成本 * 敵方防禦 同時也是 我方需要達到的攻擊力 此時,你就可以考慮進很多因素,並設定戰損目標,來算出來你將需要投入的成本 舉例來說 當對方開防禦plus時K就是1.1 當對方同時又有三級城牆時,K就是1.1*〔1.025〕^3 假如你用攻擊,且希望你的死亡士兵數是1/2時 1/2= 1 得到n=1.59 〔這部份就是死傷公式的的內容,詳見精華區 -------- (n)^(3/2) n為我方攻擊力/敵方防禦力〕 此時K為1.59*1.1*(1.025)^3 代表 1.對方高盧開PLUS防禦 2.城牆等級3 3.進攻方希望將己方死亡控制在1/2 這三個條件下 攻擊力必須是對方防禦力的K=1.59*1.1*(1.025)^3倍 將所需攻擊力算出來,你就可以知道要生多少兵才能達到目標,與需要投入多少資源 這可以將你打綠洲的投入和報酬量化,以利投資評估〔但還是沒有很實用啦...〕 〈小結〉這個公式可以讓我知道以下三個資料 y= 〔(A-B)α+B〕 * 〔(C-D)α+D〕* K (1) * (2) 1.圖形與頂點 => 生產步兵or騎兵破防最划算 2.part(2),輸入對方資料與進攻死亡率等等目標,產生(2)︰ => 必須達到XX攻擊力才能符合我設定的條件 3.y=(1)*(2) => 求出所需的投入總資源 〔搶奪與公式同理可應用,搶奪公式請見CGI-game板精華區〕 〔同樣的公式稍做修正,就可以變成戰鬥損失公式,也可以用戰鬥損失設為目標, 算出所需的攻擊力,但是理想的α值不會改變〕 PS.這個公式用excel寫出來有一定的價值,看有沒有人要做囉 小弟會用,但是寫出來的粗糙無比,看起來像一堆亂碼 大概只有我自己看得懂 看有沒有高手願意開發QQ 〈全文完〉...期末考加油 你END了嗎... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.246.35 ※ 編輯: Thitta 來自: 140.112.246.35 (06/01 21:04) ※ 編輯: Thitta 來自: 140.112.246.35 (06/01 21:05)

06/01 21:06, , 1F
推一個....真神 還有二次函數求極值耶....
06/01 21:06, 1F

06/01 21:12, , 2F
老黑好帥 >///<
06/01 21:12, 2F

06/01 21:13, , 3F
嗯 默默買金幣好了 我全部看不懂 ^^"
06/01 21:13, 3F

06/01 21:17, , 4F
好屌....我也要來做一個 XD
06/01 21:17, 4F

06/01 21:17, , 5F
老實說 我按了end ...
06/01 21:17, 5F

06/01 21:19, , 6F
可以借轉嗎 @@ 回去研究!!
06/01 21:19, 6F

06/01 21:24, , 7F
酷喔~
06/01 21:24, 7F

06/01 21:25, , 8F
看不懂= = 好慘
06/01 21:25, 8F

06/01 21:34, , 9F
快推一下~不然人家以為我們看不懂
06/01 21:34, 9F

06/01 21:35, , 10F
要轉請附上四種資源各500〔誤〕
06/01 21:35, 10F

06/01 21:47, , 11F
快推一下~不然人家以為我們看不懂
06/01 21:47, 11F

06/01 22:06, , 12F
快推一下~不然人家以為我們看不懂 (求EXCEL
06/01 22:06, 12F

06/01 22:19, , 13F
推一下~不然人家以為我們看不懂
06/01 22:19, 13F

06/01 22:27, , 14F
這一篇文章值 1 銀
06/01 22:27, 14F

06/01 22:49, , 15F
哇咧 我推了還是看不懂
06/01 22:49, 15F

06/01 22:52, , 16F
good job
06/01 22:52, 16F

06/01 23:07, , 17F
快推一下~不然人家以為我們看不懂 (抱歉我END了)
06/01 23:07, 17F

06/01 23:25, , 18F
後面那部分寫成excel的話超方便...大勝現在的戰鬥模擬器
06/01 23:25, 18F

06/02 00:32, , 19F
原波好帥
06/02 00:32, 19F

06/02 00:47, , 20F
其實數學不難啊 認真看一下一定可以看懂的
06/02 00:47, 20F

06/02 00:57, , 21F
推 認真文
06/02 00:57, 21F

06/02 01:19, , 22F
好強!
06/02 01:19, 22F

06/02 03:16, , 23F
XDDD
06/02 03:16, 23F

06/02 03:42, , 24F
GJ
06/02 03:42, 24F

06/02 03:45, , 25F
嗯..好文..感覺算的很準
06/02 03:45, 25F

06/02 04:11, , 26F
END 我是數學白癡
06/02 04:11, 26F

06/02 06:53, , 27F
推一個~原諒我真的看不懂
06/02 06:53, 27F

06/02 08:24, , 28F
推一個~原諒我真的看不懂
06/02 08:24, 28F

06/02 09:35, , 29F
GJ!!
06/02 09:35, 29F

06/02 09:48, , 30F
GJ!!
06/02 09:48, 30F

06/02 13:27, , 31F
快推快推 不然人家會以為我看不懂 科科
06/02 13:27, 31F

06/02 13:43, , 32F
喔 原來如此喔 (假裝看得懂)
06/02 13:43, 32F

06/02 14:32, , 33F
快推一下~不然人家以為我們看不懂 (求EXCEL
06/02 14:32, 33F

06/02 15:10, , 34F
快推一下~不然人家以為我們看不懂 (求EXCEL
06/02 15:10, 34F

06/02 15:57, , 35F
快推一下~不然人家以為我們看不懂 (求EXCEL
06/02 15:57, 35F

06/02 16:37, , 36F
快推一下~不然人家以為我們看不懂
06/02 16:37, 36F

06/02 19:49, , 37F
辛苦了!!!!
06/02 19:49, 37F

06/02 21:04, , 38F
推一下~不然人家以為我們看不懂
06/02 21:04, 38F

06/02 22:36, , 39F
快推一下~不然人家以為我們看不懂
06/02 22:36, 39F

06/02 22:57, , 40F
推一下~不然人家以為我們看不懂
06/02 22:57, 40F

06/05 02:27, , 41F
推一下~不然人家以為我會看的懂
06/05 02:27, 41F

06/05 13:37, , 42F
推一下~不然人家以為我們看不懂 (求EXCEL
06/05 13:37, 42F
文章代碼(AID): #18GftiYT (travian)
文章代碼(AID): #18GftiYT (travian)