朝までFreeciv!

【スポンサー広告】 スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

【日記】 チートAIをさらに強化

この前オンライン対戦で対AI戦が終わったあとに、チートAIがもっと強くなって欲しいという感想が出ていました。
これに興味があったのでチートAIのルールに記述追加して強くしてみました。
AIを強くする、といっても思考はプログラムをいじらなきゃいけないので、ルールセットの改造でやれる範囲です。つまり、チートAIにボーナスを追加する形態です。

参考: Editing rulesets


※注意

このページに書いてある改造のやり方が理解できない人は改造に手を出さないでください。
改造の過程で当然知っておくべき事柄については記述を省略してあります。




改造方法

これより後のルールをファイルに追加記述する。
追加記述するファイルは、
  1. defaultルールセット中の ai_effects.ruleset ファイル
    • 同じ項目を上書きしない限り、どのルールセットを使っても強化AIになってしまう
  2. defaultルールセットフォルダをコピーして、その中の effects.ruleset ファイル
    • この場合はコピーしたルールセットを選択してゲームをやったときに、cheat AIを選択した場合のみ強化AIになる

これのどちらかを選ぶ。
毎回強化チートAIを使うなら前者の方法を、チートAIの強さをゲームごとに強化チートと普通チートとで入れ替えたいなら後者の方法を。

ファイルの中に追加するルールは次のとおり。
コピペして挿入して保存。Freecivを再起動でおk。



; City Capital has defense bouns (+100%)
[effect_ai_cheat_defense]
name = "Defend_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"Building", "Palace", "City"
"UnitClass", "Land", "Local"
}

[effect_ai_cheat_defense_0]
name = "Defend_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"Building", "Palace", "City"
"UnitClass", "Sea", "Local"
}

[effect_ai_cheat_defense_1]
name = "Defend_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"Building", "Palace", "City"
"UnitClass", "Trireme", "Local"
}

[effect_ai_cheat_defense_2]
name = "Defend_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"Building", "Palace", "City"
"UnitClass", "Air", "Local"
}

[effect_ai_cheat_defense_3]
name = "Defend_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"Building", "Palace", "City"
"UnitClass", "Missile", "Local"
}

; City Capital gets food bouns (+2 points)
[effect_ai_cheat_food]
name = "Output_Add_Tile"
value = 2
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"Building", "Palace", "City"
"CityTile", "Center", "Local"
"OutputType", "Food", "Local"
}

; Cheat AI City has shield bouns (+100%)
[effect_ai_cheat_shield]
name = "Output_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"OutputType", "Shield", "Local"
}

; Cheat AI City has trade bouns (+100%)
[effect_ai_cheat_trade]
name = "Output_Bonus"
value = 100
reqs =
{ "type", "name", "range"
"AI", "Cheating", "Player"
"OutputType", "Trade", "Local"
}




改造内容

もともと標準のルールセット内への記述によって定められている、チートAIに付加されているボーナスは次のとおり。
  • 科学出力 +40%
  • さらに1人の市民が平静状態になる
  • 生産が原因の公害汚染 -50%
  • 戦闘によるユニットの昇進率 +20%


これに加えて、改造ではcheat AIに対して次の強化がなされている。

  • 首都は、陸軍・空軍・海軍すべてのユニットに対する防御力+100%
    • つまり、首都だけは何も建っていない状態で 100%+100%=200% ・・・二倍の防御力を持つ
    • 城壁(+200%)が建っていれば、100%+100%+200%=400% ・・・四倍の防御力を持つ
      • ↑(※都市駐留ボーナスなどの記述は省略しています)
  • 首都は、都市中心タイルの食料がさらに+2される
    • 専制政治の間はタイル出力3ポイント以上の制限の影響を受ける対象に含まれる
  • すべての都市は、生産が+100%される
    • 基礎生産ポイントと同数が追加としてあるので、宮殿ボーナスとは乗算しない
  • すべての都市は、交易が+100%される
    • 交易路収入と市民交易収入とが合算されたものを元に、さらに+100%入る



すべての都市のシールドにチートボーナスとして+100%追加。
都市部分(専制での草原タイル)の食料は2ポイントである。
cheat-ai-normal.png

首都のシールドは、宮殿ボーナス+75% & チートボーナス+100%である。
AIがリチャードを建てても、生産公害-50%ボーナスを持っているので相殺されている様子。
cheat-ai-capital-shield.png

首都の食料は、都市部分(専制でのシールド草原タイル)の食料が4ポイントとなっている。
首都でガンガン開拓者を作るので初期の領土拡張が普通のチートAIよりも早い。しかし途中から開拓者を無駄に抱えすぎて都市サイズ&食料余剰はいつも通りに落ち込む・・・
cheat-ai-capital-food.png

すべての都市の市民タイルからの交易は、+100%される。(下の画像は+50%のケース)
通常チートAIに付与されている科学+40%のボーナスと乗算されるので、科学の進歩が加速する。
しかし序盤は汚職で交易が減るので極端な違いは出ない。非専制以降の時代から普通のチートとの違いが出てくる感じ。
cheat-ai-capital-trade.png



感想

体感として改造チートAIは、通常チートAIの3人チームと同じぐらいの難易度だと思った。
すべての都市の生産力&交易を +100%→+50% に下げると、通常チートAIが2人チームと同じぐらいの難易度っぽい。
AIを強くした場合の方向性としては、複数チーム分の働きを、一人のAIがこなせるようになるというものだと感じた。

全体的な感想としては、とにかく改造AIの都市拡張が早い。内政スピードが上がっている感じ。海外殖民はまずAIに勝てないのではないだろか。
一方戦争の方は元々の思考のためだろうか、無理押しをしてこないので計算して動けば普通のAIと戦う場合と同じ感じでいける。もちろん科学の進歩はAIの方が早くなるだろうから、そのうち技術負けしてしまうが。
首都の防衛力を高めたのは、釣り出しを使うならさほどで防衛力の高さは関係しない・・・はず。

改造チートAIの強さは、私基準だと勝つのが難しいです。立地にもよるけれど、勝率は・・・

上記の方法でさらにAIを強くするなら、生産ボーナスと交易ボーナスとをさらに上方修正でしょうか。
  1. 2013/05/20(月) 20:15:26|
  2. 日記
  3. | トラックバック:0
  4. | コメント:0
<<民族ごとに特徴づけ | ホーム | ユニットの攻め時 ~近世・近代編~>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://freeciv.blog.fc2.com/tb.php/73-9948e393
この記事にトラックバックする(FC2ブログユーザー)
【 このブログの目次 】

プロフィール

指導者

Author:指導者
これはあなたです。このユニットを失うと、ゲームは負けになります。大切にしてね。

つぶやき

最新記事

最新コメント

カテゴリ

月別アーカイブ

最新トラックバック

FC2カウンター

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

QRコード

QR

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。