Minimum Game

このゲームの本質がなんであるかを考える上でどこまで削れるかを考えるのも面白い。RemoveBit, Crack, Float, Jump, Reverseの5つだけでもJumpの距離制限をなしにしたら遊べるんじゃないかって気がする。

C, J, F, RB, Rで各々5ビット。機械で読み切れるサイズという気がするがまあ自分で考えよう。まず、先手がCに追いたとすると後手はJに置かざるを得ない。CとJでループを作られるから。C1, J2, F, RB, R。先手はとりあえずRBかなという気がする。Rを取る意義は見いだせないし、Fを取られても少なくとも一周目に起こることはRBをスキップしてRをコピーしてやっぱりRBという流れ。C1 J2 F RB1 R。後手、あ、さっきの先手の考えは間違いだった。Fが前に動く可能性を忘れていた。前に戻ってJをコピーするとまたFにジャンプして、あ、後手勝ちだ。いや違う、先手がFに重ねて置くんだな。うむ。わからなくなってきたけどC1 J2 F21 RB1 Rで。ここまでで盤面は決まったのか。残りは空いているところに埋めて行くだけでRを避けている以上どういう順番でも結果に差がない。C12 J21 F21 RB12 R12。

さて、実行フェーズ。まずは双方Cを発動して6:6。次にJでFに飛ぶ。後手はこれを発動してJの手前に入れる。JをコピーしてPCがJに移動、む、今いるカードにジャンプしたときは次のビットに処理が移るのか再び最初からなのかどっちだ。最初からだということにする。そうすると再び後手のFの番。RBの前に移動してRBを発動、RBの先手ビットを削除。C12 J21 F21 RB2 R12。先手はFをRの手前に入れることでRBをスキップ。しかしRをコピーしてしまうのでやはり次のターンで後手のRBが発動。ここでFの先手ビットを削除。C12 J21 RB2 F2 R12。次のJでFにジャンプして発動しない。次はRBで、これでCの先手ビットを削除。もう先手に勝ち目はない。

今いるカードにジャンプした場合に最初からにならないとしよう。C12 F2>1 J21 RB12 R12で先手の手番。そうすると先手がRBを2回発動できてしまうのでそもそもその手前の後手がFを発動するところが間違いということになるな。まあ続けるとFがRBの後ろに入って2回RBでC12 J21 F21 RB1> R1、リバースしてまたRBでFの後手ビットを削除してFがRBの手前に移動してCの後手ビットを削除、で後手終了だな。

つまり後手はFを発動しない。先手は発動することにメリットがない。RBに処理が移って先手が後手のビットを削除一周してきて次はCのビットを削除。ふむ先手勝ち。

うーん。「現在PCのある位置へのジャンプ」の扱いがどうなるのかきちんと決める必要があるな。次のビットに処理が移るのが自然かと思うが。とりあえず。それとビットを減らしたらどうなるかも考えてみよう。