2013-04-05 75 views
-3

我嘗試尋找戰略遊戲的戰鬥像TRAVIAN或ULTIMA或領主的算法......但每一個程序,我寫的有錯誤計算死去的士兵,這個臨界點的一些例子是:什麼是策略遊戲的戰鬥公式?

  1. 在現實世界中,當100名士兵襲擊1名士兵時,通常100名士兵還活着,1名士兵死亡。戰鬥

數據例如

  • 發現獲獎者是:

    attacker: 
    Soldiers | defending-power | attacking-power | Soldier Count | 
    ---------|-----------------|-----------------|---------------| 
    A  | 20    | 45    | 5 
    B  | 22    | 77    | 4 
    C  | 41    | 32    | 7 
    D  | 38    | 54    | 6 
    E  | 27    | 41    | 6 
    
    defender: 
    Soldiers | defending-power | attacking-power | Soldier Count | 
    ---------|-----------------|-----------------|---------------| 
    A  | 44    | 12    | 6 
    B  | 59    | 18    | 6 
    C  | 73    | 40    | 7 
    D  | 26    | 61    | 2 
    E  | 7    | 24    | 4 
    
  • 回答

    1

    我會建議雙方球員的士兵數如下的exponential decay狀的曲線,依賴於對方的士兵數。在任何時候,玩家X的士兵數量正在減少(Y的士兵)*(Y的進攻能力)/(Y的防守力量),對於Y的士兵數量也是一樣。

    如果兩名球員的優勢相似,那麼雙方的戰士數量就會像曲線一樣呈指數衰減下降,但如果一名球員的實力大大超過另一名球員的實力,那麼對方的士兵數量將會出現線性下降時間。 (是的,將戰士數量視爲浮點數,直到戰鬥結束。)

    獲取算法以匹配數據將是確定您運行計算的頻率的一個過程(基本上,您將該因子乘以多大) ,確定你是同時跑雙方還是先減少另一方的士兵數量,最後是否四捨五入,以及攻擊力/防禦力部分是否像一個人一樣簡單,或者是否由於獲得優勢,您的收益會減少或失控。