Rustで簡易オセロを作った その1

まえがき

最近(2021年4月以降)Rustというプログラミング言語に興味があっていろいろ調べていたのですが,せっかくなので片手間に遊べるゲームでも作ろうということで,オセロ(リバーシ)を作りました.

GitHubへのリンクはこちら

自分で遊ぶには

ターミナルで動くアプリケーションです.

Rustがインストールされている(もしくは追加インストールに抵抗がない)場合は,上のリンク先のGitHubのリポジトリをダウンロードしてcargo runするのが一番手っ取り早い方法です.

もしくは,上のリンク先の右のサイドバーのReleasesのところから,自分のOSにあったzipファイルをダウンロードして解凍し,releaseフォルダ内のsimple-reversi(Windowsの場合は.exeがつく)を実行する方法もあります(たぶんセキュリティ上の警告が出ますが無視します).

遊び方

実行するとまず

のような画面が出ます.盤面サイズなど,ルールを設定するため,こちらからいろいろと入力していきます.

ルール設定が終わりました.するとこのように盤面が表示されます.

今回は後攻にしたので先にコンピュータが操作します.

コンピュータが#を置いて,自分の番が回ってきました.このオセロでは,置く場所を2つの数字で指定します.盤面の左に書いてあるのが行番号,上に書いてあるのが列番号で,行番号,列番号の順に入力します.さきほどコンピュータが置いたのは行番号3,列番号4のマスということになります.

今回は行番号5,列番号3のところに置いてみます.

置かれました.このあとまたコンピュータが自動的に駒を置き,また自分が場所を指定して駒を置き,という風に進んで行きます.

置けない箇所に置こうとすると,

のように怒られます.

ゲームが進んで行くと,置ける場所が多すぎて把握できない,どこに置けるのか分からないというような場合があると思いますが,そのようなときは行番号を入れる代わりに9(この数字は盤面のサイズによって変わります)を入れるとヒントが出ます.

ヒントはこのように+印で表示されます.

ゲームが終わると,

のように結果が表示されます.ゲームの途中でも,0を入力し,確認メッセージに対してyを入力すると,

のようにゲームを中断することができます.

プログラムの中身

プログラムの中身については後日追記します.