見出し画像

(追記)デビルクラッシュ(Naxat / PCE) MSX IF記事にスプライトを足してみた

前の記事はこちらです


最近、エイリアンクラッシュの絵を描いた勢いで、デビルクラッシュの方にも描き足ししてみました。

以前描いた記事の時、背景部分の描き込みをしたんですが、ゲームとして肝心な骸骨兵やウィザードなどの歩き回るターゲットを誤魔化しで描いていたので、16x16px単色 のスプライト縛りで、これらの破壊可能なターゲットをより原作に寄せて描いてみました。

全体図

動き回るターゲットのスプライト載せてみました

スプライト制限について

一応元絵が SCREEN 2 制限なので、MSX1だと、横に5枚目以降の重なりで消えちゃうんだよねーって言いながら眺めてほしいのです。
玉が動き回ってると、こんなに綺麗に敵が並ばないですよね。
優先順位を高速で入れ替える、ちらつき処理などが必要なのですが、MSX2 / SCREEN 4 に持っていって、横8枚制限(9枚目以降が消える)までいったら、案外ゲームになりそうです。
MSX2のカラースプライトだったら、小ガイコツのボディ部分とか、塔周辺の虫とか軽くグラデーションかけたりできますしね。

スプライト(16x16サイズの想定)
ボールのみ2枚重ね(14灰/15白)

こちらが、画面モックに使用したスプライト群で

  • ボール

  •  爆発パターン

  • 下画面大骸骨の目玉(ボールのある方向を見る演出用)

  • 外レーンとバンパー裏のにいる蜘蛛っぽい骸骨

  • 打ち出しレーン出口のシャッター(飛び出してくる時開く演出用)

  • ウイザード(上画面破壊ターゲット)

  • ワイバーン(下画面ドラゴンの卵から飛来)

  • スライム(中画面と上画面の間の破壊不能ターゲットと、大扉から上画面に行く通路上の破壊可能なターゲット)

  • 火炎弾(下画面ドラゴンが吐き出すブレス)

  • 小骸骨兵(中央画面破壊ターゲット)

  • 塔の虫(下画面破壊ターゲット)

なお、大骸骨の目玉と、スライムは背景にPCG4チップ(2x2)の補助パーツを透かして見る構造になってます。

細部パーツも少しいじりました

今回2025年のMSX界隈で流行った1行おき着色で、新しい配色に気がついたことを反映して、上画面の大骸骨(の頭頂部)や、左扉から出てくる骸骨剣士などを少し描き直しました。
この辺も描いたら描いただけ修正点が湧いてくるのでこのへんで留め置きます。

ランプ類も消灯、点灯と、スコアチップはどこに並ぶのかが分かる程度に点灯状態のランプも配置しました。
本家PCE版のように、これらのランプ類をPCG画像として明滅させるのは、かなり労力がいるのですが、やはりMSX2 / SCREEN 4化して、8赤とか13紫あたりで塗っている場所を、を明滅専用色(0番がも使えるかも?)に割り当てて、パレットアニメーションで明滅させれば、オリジナルに近づけられそう。

パーツ分解図

想定しているパーツチップは以下のとおりです。
カーブしている壁・床パーツは基本的に Y/X比が 50% 100% 200% 傾斜パーツのみで構成されてます。
(フリッパーに接続する箇所に特殊パーツあり)

フリッパーは、標準状態・振り上げた常態と中割り1コマとしています。(PCE版は中割り2コマありそう)この部分は、スプライト描画にするほうが画面へ配置するとき自由度高くていいんですけどね。

背景パーツ
※web掲載だと絵がぼやけてしまうので、各部品x2サイズに加工してます。
仕掛け・ランプ類
※web掲載だと絵がぼやけてしまうので、各部品x2サイズに加工してます。
中央顔面部
大顔面をアニメーションで…

移植に際して

以前、1re1さんやTKZ80さんが、これらの絵を「本当に表示できるか」試してくれたことがあります。


特にTKZ80さんのスクロールデモは、4画面分の画像を上端から下端までドット単位でスクロール表示されています。

仕組みとしては、MSX2以降で利用できるVRAM贅沢にを使って、PCGパターン、カラーテーブルを12セット(四画面分)連続領域に確保し、垂直同期割り込みで使用するテーブルを随時ずらしていく方式ですね。
(上のポストの続き、種明かしのところに書いてあります)

なんでそんな面倒なことをしてるかというと、画面全体として使用してるチップパーツが、一般的に言われている定義可能数の256チップを超えているためです。 

実際には SCREEN 2 / 4では、縦方向に8キャラ(SCREEN 1で言う8行)毎にパターン(カラー)テーブルを切り替えて表示しているので、8行ごとに256パターンずつ。画面全体では768チップ確保できてるんです。
普通はそんな贅沢に利用しないだけで…

で、この仕組みを拡張して描画時に、垂直同期割り込みでパターン(カラー)テーブルの開始位置をずらしながら表示し、スクロールしてもキャラクタが化けないように調整しながら描画させることで擬似的に個別の範囲に256チップのパーツセットが割当可能になっています。
それなら背景チップの上限を気にする必要は(ほぼ)ありません。

実際問題、タイミングよく切り替えが可能か?という実証実験として、こちらの実験はとても有意義なんです。
TKZ80さんありがとうございます。

その他の課題

前回の記事とエイリアンクラッシュの記事でふれた台揺らし(TILT)の処理は、垂直方向に数ドット上下するという動作なので、MSX2以降の実装機能で BASICで言う SET ADJUST 機能を応用して、一時的に画面全体の表示位置をずらすことが可能なので(RPGなど多くのゲームでシェイクの演出で使われている)、再現可能ですね。

というわけでMSX2 / SCREEN 4でできることでこのモックで実現・考慮していないのは、

  • ボールのカラースプライト化(影部分が透けなくなる・必要なら黒縁で枠取りもできる)

  • 歩き回るターゲット カラースプライトによる1行単位の着色

  • カラーパレットの調整

    • 色そのものをMSX1パレットの代用色ではなくダークグレーやオレンジなどそのものズバリな色に調整

    • パレット番号の番号入れ替え(カラースプライト2枚重ねで3色目を実現するための小細工)

    • パレットアニメーションによるランプの明滅を考慮した配色

あたりでしょうか。

これらを考慮すれば、オリジナルに遜色なくとはいかなくても、なんとなくゲームとして遊べるレベルにまでは作り込みが可能なのでは?っと考えてしまいますね。
どなたかチャレンジしてみたいという猛者はいませんかねぇ…
ほんとに見てみたいです。

あ、あと、MSX1にこだわらなければ、FM音源の美しいBGMも期待できますよね。僕の場合、MSX1環境で描いてるモックアップがゲーム化されるなら、画面とのバランスの都合、できればPSG音源オンリーで鳴ってほしいなと思ってます。

これはMSX1レベルで実現可能なんだっていう時代感というか、空気感みたいなこだわりですけれど…


関連記事

シリーズの原点エイリアンクラッシュも見てみたい。
ルールはほぼ共通で画面数が少ないので、実際にプロトタイプとしてなら移植難易度が低い分おすすめかも?


いいなと思ったら応援しよう!

やぢおぅ / Yazioh (チップに限らずコメントなど)応援していただいたシリーズは、続きや描いた絵を実機で表示するためのデータの公開など追加コンテンツも考えますので、ぜひワンアクションを! あと、リクエストも歓迎します。