各種ツールの使用、チートコードの検索、使用は自己責任でお願いします。


今回はモンスターハンターXXのver.1.5.1のASMコードをCode.Updater.for.Nintendo.Switch.v1.1.3を使ってver.1.0.0に移植してみます。やり方としては、アップデートするときと同じです。ASMコードのことはわかりませんのでただコードをアップデートする一番基本的な使い方です。ここでは、Ryujinxの導入の仕方は省きます。

 

[Make All Produce List]
04000000 0054ADCC E3000309
04000000 0054AE7C E3000001
04000000 001919E4 E3000001
04000000 0051F838 E3000001
04000000 0051F8F0 E3000001

 

Ryujinxを使ってmainファイルをダンプします。今回は1.0.0なのでアップデータは適用していません。右クリックを押しExtract Data→ExeFS。保存場所が聞かれるので適当なフォルダを選択しOK。mainファイルを適当なファイル名にリネームここではmain_oldにリネームしました。mainファイル以外は削除してOK。

Ryujinxにアップデータを適用し、右クリックを押しExtract Data→ExeFS。保存場所が聞かれるので適当なフォルダを選択しOK。mainファイルを適当なファイル名にリネームここではmain_newにリネームしました。mainファイル以外は削除してOK。

Code.Updater.for.Nintendo.Switch.v1.1.3をダウンロード解凍。main_en.exeを実行する。

①に前のmainファイルここではver.1.5.1のmainファイルを読み込ませました。②に更新したい後のmainファイルを読み込ませます。ここではver.1.0.0のmainファイルを読み込ませました。

③に更新したいコードを入力後、④のstartをクリックしていくと⑤の所にコードが作成されます。

注意)候補が多すぎる場合などはエラーが表示されることがあります。

↓がver1.0.0で動作するASMコードです。

[Make All Produce List]
04000000 0054E0AC E3000309
04000000 0054E15C E3000001
04000000 001904FC E3000001
04000000 005227F8 E3000001
04000000 005228B0 E3000001

 エミュや実機でコード動作確認して下さい。


Interactive ASM Cheats Updaterダウンロード先 ASMコードのアップデート。

 

 

各種ツールの使用、チートコードの検索、使用は自己責任でお願いします。


[Breeze beta98d クラシックダンジョンX3 1.01 TID: 010088901E21C000 BID: C64D47A779997069]
[main+10f8140] + A5C41人目 exp float

 

↑のコードをコードをボタンを押したときにだけ効果あるコードにします。

[1人目 exp1000]

580F0000 010F8140
780F0000 0000A5C4
640F0000 00000000 447A0000

 

↑のコードの先頭と終わりにコードを追加します。

[1人目 exp1000]

80000000

580F0000 010F8140
780F0000 0000A5C4
640F0000 00000000 447A0000

20000000

 

 

AMS-AssignCheatButton.exeを起動しAtmosphere Codesに↑のコードをコピーして下のロードコードをクリック

使いたいボタンをクリックしSavecurrent activatorを押すとボタン押すコードが作成されますボタンは複数選択可能です。

 

ZL+ZR押した時動作するコード↓

[1人目 exp1000 ZL+ZR押した時]
80000300
580F0000 010F8140
780F0000 0000A5C4
640F0000 00000000 447A0000
20000000

 

PCエミュのRyujinxではパッドコードは動作しません。(確か?かはわかりません。)

8xxxxxxxで始まるコードが使えない場合は先頭の

8xxxxxxxと最後の20000000を削除すると動作することもあります。


AMS-AssignCheatButtonダウンロード先↓

注意)これは製品版クラシックダンジョンx3用のコード例です。

 

各種ツールの使用、チートコードの検索、使用は自己責任でお願いします。


40000000 00000000 XXXXXXXX
30000000 YYYYYYYY
04000000 00000000 00000063
78000000 ZZZZZZZZ
31000000

XXXXXXXX = Start Address
YYYYYYYY = How many time you want to execute the loop
The line after that is a WRITE32 to the address location
Every loop, increase address by ZZZZZZZZ

 

基本的なコードは↑のように書けばいいです。

