改造系の情報及び技術発信☆です

FCグラディウスⅡの当たり判定について☆です

 
<オリジナルの当たり判定について>
 

4方向から敵弾が飛来してきた場合に、次の位置関係で「当たった」と判定しています。
これが、FCグラディウスⅡに於ける「当たり判定問題」です。
 

(特に上下判定が厳しいみたいです)
 
参考までに、敵砲台に体当たりし「当たった」と判定された状況は次の位置関係です。

(一応まともに見える)
     
<判定方法>
敵スプライトはY座標・X座標・Y方向値・X方向値の4バイトが当たり判定テーブルに登録されています。
ちなみに「敵弾」は以下の場所を参照
 
 [F5 F5 14 14]が敵弾の判定値です。
この数値と自機座標で判定しています。
 

ちなみに他の当たり判定を調べてみると・・・
 
[F6 F3 12 18] $BA50 - 16x16系 赤青カプセル 小フェニックス 砲台 ダッカ-など
[FD FA 04 0A] $BA54 - 08x08系 ビッグアイの小弾 小モアイの小イオンリング ゴーファーの弾
[EF EC 20 26] $BA58 - 24x24系 ファイヤードラゴン ビッグアイの大弾 スクランブルハッチなど
 

なぜか「敵弾」の判定値だけが浮いていますね・・・
 調べてみると、[F5 F5 14 14]$BA64は 自機ショットの攻撃判定に使用している数値です。 
※$BA50とか$BA64はメモリ上の数値
 

<詐欺当たり判定の結論>
[FD FA 04 0A]$BA54 「08x08当たり判定」
 
を参照するハズが
 
[F5 F5 14 14]$BA64 「自機ショットの攻撃範囲判定」
を参照してしまったようです。ぴったり0x10ズレているし・・・  
一応当方はバグと判断し修正しておきました。(20年待った結果がご覧のあ(ry)
 
■プレイ動画
グラディウスII AC Death07をプレイ。【60fps】
 こちらでも、当たり判定について紹介されています。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください