これは、Minecraftのミニゲームに触発されました。ルールは非常に簡単です。走り回ってジャンプし、踏み込んだブロックはすべて消えます。目標は、最後の1つになることです。
ボットは完全なプログラムである必要があります。コマンドライン引数として入力を受け入れる必要があります。入力は「世界」のマップになります。以下に例を示します。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxx xxxxxxxxxxxxxxxxxxxxxxxxxxx
xxx xxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxx x xxxxxxxxxxxxx@xxxxxxxxxxx
xxxxxx1xxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx
xxxxxxxxxxxxxxxxx x x xxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx
xxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxx xxx xx3xxxxxxxxxx
xxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx x
xxxxxxxxxxxxxxxxxxxxxxxxxxx xx
xxxxxxxxxxxxxxxxxxxxxxxxx 2
xxxxxxxxxxxxxxxxxxxxxxx
凡例は次のとおりです。
x: solid block
: empty air
@: your bot
1,2,3,4,5,6,7,8,9,0: other bots
ボットは、動きを整数のペアとして出力する必要があります。例:-1, 2
1ブロック左に移動し、2ブロック下に移動します(座標原点は左上隅にあります)。
現在地から最大4ブロック、マンハッタンの距離まで移動できます。それ以上移動しようとすると、移動は無効になります。エッジを越えて移動すると、代わりにエッジに移動します。無効な移動は無視されます。
ブロックに着地すると削除されます。次のターンに同じブロックに留まると、転倒します。2つのボットが同じターンに同じブロックに着地し、両方が生き残る可能性があります。これが発生した場合、両方のボットは自分だけを認識し、他のボットは認識しません。
永続化のためにファイルを保存する必要がある場合は、ボットの名前を持つフォルダーに保存してください。存在する場合、他のボットの永続データを読み取ることはできません。
マッチコントローラはhttps://paste.ee/p/Xf65dで入手できます。
標準のLinuxまたはOSXインストールで実行できる言語を使用してください。
現在の結果(100ラウンド):
JumpBot 31
LookBot 27
ShyBot 26
Slow Bot 15
KnightBot 2
Moat Builder 0
UpBot 0
Random Bot 0