ピンくま日記

リアルバウト餓狼伝説2のトレモ実装と遊んだ感想とか書いていきます。 https://github.com/sanwabear/rbff2-training

進捗でません

ここ何ヶ月からの忙しさからちょっとだけ抜け出せそうです。トレモのほうは一週間ほど手を付けられていませんので進捗はありません。

今週末は家族イベントでまた別の忙しさがきそうでなんかもう二週間くらい仕事もなんもない感じの生活をしたいなとか思います。

改造がはかどらない

トレモ本体のほうは一通りやりたいことは盛り込めたので、あとはバトルアーカイブズみたいに、1P選択後のCPU選択でボスキャラ達が抜けないようにしたいなと改造ポイントを探っているところですが、全然はかどりません。どういじっていいのか皆目見当がつかない状態で困っています。

ここをみている人がいたら教えてほしいです。切実です。

真ん中の列をぴょこんとずらしているところをつぶせばとか考えていましたが、なんとなくのポイントはみつけたものの、そのまますっ飛ばすとゲームが進まなくなったりクラッシュしたりで全然だめです。バトルアーカイブズのトレモはいったいどうやって実現しているのか。

とりあえずPS2ソフト買って、PS2エミュ上で動かしてみたら何かわかるんじゃないかとか思いますが、ソフト買ってダンプして、BIOSもダンプしてそこからエミュレータ動かしてとかまた大変そうなので躊躇しております。ダンプに必要なモノも入手がむずかしそうだし。

f:id:ym2610:20200621224831p:plain

対戦画面のほうは一段落

 

 

当たり判定の表示その後

移植頑張ってた当たり判定表示がようやく終わりました。通常投げ、空中投げも無事表示できるようになりました。通常投げは1フレしか表示されないとか利用価値がなさそうだったので、投げ判定が表示されるときにエミュ本体のポーズをかけるようにするモードも増やしました。めんどくさいのが一つ片付いてよかったです。

動かしてみると相手が投げ可能なら常に処理が動いているみたいです。ジャンプ中とかライン移動しっぱにさせると投げのフックが反応しません。空中投げも相手が空中にいないと動かないっぽいです。ダウン投げと必殺投げは常に処理が動いていて、とくに前者は↓Cでチロチロなげ枠が表示されます。

メニュー回りもつくっていて、つぎおおきなのはレコーディング機能になります。

当たり判定の表示

当たり判定表示のスクリプトを素のMAMEのほうに移植を進めています。フックが使えないのは予定通りMAMEデバッガをつかって空いてそうなメモリに必要な値をぜんぶ書き込んで、フレーム更新時に読込むかたちでなんとかなりました。投げ判定だけすごくややこしいのでまだできていません。

がんばって進めていきます。

MAMEデバッガを調べる

当たり判定表示の移植はいったんあきらめて、デバッグDIPでの判定表示の色わけでお茶を濁そうとしましたが、当たり判定、くらい判定、接触判定でそれぞれ配色用のメモリアドレスがかぶっているものがあってそっち側も挫折しました。これでどうやって開発、検証していたのかとても気になります。

 

自動ガードなども移植していきたく、そうするとどうしても自分のやりかたではメモリ更新のフックをとらないといけなくって、フックの仕方がないか調べてみました。チートの設定でフックして更新みたいなのができるかを見てみましたが、それっぽいのは見つからず。そもそもチートコードのシンタックスなども明文化されているのを見つけるのにめちゃくちゃ苦労しました。いちおう書いてあるところを見つけたのと、スト2シリーズのチートコードを参考に読んでみましたがフックぽいのは無くて断念しました。

 

当たり判定表示の解析されている神様サイトを参考になんかないのかと記事を読んでいると、ウォーザードの投げ判定の読取にはデバッガ依存になってしまったというのを見つけてこれはぜひ参考にしたいとスクリプトの方を確認したところ、確かにデバッガのbpsetの構文を仕込んでね、みたいなのがありました。

MAMEのデバッガ用コンソールで構文つくって動かしてみると、確かにフックして、さらに特定番地を更新することができました。本家のMAMELuaエンジンにはデバッガ用のインターフェースも用意されているので、スクリプト起動時にウォッチポイントを設定して、疑似的にフックの処理を移植することができました。これで自動ガードのために必要な攻撃状態や飛び道具の発射状態の遷移を検知してガードする・しないの動きをとらせることができるようになりました。あとは入力をさせるやりかたを確認しないといけないです。デフォで入っている連射用のLuaスクリプトを参考にがんばってみようとおもいます。

 

あと、こうなると実装は大変そうですが、フックに依存する餓狼伝説シリーズの当たり判定表示のスクリプトもやればできそうな気がします。また時間とやる気のあるときにチャレンジしてみようとおもいます。

 

FBA-rrじゃないほうへ移植

素のMAMEのほうにスクリプトを移植中です。

もともと今のがごちゃごちゃになっているのの整理もやっています。

ただ問題があって、もともと持ってきている餓狼シリーズの当たり判定表示のスクリプトMAME-rrでも動かなくて、FBA-rr専用ですっていうのがつくられたかたの記事でも書かれていて、分からないなりに自分で頑張って移植をやってみましたがやっぱむりでした。もともとのスクリプトを作った人はまじ偉大だなー最高やなと思いつつ、当たり判定表示の移植はあきらめました。ゲーム本体の動作に負担がかかりますが、MAMEだとデバッグディップの判定表示で済ますしかなさそうです。

BIOSがみつからない

GOGで購入、ダウンロードしたデータにBIOSが入っててやったーてなり、連休で時間ができたのでMAMEで動かしてやろうと思い、1年ぶりくらいにMAMEをダウンロードして起動してみましたが、BIOSが足りないと怒られてゲームができませんでした。

UNIVERSAL BIOSは公式サイトからポチポチダウンロード(4.0より古いバージョンはファイル名を変えたらダウンロードできました。)し、アーカイブに追加したものの、次のが無いと怒られます。

  • sp1-u2
  • sp1-u4.bin
  • sp1-u3.bin
  • sp1-j3.bin
  • sp-j3.sp1

GOGで出ている新しめのやつにあってくれたらいいのになーと淡い期待を抱きつつ、零スぺをぽちってデータを見てみましたが入っていませんでした。代わりにGOGのBIOSセットになかった、sp_4j.binとsp_4s.binていうのが手に入りました。前者は日本語版BIOSの別名、後者は新規ぽいです。後年、要求されたときのために念のためzipに詰めておきます。

結局、公式ものはみつからなかったので、リネームしてお茶を濁しておきます。移植屋さんは公式から根こそぎもらってアーカイブに詰めて売って欲しいです。

 

メモ書きを残しておきます。

docs.google.com