2015年3月24日、その日は某社の開発合宿の日でした。場所は強羅温泉の某保養施設。
強羅までは新宿から箱根湯本駅まで小田急ロマンスカーに乗って、箱根湯本駅からは箱根登山鉄道に乗って強羅まで行きます。
温泉付きの2泊3日の開発合宿、成果はともかく我々は開発漬けの3日間を終え帰途につくのでした。
帰りのロマンスカーの中で誰かがトランプを出します。カードゲームが始まります。
さて、ここで何のゲームをするかが問題です。中にはカードゲームをあまり知らないメンバーもいます。
ルールが簡単で人数の制限も少ないゲーム、そう、大富豪がはじまりました。
大富豪にはいろいろなローカルルールがありますがルールを知らないメンバーもいたので、もっともシンプルなルールでスタート。
そのうちなれてくると、リバースというルールがあるよ、階段はどうする?、革命は、などとさまざまなルールが追加されていきます。
大富豪は誰でも解るシンプルなルールとオプショナルなルールの組合せでバリエーションにとんだ、誰でも楽しめる大衆的なゲームでした。
その後、新宿に着いた我々は、打ち上げにと酒場に入っていきます。
そこでも、今度はニムトというゲームに講じます。
ニムトはほとんどメンバーがルールを知らない中、すぐに始めることができました。
このようにカードゲームには誰でもすぐ理解できて飽きのこない優秀なゲームが数多くあります。
酒場の店員に店でカードゲームをしないでくれと怒らせた我々はこれらのゲームをプログラミングするにはどうしたらよいかという話に花を咲かせました。
カードゲームは状態と状態を遷移させるためのいくつかのルールの組み合わせで表現できるはずです。
そのようにカードゲームのルールを表現しようとして作られたのがこのgohraというプログラムです。
このプロジェクトはまだ作業中です。まずは大富豪が表現できるようにつくろうとしています。
ゆくゆくは私の大好きなゲーム、麻雀を表現できるようになったらすばらしいなと思っています。