XXXXXXXXに開始アドレス。YYYYYYYYに繰り返し回数。ZZZZZZZZに次のアドレスまで+アドレスです。

04000000 00000000 00000063に書き込む値

 

[Breeze beta98d クラシックダンジョンX3 1.01 TID: 010088901E21C000 BID: C64D47A779997069]
[main+10f8140] + A5C4 1人目 exp float
[main+10f8140] + 5950 2人目 exp float
[main+10f8140] + 59A4 3人目 exp float
[main+10f8140] + 59F8 4人目 exp float 以降+54h

 

↑のコードをコード化すると二人目以降は繰り返しコード化できるので

[1人目 exp1000]

580F0000 010F8140
780F0000 0000A5C4
640F0000 00000000 447A0000

[2人目 ~YYYYYYYY+1人目 exp1000]

580F0000 010F8140
780F0000 00005950

30000000 YYYYYYYY
640F0000 00000000 447A0000

780F0000 00000054
31000000

になります。

 

YYYYYYYY+1人目となっているのは2人目以降だからです。

 

注意)これは製品版クラシックダンジョンx3用のコード例です。

各種

switchdecheatwo

各種ツールの使用、チートコードの検索、使用は自己責任でお願いします。


ゲームを起動します。

Breezeを起動後Advance Cheat Menu。

Write Cheat to atm でチートを記載するファイルを作成します。

今回は経験値を検索してみます。

適当な敵を倒しステータス画面で経験値を確認してみます。今回は19ですね。

Edizonを起動しY

①u32、32bitなので

8bit = 0~255

16bit = 0~65,535

32bit = 0~4,294,967,295


②==

③範囲はHEAP+MAINで

④値を10進数で入力し検索します。値を変化させて候補を減らしていくと絞れ込めますがこのゲームの経験値の値はfloat(小数点)なので候補はサーチできません。

なので一度検索をリセットし①をfltにして検索していくと

3つまで絞りこまれました。ここまでしたら

Edit valueで値を変化させます。ひとつづつ変更してみたほうがいいです。二か所以上ある場合もあるので。

一番上がサーチ対象です。[HEAP+0023984D1C]なのでmain+XXXXじゃないのでポインターをサーチします。

PCでJnoexsを起動IPアドレスを入力し右下のconnectを押す。(画像はconnectを押したところです。)IPアドレスはswitchのインターネットで確認できます。

Refresh Pidsを押す

一覧から起動しているゲームのTidsをさがし選択Attach to Processを押す

接続されるので左の欄からmainと書かれている所を探し右クリックしSearch(start)、mainの一番下の所で右クリックしSearch(End)をクリックします。

サーチタブをクリックしSearchを押す。mainがダンプされます。

 

 

Pointer Searchのタブをクリック。下のmainの所に前の画面のstartのアドレスを入力後Browseを押してダンプしたファイルを選択。その下のaddressの値は

上のheap値12E700000+23984D1Cの値計算し入力。

↓はwindows11の電卓。上部の三をクリックプログラマーを選択。16進数なのでHEXを選択。あとは計算。

Serachを押すと二つに絞れ困れました。これをコード化しPCエミュなので使用できればほかのswitchでも使用できるポインターコードの完成です。

SXOS_CodeBuilderを起動。まずcode formatをpointerにByte to be writtenを32bitなので4Bytes。

Decscriptionの所にコードの名前。下のaddress(MAIN+0x)の所をクリックしnoexs format 右の欄に先ほど検索したポインターコードをコピペ。下の欄に値を入力します(今回は経験値なので適当に999を)。create codeを押すとコードが作成されます。

[exp999]
580F0000 010C8140
780F0000 000058FC
640F0000 000003E7

今回の一番上のコードは上になりますがBreezeにてエラーというか表示がおかしくなるので

[exp999]
580F0000 010C8140
780F0000 000058FC
640F0000 00000000 000003E7

に書き直して使用してください。

 

ソフトによっては対象が多すぎる場合には他のtoolを使い絞り込みコード化してください。

注意)これは体験版クラシックダンジョンx3用のコード例です。