マイコンBASICマガジン(ベーマガ) 掲載作品
TAMA-TAMAうおーず のホームページへようこそ!

マイコンBASICマガジン(ベーマガ)1993年5月号に掲載されたPC-9801/286シリーズ(N88-日本語BASIC(86))用プログラム

アフターバーナー風アクション・シューティング・ゲーム「TAMA-TAMAうおーず」 (読み:たまたまウォーズ)

<STORY>
 ある日、TAMA夫君の彼女のTAMA子さんが突然不良TAMAにさらわれてしまった。そこでTAMA夫君はTAMA子さんを助けるべくF-15TAMAに乗り込んだのだった。



<このホームページの目的>
マイコンBASICマガジン1993年5月号に掲載されたPC-9801/286シリーズ(N88-日本語BASIC(86))用プログラム「TAMA-TAMAうおーず」を紹介するページです。
紹介ついでに、ゲームをWindows10/11に完全移植しましたので、このゲームを初めて知る人は「平成の学生が作ったゲーム(平成男児ゲーム)」を新鮮な気持ちで遊んでみてください。
当時を知る人は、懐かしい気分で遊んでみてください。
ゲームのWindows版は、Vector(ベクター)にてダウンロードできます(フリーソフトです)。


<このホームページの今後について>
動画を綺麗に撮り直したいと思うが、そのためだけにHDMIキャプチャ等の機材を揃える気にはならない
 →Windows版が出来たため撮り直しはしません。
②製作、投稿の裏話など、書き留めておきたい。
③随時更新していきます。

