2
KOTH:ヒットアンドサンク
前書き 5回目のKOTHでは、よく知られているBattleshipに基づいたいくつかの工夫を加えたチャレンジを紹介します。指揮する艦船は1つだけで、その種類は5つの「伝統的な」クラスから選択できますが、移動を含め、各ターンで複数のアクションを実行できます。これはFFA(Free For All)としてプレイされ、あなたの目標は最後の船に立つことです。 原理 ゲームはターンベースです。ゲームの開始時に、船のクラスを選択する必要があります。その後、各ターンで、プレイヤーは自分の船に応じていくつかのアクションを実行できます。 ゲームは2Dグリッド(X、Y)で行われ、その側はこのように定義され X = 30 + numberOfPlayer Y = 30 + numberOfPlayer ます。各船の開始位置はランダムです。 プレイ順は毎ターンランダム化され、「キュー」での自分の位置もプレイヤーの数もわかりません。ゲームは100ターン、または1隻の船が生き残るまで続きます。 敵の船にぶつかったり、ぶつかったりするたびに、ポイントを獲得したり失ったりします。最高スコアのプレイヤーが勝ちます。賞金は勝者に授与されます(参加者の数に応じた値)。 コントローラはコマンド引数を介して入力を提供し、プログラムは標準出力を介して出力する必要があります。 構文 最初のターン プログラムは引数なしで1回呼び出されます。船を選択するには、1〜5の整数を含める必要があります。 1:駆逐艦[長さ:2、移動/ターン:3、ショット/ターン:1、射程:9、地雷:4] スキル:自由船の回転(クールダウンなし) 2:潜水艦[長さ:3、移動/ターン:2、ショット/ターン:1、範囲:5、地雷:4] スキル:プランジ/サーフェス(出力を参照)。水中では、「移動」アクションのみを使用でき、スキャンでのみ表示できます。あなたはショットでヒットすることはできませんが、地雷からダメージを受けることができます。 3:巡洋艦[長さ:3、移動/ターン:1、ショット/ターン:2、射程:9、地雷:2] スキル:修理可能(出力を参照) 4:戦艦[長さ:4、移動/ターン:1、ショット/ターン:3、範囲:7、地雷:1] スキル:シールド可能(出力を参照) 5:キャリア[長さ:5、移動/ターン:1、ショット/ターン:1、範囲:7、地雷:3] スキル:ショットはターゲットにAOE(領域の範囲)ダメージを与えます(1範囲のスプラッシュダメージ)。ターゲットがショットでヒットした場合、この船の最大2つのセルも損傷を受けます。 ターン 入力 プログラムが呼び出されるたびに、次の形式の引数を受け取ります。 Round;YourPlayerId;X,Y,Direction;Hull;Moves,Shots,Mines,Cooldown;Hits,Sunken,Damage;Underwater,Shield,Scan;Map ラウンドは1から始まります。 入力例 1;8;1,12,0;111;1,2,2,0;0,0,0;0,0,0;UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUXXXX.......UUUUUUUUXXXX.......UUUUUUUUXXXX.......UUUUUUUUXXXX.......UUUUUUUUXXXX.......UUUUUUUUXXXX.O.....UUUUUUUUXXXX.O.....UUUUUUUUXXXX.O.....UUUUUUUUXXXX.......UUUUUUUUXXXX.......UUUUUUUUXXXX.......UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU ここでは、それは第1ラウンドであり、プレイヤー8です。 あなたの船は(X = 1、Y = 12)に位置し、方向は上(0 =上、1 =右、2 =下、3 …