zaralaのチラシの裏・掲示板 @ Z-Z BOARD

過去ログ9 2025/7/6 13:49

▼zarala
元の書き込みが消えてしまったようなのですが
電GOプロ2で音楽鑑賞室(サウンドテスト)で聴けるもの以外の音声を聞く方法は無いか?といった趣旨の書き込みがあったと思うのですが
サウンドテストの処理をいじって全ファイルからファイル番号を直接指定して再生できるコードを作ってみました。
(ただし、音声以外のファイルも指定できてしまう(ノイズ音になる)ので注意)
他の書き込みから順番に対応していたら遅くなりすみませんでした。
※運転士の音声・発車メロディ・車内チャイムなどは効果音(内蔵音源)扱いでこのコードでは対応していません。
A0193380 3C020049
A01933B0 8C4257D0
A01933B4 24040064
A01933B8 00822018
A01933C0 00902021
A0193258 28410008
A02AC530 00000021
A02AC534 00000064

このコードを有効にすると、音楽鑑賞室で音声の再生時に
「音楽の番号×100+音声の番号」のファイル番号のデータを(音声データでなくても)無理矢理再生します。
(番号が999までしか表示できないのでこのような仕様になっています。なおカーソルが「音声」に合っていないと音声は再生できません)

ファイル番号はWindows版と共通っぽいので
Windows版と同じであれば音声の番号は
164〜608、627〜657、750〜1300、1643〜1722、1795〜3217
になると思います。ただし完全に一致しているかの確認は取れていません。
Windows版のファイル名との対応
http://zarala.g2.xrea.com/code/train_pro2_voicelist.txt
「番号」は指定するファイル番号、
「16進」はファイル番号を16進数に直したもの、
(このコードで使う分には不要な情報なので特に気にしなくて大丈夫です)
「サウンドテスト」はコード未使用時にその音声を再生できる番号です。
(通常再生できないものは-1) Up 7/6 13:49


▼通勤急行
Re:zaralaさん
ありがとうございます!大変感激です。
本当にZaralaさんには頭が上がりません。

> なお合格点の件とATC速度に関してはメモリサーチ機能のあるチートツール(メモリプロセスエディタ)を使って該当値のアドレスを探し、
> pcsx2のデバッガのブレークポイント機能(特定アドレスの実行や読み書き時に一時停止させる機能)とPS2DIS(逆アセンブラ)を使ってプログラム内で該当アドレスを読み書きする箇所を探して処理を書き換える、という手順でやっています。
詳しくありがとうございます。大変勉強になります。
かなり大変な手順で調査とご作成、ありがとうございます。
該当値のアドレスを探し出す(絞り込み)がなかなか大変で挫折してしまいましたが、もう一度チャレンジしてみます。


▼zarala
Re:通勤急行さん
>不合格な点数でも一律合格にするコードでも作成は難しいでしょうか。
「合格基準点を0点に固定する」という形でよければ下記コードで可能です。
patch=1,EE,0013139C,word,AF808B70

以下はL2を押すとATC9999キロ固定、R2を押すとで元の速度に戻すコードです。
といっても単に既存のコードにパッドアドレスの比較を付けただけですが…
(20179A30 00000000は無くても動きそうな気がしますが一応入れてあります)
使うボタンを変える場合は1行目、4行目のE003の後の4桁(FEFF、FDFF)をマイナス形式のパッド値で変えてください。
patch=1,EE,E003FEFF,extended,00407202
patch=1,EE,20179A30,extended,00000000
patch=1,EE,20179ABC,extended,2405270F
patch=1,EE,20179AC0,extended,A7859478
patch=1,EE,E003FDFF,extended,00407202
patch=1,EE,20179A30,extended,1020FF8E
patch=1,EE,20179ABC,extended,14600002
patch=1,EE,20179AC0,extended,00000000
ONの時にATC速度非表示は出来ませんでした。
28BEA0を3にするとフリーラン用の時刻・ATC速度非表示の状態になるので、ここを読んでいる所のどこかが関連しているかと思うのですが、場所が多すぎるので断念しました。

なお合格点の件とATC速度に関してはメモリサーチ機能のあるチートツール(メモリプロセスエディタ)を使って該当値のアドレスを探し、
pcsx2のデバッガのブレークポイント機能(特定アドレスの実行や読み書き時に一時停止させる機能)とPS2DIS(逆アセンブラ)を使ってプログラム内で該当アドレスを読み書きする箇所を探して処理を書き換える、という手順でやっています。


▼エル・ボキータ
Re:zaralaさん
おお・・・ありがとうございます!


▼通勤急行
Re:zaralaさん
早速のご調査ありがとうございました。
Aを2に書き換えたところ、期待通りに動作しました!(感謝)

評価を書き換えるコードは難しいのですね。
図々しくて恐縮ですが不合格な点数でも一律合格にするコードでも作成は難しいでしょうか。

ATC速度制限については、フリーランみたいに現示速度が無い状況(ATC開放)に近いものができたらいいなと思っておりました。
zarala様はどのように調査されているのでしょうか?(私にもそのような力があればいいんですが・・・)

本当にいろいろとありがとうございます。


▼zarala
Re:通勤急行さん
> この記事にある「通常版」ですが、PCSX2では改造コードの利用ができなさそうです。私の使い方が誤ってるだけだとは思いますが、一度ご確認いただけますでしょうか。

最新版のpcsx2で確認してみましたが、
チートのextended形式ではPARのAコードには非対応?の様です。
例えば視線移動制限解除コードの1行目は
9C8523E4 2054A75D
これを復号化すると
A012A0BC 3C02C048になりますが、そのまま
patch=1,EE,A012A0BC,extended,3C02C048
に変換しても動作しないようです。
以下のようにアドレスの先頭を2に変えるか、標準のword書換であれば反映されるようです。
patch=1,EE,2012A0BC,extended,3C02C048 //2コード(4byte書換)に変えればOK
patch=0,EE,0012A0BC,word,3C02C048 //標準のword(4byte書換)もOK

これでもダメな場合は通常版でもディスクが修正版の可能性があります。
下記のファイルの日付が2001年8月で無ければ非対応です。
[通常版]
 SLPM_650.39 2001/8/23 1:53
 SYSTEM.CNF 2001/8/22 22:09 ver1.06
[ベスト版]
 SLPM_650.39 2001/11/21 15:57
 SYSTEM.CNF 2001/11/21 10:47 ver2.01

評価関連は計算している箇所を探して調べないといけないと思うので難しいです。
ATC制限のボタンでのON/OFFに関しては調査してみます。 Up 6/22 21:06


▼zarala
Re:エル・ボキータさん
SIRENのムービー・音声抽出ツールを公開しました。
http://zarala.g2.xrea.com/soft/siren_movvoice.zip
再生機能が無いので一旦変換しないと聴けないのは面倒だと思いますが我慢してください。(すみません)


▼エル・ボキータ
Re:zaralaさん
対応、ありがとうございます。完成楽しみにしてます^^


▼通勤急行
こんばんは。下に電車でGOの新幹線が取り上げられていたので、質問させてください。
この記事にある「通常版」ですが、PCSX2では改造コードの利用ができなさそうです。私の使い方が誤ってるだけだとは思いますが、一度ご確認いただけますでしょうか。(http://zarala.g2.xrea.com/code/train_sanyo.html)
また各駅停車時の評価や全区間運転終了時の各評価点数を変更するコードはありますでしょうか。
特定ボタン押下時だけATC制限9999kmとかのコードもあると嬉しいです。


▼zarala
Re:akawさん
> すみません。旅情編で警笛鳴らせや隠し警笛の場所で勝手に警笛鳴らすコードとかありますか?

警笛自体は鳴りませんが、
PS2版であればアドレス156554を00000000に変更すれば
警笛が必要な区間に来た時に鳴らしたこと(警笛OK表示)になります。


108

掲示板に戻る