読者です 読者をやめる 読者になる 読者になる

プログラマyasuhoの隠れ家

某ソフトウェア企業に勤務するおじさんプログラマyasuhoです

バージョン0.2

デジタルインベーダー


先日実機で動かないよぉ、と騒いでいたデジタルインベーダー。
お昼にデバッグしたら、原因が判明。
ハイスコアをセーブするSRAM領域へのアクセスに失敗した場合を考慮していなかったのが問題だった。
ゴミのハイスコアデータが入り、それほど大きな値が来ることを想定していない表示ルーチンでメモリ破壊。


そりゃあSRAMがちゃんと0クリアされてるエミュレータじゃ動くわな。
エミュレータで動いたから実機も大丈夫だろうとタカをくくったのが失敗だった。
いくらエミュレータが優秀でも、実機でしかできないことがある。
やはりテストは大事ね、と反省。


そんなわけで、写真のように実機でも動くようになった。
ちょっと見づらいけど、version 0.2 というのが見えるだろうか。
これで電車の中で遊べるぞ。^^


昨日と同じく、以下のサイトにバージョン0.2を置いておきます。


http://www.geocities.jp/yasuho68k/ (現在公開を中止しています)


あと今回なおしたところ:

  • キー入力チェックが甘かったので、ちゃんとタイマーでチェック。ゲームを作る人だったら常識的なことなのだろうけどね。
  • ゲームバランスもちょっとだけシビアにした。なんか優しすぎる気がしたので。実際はもうちょっとシビアだった気もするが、そのうち難易度オプションでも付けようか。
  • SRAM領域のフォーマットを変更したので、ハイスコアは0にされる。まあ問題ないと思うけどね。

今後はバグ修正とかサウンドやオプションなどの機能拡張をしていく予定。


今日新たにわいてきた疑問:

  • 最初に0を消すとUFOなのだけど、それでいいんだっけ?
  • スコアが999999を越えたらカウンターストップ?またはゲームオーバー?
  • スコアによって残機が増えたりしないんだっけ?

昨日に引き続き、このへんの情報を教えてくださる方を募集しています。


実機を買えという話も。^^;;
ヤフオクに出てたりしないかな。ちょっと探してこよう。
アキバに行くことがあったら、チェックしてみようかな。