GUC コードステーション情報
ソフト名 1.PARコード解説
ソフト品番情報
ソフト対応機種 PS(PlayStaition)
改造対応ツール
投稿者(敬称略) D-RAM【GUC】
投稿者連絡先 mopro@jade.dti.ne.jp
登録日 1999/07/26
更新日 1999/07/26
サーチ環境
コメント 「何か動作がおかしい」とか、「こういうことができるコードが欲しい」
また、「ここはこうするべきでは」等のご意見がありましたら、お手数ですが
D-RAM【GUC】
e-mail mopro@jade.dti.ne.jp
までメールをいただけると大変ありがたいです。


1.PARコード解説 コードサーチの前に、まず基本ということで PARコードについての解説です。 特にDコードは注意点が多いため、面倒でも 一通り目を通しておきましょう。 -------------------------------- 8コード -------------------------------- 指定したアドレスに2バイトの数値を書き込み続けます。 8コードは偶数アドレス(アドレスの末尾が0,2,4,6,8,A,C,E)にしか 使用することができず、奇数アドレスの場合は3コード2つに 分割して使用しなければなりません。具体的にいうと、 ×:80010203 1234 ○:30010203 0034   30010204 0012 このように分割すればよいわけです。 ちなみに、8コードで奇数アドレスを指定した場合、 改造ツールによっては3コードに自動変換されたり 偶数アドレスに補正されるものもありますが、 そうでない機種の場合はハングしてしまいます。 -------------------------------- 3コード -------------------------------- 指定したアドレスに1バイトの数値を書き込み続けます。 8コードと違って奇数アドレスも指定することができます。 ただし、1バイト分を書き込むということで、 データ部分に0100以上を指定した場合、上2桁は無効になります。 例えば、 30010200 1234 と入力しても、実際は 30010200 0034 と同じ動作をするということになります。 -------------------------------- Dコード(条件判断コード) -------------------------------- 指定したアドレスの値と指定した数値が一致した場合のみ、 次の1行のコードが実行される、といった機能があります。 よって、単体で使用することはできません。 Dコードも基本的に偶数アドレスに対してのみ、使用することができます。 (奇数アドレスを指定した場合は、大抵の改造ツールにおいて 偶数アドレスに補正される) 例: D00DC800 0001 80010200 0002 この場合、アドレス800DC800の値が0001と等しい時のみ 80010200に0002を書き込むといった処理を行います。 また、Dコードは改造ツールによって機能が異なるため、 ここでは個別に説明します。 (PAR1の場合) Dコードはアドレスの末尾が0,4,8,Cのいずれかであり、かつ データ部分が8000未満でないと正しく動作しない。 ただしアドレスの末尾が2,6,A,Eの場合は、Cコードで 代用することができる。 ○:アドレスの末尾が0,4,8,C・データ部分8000未満 ×:アドレスの末尾が0,4,8,C・データ部分8000以上 ○:アドレスの末尾が2,6,A,E・データ部分8000未満※ ○:アドレスの末尾が2,6,A,E・データ部分8000以上※ ※アドレス部分の先頭をDからCに変更する必要あり (PAR2の場合) Dコードはすべて偶数アドレスで使用可能で、 データ部分が8000以上でも動作する。 変換する手間が最も少なくて済む部類である。 ○:アドレスの末尾が0,4,8,C・データ部分8000未満 ○:アドレスの末尾が0,4,8,C・データ部分8000以上 ○:アドレスの末尾が2,6,A,E・データ部分8000未満※ ○:アドレスの末尾が2,6,A,E・データ部分8000以上※ ※Cコードとして記載されている場合は、Dコードに直す (PAR3の場合) 基本的にPAR2と同様だが、 Cコードが後述のマスターコードとして定義されている点が 異なる。 (PS X−Tの場合) PS X−TにもDコードはあるが、 一般的なDコードの役割を持っているのは、 実は7コードである。よって、すべてのDコードにおいて、 アドレス部分の先頭をDから7に変換しなくてはならない。 7コードはすべての偶数アドレスで使用可能だが、 初期バージョンではデータ部分が8000以上だと動作しない。 ○:アドレスの末尾が0,4,8,C・データ部分8000未満※ △:アドレスの末尾が0,4,8,C・データ部分8000以上※ ○:アドレスの末尾が2,6,A,E・データ部分8000未満※ △:アドレスの末尾が2,6,A,E・データ部分8000以上※ ※アドレス部分の先頭をD(またはC)から7に変更する必要あり (PS X−T2の場合) 基本的にPS X−Tと同じで、7コードに変換する必要があるが、 こちらはデータ部分が8000以上でも動作するようになっている。 ○:アドレスの末尾が0,4,8,C・データ部分8000未満※ ○:アドレスの末尾が0,4,8,C・データ部分8000以上※ ○:アドレスの末尾が2,6,A,E・データ部分8000未満※ ○:アドレスの末尾が2,6,A,E・データ部分8000以上※ ※アドレス部分の先頭をD(またはC)から7に変更する必要あり (caetlaの場合) PAR2とほぼ同様で、偶数アドレスであればすべて動作する。 一応PAR1のCコードも使用できるが、Dコードで代用できるので その必要性は薄い。 一部のパチモノPARに使用されているcaetlaの類似品も ここに分類される。 -------------------------------- マスターコード -------------------------------- Dコードの拡張版のようなもので、 指定したアドレスの値と指定した数値が一致した場合のみ、 入力した全てのコードが実行されます。 Dコードでは、 D00DC800 0001 80010200 0100 D00DC800 0001 80010202 0302 D00DC800 0001 80010204 0504 D00DC800 0001 80010206 0706 このような8行かかるコードが、マスターコードを使用すると (PAR3の場合) C00DC800 0001 80010200 0100 80010202 0302 80010204 0504 80010206 0706 このように5行で済むようになります。 マスターコードは、 PAR3:Cコード PS X−T・X−T2:Dコード・Fコード 注・初期のPS X−Tではデータ部分が8000以上だと動作しない。 以上の改造ツールでのみ使用できます。 -------------------------------- 10コード・20コード(プラスコード) -------------------------------- PAR2以降専用のコードですが、以外な使い道があるので、 ここで説明しておきます。 1コードは、指定したアドレスに2バイトの数値を、 2コードは1バイトの数値を加算し続けるコードです。 この、「加算し続ける」というのがミソで、1ずつ加算するようにしても、 1秒に何十という数値が加算されてしまいます。 これを利用して、擬似的な乱数を発生することができそうです。 例えば、 ファイナルファンタジー[ エンカウント時の敵キャラセレクト 80081928 0xxx (xxx=000〜3FF) これを、 10081928 0001 D0081928 0400 80081928 0000 このようにすると、「エンカウント時の敵キャラランダム変化」になります。 80081928の数値を1ずつ増加させていって、 その数値が有効な数値の上限を超えたら、下限の数値に設定するわけです。 他にも例を挙げますと、 ファイナルファンタジー[ 1個目の所持アイテムセレクト 30076BDC 00xx (xx=01〜C6) =>1個目の所持アイテムランダム変化 20076BDC 0001 D0076BDC 00C7 30076BDC 0001 キャラクターセレクト(スコール) 30076530 000x (x=0〜A) =>キャラクターランダム変化(スコール) 20076530 0001 D0076530 000B 30076530 0000 元のコードが3コード(1バイト書き込み)の場合、プラスコードも それに合わせる必要が出てきます。 これらをまとめると、 ○○セレクトから○○ランダム変化のコードを作成 ○○セレクト 80xxxxxx yyyy (yyyy=zzzz〜????) =>○○ランダム変化 10xxxxxx 0001 D0xxxxxx (????+1) 80xxxxxx zzzz または、 ○○セレクト 30xxxxxx 00yy (yy=zz〜??) =>○○ランダム変化 20xxxxxx 0001 D0xxxxxx 00(??+1) 30xxxxxx 00zz (zz=00,??=FFの場合のみ) 20xxxxxx 0001 このようになります。ライフなどの数値が視認できるものの場合は、 法則性が分かってしまうので、やはりアイテム・キャラクターセレクト等に 使用するのがベストでしょう。 -------------------------------- 参考文献 Lips氏著 Pro Action Replay / caetla コード解説 GUC改造コードの杜過去ログ



無断転載・無断商用利用・無断直接リンク禁止
ホームページサイト登録はこちらゲーム個別検索登録はこちら