世の中は聖夜などといってクリスマスを満喫している夜、コミケを控えた私はひたすらコミケの準備で徹夜をしていました。ええ、もちろんまだ準備は終了していません。いつものことです(泣)
ちょっと忙しくてコミケの準備が遅れていましたが、ようやく今朝、画像のパーツが上がり、画面を1つ組むことができました。
まだ、違う画面のパーツを作っていかないといけないです。タイトル画像も描いていないし、もっと絵を描き足さないといけないし、データも入ってないし。修羅場っています。
というわけで、画面を1点掲載。50%の縮小画像です。まだ改良しそうな気がします。
あずまんが大王のキャラにちなんだステージが何種類も入っています(コミケまでには色々と入る予定……)。
基本的にはリバーシです。今回は特殊コマのないシンプルなバージョンです。特殊コマが入った姫4の最新版は今回は出ません。すみません。特殊コマの仕様を、最新のエンジンに未実装なためです。
先ほどソフトが動くことを確認して、キャプチャーを行なったサンプル画面は、「くさび」ステージです。あずまんがのどのシーンで「くさび」の話が出てきたかは、分かる人には分かるかと思います。
変形盤面のリバーシに、様々な初期配置を設け、どういった手筋で勝つかを考えるゲームになっています。リバーシというよりはパズルに近い感覚かもしれません。
アルゴリズムは、オリジナルのアルゴリズム「地雷」です。強さは、人間の初心者よりは強い程度です。そんなに強くないアルゴリズムです。アルゴリズム自体は2~3年前ぐらいに作りました。
ランダム要素は一切ないので、何度か指せば必ずクリアできるでしょう。さすがに、毎回同じ手を打ったら勝てないと思いますが。
このアルゴリズムの特徴は、どんな変形盤面でもそれなりに初心者を打ち負かす手筋を打てるということです。そのため、8×8のリバーシの盤面に最適化させたアルゴリズムではありません。
アプローチ的に普通と違うのは、定石データを一切持っていないことと、石の数をまったくカウントしていないことです。
つまり、アルゴリズム自体はオセロに勝とうとしていません。結果的にそう見えるだけです。
ここらへんは、技術屋さんには面白いと思いますので、お暇な方はブースによって声をかけてください。
やっていること自体は単純で、盤上の縦横の直線を1次元の生存環境と見立て、その計算をn次元に渡っておこなっているだけです。アルゴリズム自体は割と簡単です。一応、アルゴリズムを拡張すれば、理論的には4次元空間とか、5次元空間とかのリバーシも指せるはずです。多分。
何よりも、変形盤面をナチュラルに指してくれるのが面白いアルゴリズムです。今回は、13×13のマスにいろんなシルエットを描いてステージを作る予定です。もっとマス目の数を増やしてもいいのですが、マシンに負担がかかってしまうのと、クリアするのに時間がかかるので、これくらいが適当だと思っています。
というわけで、少し食事でもして作業を再開しようと思います。
うちのサークルに来たことがない人には、さっぱりわけの分からない文章になっているかもしれないので、ちょっとだけ追記しておきます。
だいたいいつも、うちのサークルでは、技術的にアレゲなソフトを出しています。
ここ数年やっているのは、JAVAを使ったゲームの開発です。最初の頃は速度をどこまで出せるかに挑戦していたのですが、最近ではXMLとのコラボレーションで遊んでいます。
で、ここ1年ぐらいは、XMLベースのオリジナル・プログラム言語を作成し、JAVA上で走らせるという遊びを行なっています。「それをやる社会的理由がどこにあるか?」と聞かれると、「まったくありません」としか答えられないです。ただ作りたいから作っています。とてもコミケ的です。
他のサークルさんでは、多分やっていないだろう、かなりアレゲな遊びです。そういったものに興味がある方は、ぜひ遊びに来て下さいね。どうせ暇ですので(^^;