AR MAX基本情報

1.プログラムの展開位置
2.コードフォーマット
3.チェックコードについて
4.ゲームIDについて
5.コードIDについて
6.リージョンについて
7.チェックコード作成例
8.ヘッダーリストの変化


・プログラムの展開位置
AR MAXのプログラムは過去のPS2PARとは大きく異なり 良くプログラム埋め込みコードなどに使用している 「$000f0000」から展開されるようになっています。 それでも「$000ee000」か「$000ff000」あたりは空いてるようなので 空きメモリを埋め込みコードに使う場合はここ周辺を使用しましょう ただし他の人と被る可能性はぐっと高くなります。
・コードフォーマット 暗号化時は「xxxx-xxxx-xxxxx」の13ケタ 暗号化前の生コード時は「xxxxxxxx yyyyyyyy」の16ケタで構成され 生コード時は今まで良く使っていた通常の16進数 暗号化時は0〜9、A〜Zの独自表記になっています。 一時期「32進数?」と言われたりもしましたが 暗号化時に16進数を他のローマ字に当てはめているので 正確には進数と呼べる物ではないと思います。 O、I、L、Sの4つはコードに使用されていないので 個数としては32個になります。 暗号化←→復号化ツールは海外のサイトで公開されており http://www.gscentral.com/ にてダウンロード可能です、当然メニューなどは全部英語ですが どれも難しい単語ではありません。
・コードIDなどを含むチェックコードについて GC-PARを持っている方にはすでにお馴染みとなった 通常のコードの手前に付加されるチェックコード これは同じコードタイプを持つAR MAXでも存在します。 GC-PARと違う点は、ゲームIDやコードIDの幅が広がり GC-PARのコードIDは65535個まででしたが AR MAXではそれが524287個に増えるなど 他の人と重複する可能性がより少なくなりました。 チェックコードは64bitで成り立っており おおまかに各ビットの役割を分けると 0000xxxxxxxxxxxx xyyyyyyyyyyyyyyy yyyyz0ss100000000000 0000000000000000 コードとしての入力時(16進数)には 0xxxyyyy yz800000 (zとsは同位) という書式になり、各ローマ字部分は x=ゲームID y=コードID z=マスターコード s=リージョン と定義されています。
・ゲームIDについて ゲーム全体の通し番号です マスターコードで使用したIDがそのゲームのIDになり (仮にここではマスターIDと呼びます) そのゲームで以降に入力するコード全てでIDが一致しなければいけません マスターIDと違うゲームIDのコードは全て入力拒否されます。 また、他のゲームとマスターIDがかぶっても入力が拒否され 仮にファイナルファンタジー10のマスターIDが1E4だった場合 他のゲームで1E4というマスターIDは使えません つまりユニークでなければいけないという事です。 ゲームIDは最大で0〜1FFFhですがビットの位置が少しズレてるので チェックコードには単純に1FFFなどと入力してはいけません。 幸いにも「ゲームIDを2で割った値を入れれば良い」 という法則があるので、ゲームID÷2hで覚えましょう。 (GCはID×2hですがAR MAXは逆なので注意)  ちなみに実際はこういった手順で変換します  例:コードIDを1234とした場合  1234を2進数化「1001000110100」    ↓  これをxに当てはめる    ↓  0000100100011010 0000000000000000 00000000100000000000 0000000000000000  (例なのでy,z,sには0をセットしています。)    ↓  16進数化「091A0000 00800000」  となり、2で割ったのと同じ値になります。
・コードIDについて コードIDは主に重複してはいけないコードの時に効果があり 同じIDのコードは入力、または併用できないようになっています 体力MAX、体力半分などのコードがあった場合 間違ってMAXと半分を同時使用しないようにするために どちらかしか使えないように制限できます。 これはマスターIDとは違い、他のゲームとコードIDが被ったとしても ゲーム自体が違うので入力には何も問題はありません。 IDは19bit(0〜7FFFF)もあるので適当に振り分けても大丈夫だと思いますが 自分なりのIDを考えておくと良いかもしれません。
・マスターコード&リージョンについて zとsは16進数にすると一桁にまとめられ 8=USマスターコード 0=US通常コード 9=UKマスターコード 1=UK通常コード A=JPマスターコード 2=JP通常コード と定義されています。 日本のPAR3では通常書き込みのコードに使う時は2 マスターコードに使う時はAを指定すればOKです ちなみに海外のAR MAXではJPリージョンは動かないので リージョン設定はそのツールの販売国を指定して下さい。 チェックコードや通常コードに何か間違いがあると MAXcryptで「暗号化←→復号化」する段階でエラーが表示されます エラーが出たら必ずどこかが間違っているという事なので 間違いが無いか再チェックして下さい。 また、AR MAX側でもコード入力時にチェックが行われ 入力ミスや使えないコードがあるとエラーメッセージが出ます 監視が厳しいですが、間違い入力や嘘コードは減るので 親切な機能といえば親切だと思います。 ちなみに、最初のほうでO、I、L、Sの4つは使わないと書きましたが 実はオーとゼロ、アイとイチは同じ物として認識されていて ゼロの代わりにオー、イチの代わりにアイを入力しても 正しいコードとして入力が出来るようになっています。 (AR入力時のみ有効、ツールで変換する時はエラーが出ます)
・チェックコード作成例 実際に上記までの情報通りにチェックコードを作成すると このようなチェックコードになります。 ゲームID:0048 コードID:02020 リージョン:JPマスター 00240202 0A800000 ゲームID:1052 コードID:13A22 リージョン:JP通常 082913A2 22800000 ゲームID:1FFF コードID:1FFFF リージョン:JPマスター 0FFF9FFF FA800000
・ヘッダーリストの変化 PAR2までのコードと違い、ヘッダー部分が2ケタあるので 使用アドレスが01000000以上か未満かにより 少しだけヘッダーに変化が出ます。 例えば00123450にデータを書き込む時と 01123450にデータを書き込む時を例にすると 00123450にワード値を書き込む場合 [04]123450 zzzzzzzz -------------------------------- 01123450にワード値を書き込む場合 [05]123450 zzzzzzzz と、ヘッダーにアドレスを加算する必要があり PAR2と同じ気持ちでコードを作るとミスする可能性があります $01000000以上のアドレスを使うコードの時は ヘッダーにアドレスを加算する事を忘れないで下さい。
・余談 AR MAXはメニュー画面などで音楽が流れるようになっています そのファイルはMP3形式で収録されているので ディスクを開いてそのままHDDにコピーするとPCでも聞けます。 AR MAXにはDVDのリージョン解除機能も付いていますが この機能は諸問題でPAR3では削除されているようです。 でもDVDのリージョンフリー方法はいくらでもありますし 普通のユーザーには無くても全く問題は無いでしょう。 AR MAXにもちゃんとバージョンは存在していて おなじみのディスク裏に記入されているので 何かコードの問題などがあったらVer確認もしましょう。 現在、AR MAXで確認出来てるVerは3.10と3.14の2種ですが 情報が少ないので他にもいくつか存在してると思います。 コードリージョンについてですが、AR MAXの説明書には 「US/UK」と記載されてるのでUKリージョンも動くと思います そこまで試していないので確かではありませんが 少なくともJPリージョンが登録出来ないのは確認済みです。 (登録してもタイトルが表示されません)