マイコンBASICマガジン1994年12月号掲載・パズル


頭を使え!算数でパズルゲーム

シルゴンの数字パニック

1994年9月22日 作成



シルゴンの数字パニックのイラスト


内容

画面上にある数字ブロックを消すといったパズルゲームです。全16面あります。



遊びかた

RUNして50秒待つとタイトル画面がでます。カーソル・キー,またはジョイスティックの左右で面を選び,スペース・キー,またはトリガAでゲーム開始です。
自分(シルゴンボール)をカーソル・キー,またはジョイスティックで上下左右に動かし,画面上にある数字ブロックを押したり,重ねたりして消していきます(第1図)
数字ブロックの性質を以下に示します。

@同じ色どうしの数字ブロックは,重ねると数字を足すことになります。そのとき足して10になれば消すことができます(40点)。ただ足して11以上のときは重ねることができません。
Aちがう色どうしの数字ブロックは,数字が同じなら重ねると消すことができ,その数字の2乗の点がスコアに加算されます。数字がちがうときは重ねることができません。
B自分の進む向きに数字ブロックがあるとき,スペース・キー,またはトリガAを押しながら進むと,自分と数字ブロックの位置を入れかえることができます。
C1面ごとに1回だけ,シフト・キー,またはトリガBを押すと,画面上のすべての数字ブロックに1を足すことができます。ただし,「9」の数字ブロックは変化しません。
これらの性質を利用して,画面上のすべての数字ブロックを消すと面クリアです。
また,タイムが0になるとドラクが出現し,自分を追ってきます。自分がドラクと衝突するか,[G]キーを押してギブアップすると,MISSになり,3回ミスでゲーム・オーバーです。

≪第1図≫ 数字ブロックの性質



プログラムについて

面表示やワークエリアの初期化をマシン語で瞬間的にやっています。
面データについては,1面につき68バイト使っていて,最初の2バイトが自分の座標,最後の2バイトが,壁と周囲の色,残りの64バイトが8×8ブロックで構成されている画面データで,0は壁,1〜3,4〜6,7〜9はそれぞれ緑,青,赤の数字ブロック1〜3に対応しています。
あと,210行にあるSQRはゲームのスピード調整用なので,これをとると自分のスピードやタイムのカウント・ダウンが速くなるでしょう。



最後に

このゲームは,色が3色,数字が1〜9の27種類の数字ブロックが存在するので,むずかしそうですが,何度か挑戦すれば全面クリアできると思います。
ゲームのこつは,「数字ブロックの性質」のBを使い,邪魔なブロックをどけながら必要なブロックを動かし,@Aの方法で消していくことと,Cの操作のタイミングに注意することです。



CHECKER FLAG

編:細かいところまでよく考えられている作品ですね。
Dr.D:ブロックが壁にくっついてしまったときの処理や,タイム・オーバーがそのままゲーム・オーバーじゃないなどといったところじゃな。
編:パズル的要素もしっかりしているし,完成度がかなり高いのでプレイしていてすごく楽しいですね。




≪第1表≫ メモリマップ
CF80 ・・・・・・ VRAM初期設定
D032 ・・・・・・ 面の表示
D0AB ・・・・・・ 自分と数字ブロックの移動
D263 ・・・・・・ [G]キーの入力チェック
D271 ・・・・・・ 消したブロックの移動
D2F3 ・・・・・・ タイムの表示
D327 ・・・・・・ ドラクの移動
D366 ・・・・・・ サブ・ルーチン
D400 ・・・・・・ 面データ(ブロックなど)
D800 ・・・・・・ 面データ(自分の座標,色)
D840 ・・・・・・ キャラクター・データ
D900 ・・・・・・ 仮想画面
D9C0 ・・・・・・ ワークエリア


≪第2表≫ ワークエリアの説明
D9C0 ・・・・・・ 自分のX座標
D9C1 ・・・・・・ 自分のY座標
D9C2 ・・・・・・ 自分の移動量
D9C3 ・・・・・・ 自分の移動方向
D9C4 ・・・・・・ 自分とブロックの入れかえフラグ
D9C5 ・・・・・・ 移動中の数字ブロックの種類
D9C6 ・・・・・・ 移動中の数字ブロックのX座標
D9C7 ・・・・・・ 移動中の数字ブロックのY座標
D9C8 ・・・・・・ サウンド用
D9C9 ・・・・・・ フラグ(2でクリア,3でミス)
D9CA ・・・・・・ ドラクのX座標
D9CB ・・・・・・ ドラクのY座標,タイム用
D9CC ・・・・・・ タイムの十の位
D9CD ・・・・・・ タイムの一の位
D9CE〜D9CF ・・・・・・ 消した数字ブロックの
X,Y座標・得点など

≪第3表≫ 変数表
I,J ・・・・・・ ループ用
N,P,N$ ・・・・・・ 雑用,USR用
C ・・・・・・ 面数
D ・・・・・・ 自分のLEFT
FNN(n) ・・・・・・ N$のn文字目をアスキー・コードで読む



画面写真

ゲーム画面

≪写真1≫
実行後約50秒でタイトルが現れる。
面セレクトも可能
≪写真2≫
画面内の数字ブロックを押したり
重ねたりして消していこう
≪写真3≫
同じ色の数字ブロックは重ねると
数字どうしが足される
≪写真4≫
ちがう色の数字ブロックは数が同じ
ときのみ重ねることができる



概要その1へ
概要その1へ戻る
シルゴンハーゲンのホームページ・MSX編へ
MSX編 トップへ戻る
シルゴンハーゲンのホームページ・メインへ
ホームページ トップへ戻る