[BlueLeaf1336]> PROBLEMS> ZeeKooper>
history | TOP |
2007/06/20:作成
2007/06/22:スコア・ハイスコア・ゲームオーバー処理追加
2007/06/23:微調整
最新版 ZeeKooper20070623.zip(271,507bytes) 実行ファイルとソースコード。
はじめに | TOP |
「ZooKeeper」っていう面白いゲームがあります。携帯を買ったときに入っていた「不思議のダンジョン」で「怒りの鉄球」までもらってしまってやることなくなったときに、軽くてただのゲームをダウンロードしたときに、初めて「ZooKeeper」に出会いました。
が、何かの拍子にレベル1をクリアしてしまうと、2度とできなくなってしまいました。レベル1だけでも良いからなんべんでもさせてくれりゃいいのにと、かなり残念に思ったのを覚えています。
で、パソコン版ならただのんあるんちゃうかとインターネットです。
を見て、ホーと思いながらいつしかたどり着いたンですが、今度はインターネットにつながってないとあかんやんか。かなりがっくりきて、じゃあツクッタロヤナイカ。携帯は無理だけど、パソコンでオフラインでもできる(平日はインターネットができない環境で暮らしてるので)、ZooKeeperもどきツクッタロヤナイカと。
そういうわけです。
参考文献 | TOP |
落ちてくるので「落ちゲー」で検索。
先に断っておきますと、URL は少し怪しいです。というのも現在オフラインで、mht 形式で保存したものから何とか探し出してリンクを作ってますので。とにかく、意外と説明してくれているサイトはあるんです。
それと、最初の Wikipedia の Zookeeper の説明ページのルールも引用させてもらいます。
- 8×8のマスに動物(象、キリン、ワニ、パンダ、カバ、猿、ライオン)がびっしりと敷き詰められている。
- プレイヤーはあるマスとそれに隣り合うマスの動物を入れ替えることができる。ただし、入れ替えることにより動物が消せない場合は入れ替える事が出来ない。
- 動物が3匹以上並ぶと、その組は消える。また、この際にタイマーが少し回復する。
- 動物が消えて下が空白になった場合、その動物は落下し、上からランダムに動物が補充される。着地後それによって3つ以上の並びが発生したら連鎖となる。
- どれを動かしても3つ以上の並びが作れなくなったらマスの動物が総入れ替えされる。
- 各種の動物を一定数以上消したらレベルが上がり、タイマーの減少スピードが速くなる。
- タイマーが0になったらゲームオーバー。
- レベル7以降動物とともに、マスに園長が登場する。
- ゲームオーバー後、得点に応じて園長からコメントが有る。その多くはネガティブな内容の物である。成績が良ければ褒め言葉が出てくるが、動作は文句を言う時と同じ。
- DS版では消した後の落下中に動かしていわゆるアクティブ連鎖をすることが可能。そのため見つけたらすぐに消せばいいというものではない。他機種版といい意味ではかなり別物になっているので注意。アクション性の高い非常に良質なゲームになっている。
ここでは、以上のルールに従ったゲームを作ることを目標にします。
スクリーンショットとダウンロード(2007/06/20時点) | TOP |
このゲームの肝はなんといっても動物たち(象、キリン、ワニ、パンダ、カバ、猿、ライオン)の絵です。いや、ゲームというものは多分絵のうまさの占める割合が多いように思います。もちろん画期的なアイデアがある場合は別として、今回作るのは、何をおいても「ZooKeeperを遊びたい」という思いからです。
そんなこんなでまったく言い訳になりませんが、画面はこんな感じです。あまりにアレなのでメディアンフィルタをかけてます。
今日このページを書いた時点で、基本的には満足してしまいそうなところにたどり着いています。ZooKeeper に比べると「登山道はこっちです」の最初の看板が見えたぐらいの位置ですけど。
細かい話はおいといて、目標にたてたルールを消しこんでいくとこんな感じです。ちょっと分解しています。
そうはいっても根本的なところで、ゲームオーバーってどうやって扱うのよ、とかスコアさえまだカウントしてないとかいろいろあります。もうしばらくは遊べそうな雰囲気はしています。ゲーム自体もゲームを作ること自体も。
ZeeKooper20070620.zip(238,445bytes) 実行ファイルとソースコード。
遅くなりましたが、ZooKeeper のパチもんなので「ZeeKooper」と名づけました。ただ、ゲームの状態遷移に関しては結構すっきりとかけているように思います。何やくちゃくちゃで手を出す気にならん、てな感じではないです。このソースを書いた本人がホットなうちに口走った感想で終わりませんように。
今のうちにファイルの構成をメモっておくことにします。
番号 | ファイル | 役割 |
---|---|---|
1 | !WorkClear.bat | 邪魔な中間ファイルを削除するbatファイル |
2 | Info.dfm | いつものバージョン情報(dfm) |
3 | Info.pas | いつものバージョン情報(pas) |
4 | MainUnit.dfm | 画面(dfm)。ユーザークリックをゲームクラスに渡すこととゲームクラスの持ってる配列を見て動物たちを表示することしかしてない |
5 | MainUnit.pas | 画面(pas) |
6 | mt19937ar.pas | 以前に作ったメルセンヌ・ツイスタ発生関数 |
7 | SquareGrid.pas | PaintBoxにグリッドを書くのを少しだけ楽にするクラス |
8 | version.rc | バージョン情報 |
9 | version.res | バージョン情報(コンパイルされたやつ) |
10 | VertialField.pas | ゲームクラス。ゲーム進行に関するあらゆる処理はここ。スレッドクラスから派生したクラスが入っている |
11 | ZeeKooper.dpr | プロジェクトファイル |
12 | ZeeKooper.exe | 実行ファイル |
13 | ZeeKooper.res | Delphiが自動生成するファイル。アイコンが入っているらしい |
あ。バーチャルのつづり間違ってる。VertialFieldって。VirtualField じゃないのか。
次にやろうと思っているのは「ゲームオーバー直前のプレッシャー処理」です。本家は動物たちがわやわやし始めます。... うーん、難しそう。ひょっとすると「スコア」かも。できれば「ハイスコア」と。
スコア・ハイスコア・ゲームオーバー処理追加(2007/06/22) | TOP |
スコアとハイスコアを記録するようになりました。それからゲームオーバーも。もちろんそのために残り時間によるプレッシャーがかかるようになってゲームっぽくなってきました。
ZeeKooper20070622.zip(271,246bytes) 実行ファイルとソースコード。
基本的には満足しました。実際、作ってデバッグするたびに10分近く遊んでしまうのでまったく進まないというか。
微調整(2007/06/23) | TOP |
ZeeKooper20070623.zip(271,507bytes) 実行ファイルとソースコード。
EOF | TOP |