土曜日, 2月 18, 2006

Block Getter v0.5

v0.4をすっ飛ばしてv0.5を開発中です。そしてこれがその開発中の画面。選択されている項目を表すオレンジ色のバーはちゃんと物理法則
x=v*t+(1/2)*a*t2
に従って動きます。まだ、AIやゲームコアの実装には至っていないのでまだまだ使える状況ではありませんが。
そして、MSWお絵描き掲示板にあるような3Dサポートも考えています。とりあえずまずは2Dで書いていますがゲームコアはViewに全く依存しないのでViewを書き換えれば何でも出来ます。ですからJava 3Dがインストールされているかどうかで判別することも出来ますし、ゲームコアだけを携帯に持っていって携帯版Block Getterの作成なんてもことも出来ます。さらにt-maruが密かにあたためているらしい機能もゲームコアでは対応しています。表には出していませんけどね。
さて、今回のバージョンアップの目玉はAIの大幅な強化。今までの「勘弁してくだせぇ」では弱すぎるので、その上に「まだまだ」「普通」「かかってこい」「最強モード」を追加します。「まだまだ」はMSW製AIの弱点を補ったもの、それ以上はmini-max法というアルゴリズムを採用します。α-β法が理解できればそちらにしますが、とりあえずはmini-max法で。
ここで参考にさせていただいているのがJavaでゲーム作りますが何か?というサイト。さすがにBlock Getterと同じゲームはないだろうと思い、それに近い五目並べのアルゴリズムを探していたらオセロのアルゴリズムにたどり着きました。まあ、このmini-max法は分かりやすく言えばしらみつぶしに調べる方法ですので簡単に応用できるでしょう。Block Getterのルールにあった枝切りをしてやればそこそこの速度で動くと思います。それでも最強モードを携帯で動かすのは無謀かもしれませんが。

さて、Java 6 Mustangのβが出ましたね。Javaでデスクトップアプリケーションを作るにはうれしい機能がいろいろあるようです。でも、またMac版は遅いんだろうな。もうすぐMac OS X 10.5も待ってますから今使っている10.4には載らないかもしれません。さて、Mac OS X 10.5はどんな機能を搭載して来るのでしょうか。なんか、コンピュータの概念を覆すものを持ってくるような気がします。もう、TigerでCocoaプログラミング環境はCore Dataの導入で一通りの完成と言われているらしいですし。現在のiMacやMacBook Proに搭載されているFront Rowを中心に何か出してくれないでしょうか。

追記
Block Getter進行状況。
LINE:2139
FILES:26

0 件のコメント: