俺のコードメモブログ(PSP)

PSPのコードを載せていますが俺の持ってるゲームがほとんどで管理人のメモ状態ですw

チートファイルの互換性

2009-01-04 13:58:02 | Weblog
※チートファイルの互換性を勉強したい人が対象です。

主にEC → MAME or nebulaへの改造コードの変換の説明です。



◆1.nebula標準オプションのチート機能について

サブフォルダ./Cheats/で、各ゲームごとの *.datファイルを管理しています。
書式は、[Region]項目から始まり[1][2]..~[10]といった具合に
チート項目が連番になっています。

特徴
○初心者でも取扱いがとっても簡単
×チート製作者にとっては、項目を後で整理したり追加したりするのが大変。
×チートの組み合わせによってはnebula本体が起動しなくなる。
×普及していないので、他ツールでのアドレスを参考に手作業で変換するしかない。

例)コードの書式 傲剣狂刀の試合時間を固定
[0]        ←nebulaのチートリストに表示される優先順位
Name=タイム固定  ←nebulaに直接表示されるチート名(日本語可能)
0=OFF,0,0     ←チートを無効にするという意味
1=20秒,80B3EE,14  ←時間を20秒(16進数で14)で固定という意味
2=99秒,80B3EE,63  ←時間を99秒(16進数で63)で固定という意味
Default=2     ←予めどの状態でチートを有効にしたいかの番号


◆2.MAME標準オプションのチート機能について

デフォルトでは、cheat.datファイル(複数ゲームを登録可能)で管理しています。
ファイルが肥大化しますが、面倒な人はcheat.datに直接コードを追加してくだけで大丈夫です。
各ゲームごとにチートを管理したい場合は、mame.iniの cheat_file 項目へ追加します。
例);cheat_file cheat.dat;任意のネーム.dat

特徴
○MAMEのユーザー数が多いので需要がある。
×GUIが使い辛い。

例)コードの書式 傲剣狂刀の試合時間を固定
:killbld:00000000:80B3EF:00000063:FFFFFFFF:タイム無限


◆3.EC(Emu Cheat)チート専用ツールについて

nebulaとは別ウィンドゥで立ち上げて使う。
各エミュレータやマジコンに対応した利便性の高いツール。
ファイル名.chtで各ゲームのチートを管理しています。

特徴
○海外(中華圏)で最も普及している。
○チート競合エラーが起きにくく最も安定している。
○難しいチートも色々と実現可能。
×日本での普及率は0なので使い方が難しい。

例)コードの書式 傲剣狂刀の試合時間を固定
[無限時間] ←任意をのタイトルを[]内に書く。
ON=B3EE,63 ←ONと書いているがここも実行とか任意でかまわない。


◆4.互換させるためのノウハウ
3つのアドレスを比較してみます。
@ @
↓   ↓
80 B3E E , 63  ←(nebula)datファイル
80 B3E F : 63  ←(MAME) datファイル
0 B3E E , 63  ←(EC)  chtファイル
差異は@の2ヶ所であるのが分かるかと思います。

ポイント
ECから他のツールへ変換する場合は、頭を80、81、FFに書き直します。
MAMEは、最後の@から1を減らして書き直します。
よってnebulaとMAMEは

80
81 + 4桁となる事が多いです。
FF

ECは頭を削って

0
1  + 3桁となる事が多いです。


◆5.実践
では『シンイーケン』のECコードをnebulaコードに変換してみましょう。

[ステージセレクト]
19572,7 ⇒ FF9572,7
解説
81+4桁、80+4桁を試しましたがうまくいきませんでした。
こういう場合はFFとするとうまくいきます。

[時間無限]
AC18,3A ⇒ 80AC18,3A
解説
頭が1ではないので80+4桁に変換します。
ちなみに81+4桁だと失敗します。

[1P無限気力ゲージ]
DA98,5 ⇒ 80DA98,5

[2P無限気力ゲージ]
DC54,5 ⇒ 80DC54,5

[1P体力]
1C67E,EA ⇒ 81C67E,EA
解説
頭が1なので81+4桁に変換します。

[2P体力0]
1C7BA,EA ⇒ 81C7BA,EA

[1P無限連]
1C6BE,0;1C6BF,0 ⇒ 81C6BE,0,81C6BF,0
解説
2つのアドレスで有効になるチートコードです。
ECでは①コード;②コード;③コードという用に連結します。
nebulaでは①コード,②コード,③コードという用に連結します。

[2P無限連]
1C7FA,0;1C7FB,0 ⇒ 81C7FA,0,81C7FB,0

[1Pキャラクターコード]
19555,C ⇒ 819555,C

[2Pキャラクターコード]
1955D,C ⇒ 81955D,C

[1P連撃数99]
C9B6,63 ⇒ 80C9B6,63

[2P連撃数99]
CA92,63 ⇒ 80CA92,63



最新の画像もっと見る