<投稿の裏話(修正したかった点>
投稿前に修正したかったが、当時高校生のため受験勉強もあるので修正できなかった点について。

①画面は回転しているのに「玉」の光源の方向が回転しないのを修正したかったが、大変手間がかかるので着手できなかった。
②敵の「玉」は画面奥から手前に向かって描画しないと遠近感(前後関係)が狂うので修正すべきだった。
③自機の回転移動について慣性の概念を導入していなかったので、回転の途中で0秒で逆回転(Vターン)が出来る仕様であった。(要修正?仕様?)
④敵の「玉」は地平線付近から徐々に現出させる必要があった??(仕様?)
⑤玉の爆発、ダメージの際は負荷に応じた一定の長さのウェイトを入れないと、タイミングにより一瞬で爆発、ダメージ音が消えてしまう時があるので要修正。
⑥遠近法の表現で、距離の二乗で拡大していく手法は迫力はあるが視覚的な正しさとしてはどうか?(仕様?)
⑦BEEP音が五月蠅いゲームだが、実はPC98においてBEEP音の音階の変更はそれなりに高等テクニックだったりします。今コーディングしたらもうちょっといい感じに仕上げられるのになぁと思います。当時の試作段階ではFM音源の効果音でしたが、処理速度面の都合で没にしました。

<作者について>
作者:Y.NAKAMURA(admin@tama-tama-wars.jp)

元々学校のクラブ活動で作成したプログラムです。お知り合いの方はメールをくだされば返信します。
※N.Mくん見てたら連絡ください。


<TAMA-TAMAうぉーず for Windows>

マイコンBASICマガジン(ベーマガ)1993年5月号に掲載されたPC-9801/286シリーズ(N88-日本語BASIC(86))用プログラム
「TAMA-TAMAうぉーず」を作者自らWindows 11に移植しました。
元のプログラムに忠実に640×400ドット 16色で当時の興奮をそのままWindows 11で楽しめます!!
画面サイズはフルスクリーンにも変更可能!

さらに当時は不可能だった、「PCM音源での爆発音+マシンガン音」に対応!!
ゲームスピードは「80286(16bit)相当」「80386(32bit)相当」に変更可で難易度を2段階に調整可!

※言語はJavaを使用しています。Javaバーチャルマシン上での動作になりますので、Windowsの動作に悪影響を与えません。
※ハイスコアを競って遊べば結構現代でも遊べます。通常モードで簡単に全面クリアできるようになったら処理速度が速い「80386(32bit)相当」モードにチャレンジしてみてください。
※全7面です。

<ダウンロード>
Vector(ベクター)よりダウンロードできます(フリーソフトです)


<操作方法>

①上下左右の操作はテンキーで行いますが、テンキーが無いPCは「I」「M」「J」「L」キーで行ってください。
②マシンガンは「スペース」キーで。
②ゲーム終了は「E」(End)キーで行ってください。
③ディスプレイサイズ変更「D」(Display)キーで、 「x1倍」 「x2倍」 「フルスクリーン」の3種類に画面サイズを変更できます。
④サウンド設定変更「S」(Sound)キーで「サウンドON(爆発音のみ)」 「サウンドON(爆発音+マシンガン)」 「サウンドOFF」に変更できます。
⑤ゲームスピード変更「W」(Double)キーで「80286(16bit)相当」「80386(32bit)相当」にゲームスピードを変更できます。

・マシンガンでノルマの数相手のタマを破壊すればクリアです。
・相手のタマに当たったらダメージを食らってLIFEが減っていきます。
・LIFEがなくなったら墜落します。(ENERGYがマイナス20)
・ENERGYは常に減り続けます。
・クリアしたらENERGYがプラス130され、次のステージに進みます。

<特徴>
①PC-98と全く同じ640×400ドット16色で製作してます。グラフィックはPC98同等
②BEEP音でのサウンドはさすがにJavaで再現できないのでPCMでサウンドを再生しています。サウンド OFFも可能
③ゲームスピードは作者の意図通りの速度に数百ミリ秒単位で調整しています。(実際のPC98実機と全く同じ訳では無いが体感速度がほぼ同じになるようにしました)「80386(32bit)相当」を選択すれば当時デバックしていた最高速の環境相当でのゲーム体験が可能。

<改善事項>
投稿の裏話で記載した事項を改善
①画面は回転しているのに「玉」の光源の方向が回転しないのを修正したかったが、大変手間がかかるので着手できなかった。
→画面の回転に付随して「玉」の光源がクルクルそのまま回るのはあまりやってることに意味がないので対応せず

②敵の「玉」は画面奥から手前に向かって描画しないと遠近感(前後関係)が狂うので修正すべきだった。
→修正しました

⑤玉の爆発、ダメージの際は負荷に応じた一定の長さのウェイトを入れないと、タイミングにより一瞬で爆発、ダメージ音が消えてしまう時があるので要修正。
→玉の爆発処理に軽いバグがありましたので修正しました。

⑦BEEP音が五月蠅いゲームだが、実はPC98においてBEEP音の音階の変更はそれなりに高等テクニックだったりします。今コーディングしたらもうちょっといい感じに仕上げられるのになぁと思います。当時の試作段階ではFM音源の効果音でしたが、処理速度面の都合で没にしました。
→BGMは追加しませんでしたが、爆発音は追加しました。

<苦労した点など>
①N88BASICで頻繁に使用されるGOTO文は現代のプログラムではNGなので、すべてWhile文に修正しました。
②N88BASICでは貨幣計算ができるように小数点が(COBOLのように)厳密に扱われるが、それをすべて64bit doubleに変更すると誤差が生じる(可能性がある)点に苦労した。
③PC98はカラーパレットがGRBだが、現代はRGBである。これに気づくまでマニュアルなど参照し時間がかかった。
④ランキングを記録しディスクアクセスする部分は、今頃ランキングを競う人なんていないので、「ハイスコアと日時記録」に変更した。(※デスクトップにDATファイル作成します)
⑤フォントはさすがにPC98のフォントを使用できないので、Windowsのフォントを使用しています。(文字関係の外観がPC98版と異なります)
⑥円を描く命令(いわゆるCIRCLE文)のドットの描き方はN88BASICとjavaとでは微妙に異なります。そのため球(TAMA)の質感に若干の違いがあります。
⑦javaのPCM音源再生が思ったようにうまく動かなくて4日ぐらいデバックしていました。


<注意点>
ディスプレイドライバーの相性によりゲームが停止することがあります。その場合はディスプレイドライバーを最新に更新してみてください。


<今後>
評判がいいようならばNEXT版「TAMA-TAMAうおーず 2025」を作成するかもしれません。

©2024-2025 Y.NAKAMURA. All rights reserved.