X

【Breeze】 Switchチートコードスレ Part.6

■ このスレッドは過去ログ倉庫に格納されています
1名無しさん@お腹いっぱい。
垢版 |
2024/04/08(月) 00:41:09.68ID:fLmlkE4T
ゲームのバージョンをアップデートした場合
Tinfoil、DBIにてゲームソフトのバージョン情報の削除 リセットが可能です

【Switch改造便利ツール】
Edizon SE
Breeze
DBI
Tinfoil
IDA Pro
Noexes tomvita ver
PointerSearcher SE
Interactive ASM Cheats Updater
SX Cheat Code Tool
SXOS_CodeBuilder_b7 改良版
AMS-AssignCheatButton

【前スレ】
【Switch】SXOSチートコードスレ Part.5
https://medaka.5ch.net/test/read.cgi/gameurawaza/1701434884/
754名無しさん@お腹いっぱい。
垢版 |
2024/07/24(水) 21:35:50.69ID:gvqfYMo3
>>751
パワプロ2022の[期間外でも新入生スカウト可能],[年度内スカウト回数制限なし],[学校評判不足でも他県にスカウト行ける],のコードは移植できましたでしょうか?できたのであれば教えていただけませんか?。よろしくお願いします
755名無しさん@お腹いっぱい。
垢版 |
2024/07/24(水) 22:02:45.13ID:ltdYj/I+
>>751
すごい
無能だからポインタコードしか作れないから
憧れるわ
消しとくから上げて下さい
2024/07/24(水) 22:11:55.03ID:D3J8Vmwa
>>753
逆アセありきの話だけど今作は国際化を目指しているのか文字コードがこれまでの
ちょっと変わったシフトJISからUTF8に変更されて文字列検索がやりやすくなった
そしてパワプロのメッセージは大体メインファイルに含まれているのでそのメッセージを
参照してるところにBP仕掛けると解決できることもある
たしか開発ランクについてはそのエラーメッセージで場所を特定して作った気がする
ランク自体は毎回関数で計算表示されているのでメモリにはなく検索はできないかも
上限下限値についてはたしか一番左を0として一番右がE(14)だと思ったのでそれで1Byte検索
後はBP仕掛けて値を変えた時にブレークするところから上限下限値を書き換えるだけ
とりあえずやってみたいなら上記方法で現在値を検索するとそのすぐ後ろに下限値と上限値が設定されているので
それを下限値を0上限値を14に書き換えればおそらくチャックが外れる
ミニゲームなしてについてはこれもたしかミニゲームメッセージにBPを仕掛けて参照しているところを調べたら
ミニゲームの種類を返す関数があったのでそれの戻り値を2(ミニゲームなし)に書き換えるだけ

>>754
期間外については今作はアイテムで任意にスカウトできるので特に移植の必要性を感じなかった
評判不足の方はすぐに名門にしてしまったので作る機会がなく忘れてた
何度でもスカウト可能は移植したはず
これもエラーメッセージから調べたんだと思うスカウトに行くと回数をインクリメントしているので
その回数を0に書き換えてやる
スカウト期間外のメッセージもそのすぐ下にあるので移植したければ簡単かと思う
使ってみた感じは都道府県全て回れるけどスカウト上限は10人(これは名門だったからかもしれないけど)で
それ以上スカウトしても一人目が上書きされるだけだった
逆アセ無理でもこれはスカウトに行った回数を1Byteでメモリ内に保存しているので何度かスカウトと
検索を繰り返してアドレスを特定して0に書き換えれば何度でもスカウトいけるはず
栄冠ポインタは[main+0x6E2C568, 8]なのでそこからの差分でポインタこおど作れるかもね
2024/07/24(水) 22:17:19.42ID:D3J8Vmwa
>>756
チャックじゃなくてチェックでしたorz
検索するのは効果値を上下させてその値を一番左を0とした値からみて1Byteで検索ってこと
758名無しさん@お腹いっぱい。
垢版 |
2024/07/24(水) 22:20:59.79ID:gvqfYMo3
>>756
ただのクレクレにここまで真摯に答えていただけるとも思っていませんでした。理由や移植したコードのことも教えていただきありがとうございました。
759名無しさん@お腹いっぱい。
垢版 |
2024/07/24(水) 22:37:51.82ID:8hhAHjFK
>>756
詳しくありがとう!
文字列からサーチする発想がなかった

Switchゲームを逆アセしようとしたら、何のツールがオススメ?
2024/07/24(水) 23:13:03.62ID:D3J8Vmwa
エミュで動作する場合は
yuzu系エミュ + Cheat Engine + IDA(or 入手困難な場合はGhidra)

エミュで動作しない場合は
実機 + Edizon SE + IDA(or Ghidra)
上の構成はDQ11以来ここ何年もやってないので参考にはしない方が良いと思う
次に実機でやる機会があればbreeze使いたいと思ってたけど機会が来ない
yuzu系エミュは存続自体怪しいのでその内実機でやるようになるかも
761名無しさん@お腹いっぱい。
垢版 |
2024/07/24(水) 23:36:26.16ID:8hhAHjFK
>>760
なるほど
emu+Cheat Engine使ってるのね
IDAってのを調べてみる

ちなみにミニゲームなしにするには、何の文字列検索したの?
ミニゲーム文字列ってことで早押しとかフライとか色々検索したけどヒットしないのよね
例えば「早押し」ならE697A9E68ABCE381で検索すればいいんよね?
2024/07/24(水) 23:53:08.42ID:D3J8Vmwa
>>761
普通にエンコードをutf-8にして文字列検索で良い気がするけど16進数でAOB検索するなら
早押し!選球眼はArray of byte検索で
E6 97 A9 E6 8A BC E3 81 97 EF BC 81 E9 81 B8 E7 90 83 E7 9C BC
当該アドレスをADRL命令で参照しているのが1箇所あるのでほんの少し上を見るとSwitch文でミニゲーム出力を切り分けている
でその直前でSwitchする条件の値をとってくる関数を読んでいるのでその戻り値を強制的に2(ミニゲームなし)にしてやるとミニゲームしなくなる
763名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 02:07:16.35ID:giwAjHa8
本当に頭いいんだろうな、勉強になります
2024/07/25(木) 02:15:20.43ID:stPsKhVQ
アイテム系はエミュで効くのないね
Liteなのに画面割れちゃってるからエミュでやってる
親切な方、エミュでも効くコードお願いします
765名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 07:22:28.07ID:YKG7oydL
俺はyuzuで全部効いてるんだけどなんでかな
2024/07/25(木) 08:27:53.02ID:CWOG5i+L
早く上げてもらっていいですか?
767名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 08:52:35.23ID:+eaztMW4
>>761
詳しくありがとん!
試してみる
2024/07/25(木) 09:08:11.10ID:v2bTFBEK
システム最高球速175から999km毎時へ変更ってどうやって作るんすか
2024/07/25(木) 13:17:09.45ID:TPqiJ4wJ
>>768
増減ちゃうん
2024/07/25(木) 13:19:38.46ID:TPqiJ4wJ
>>768
違うわ現在の最高球速を検索するか
限界値を変更すればいいんちゃうん
2024/07/25(木) 19:25:17.67ID:g+NmJRuu
>>765
yuzuで動かしたら本当に動いたわサンクス
2024/07/25(木) 19:33:28.51ID:iSyaop6V
>>771
ユズのほうがチートは優秀だよ(設定めんどくさいけど)
龍神は効かないやつ多いけどユズはだいたいきく
2024/07/25(木) 20:02:15.07ID:OY/Uu+4X
>>742
[ターン経過しない(パワフェス)]
04000000 00E561E4 0B1F0108

これをYuzuで動かしてみたいんだけどテキストの参考例教えてくれないかな?
記述がまずいのかクラッシュしてしまう
BIDは6ABD7E11546A67B0で合ってるよね?
774名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 20:12:42.04ID:+eaztMW4
yuzuでパワプロ動く?
パワフェスのミニゲーム入るとこでフリーズしちゃうわ
>>762のサーチ試そうとしたけど、最初から頓挫だわ

IDAは使い方が分からんね
cheatengineだけではコード作れないかな?
2024/07/25(木) 21:09:19.90ID:XHvZ+sch
>>768
これは単純な話でプログラム内で下限60.0、上限175.0に補正しているだけ
即値でのチェックを行っているため残念ながらデータの書き換えではできない
ただ球速は7Bitで保存された値に下限80を加算されて表示されている
7bitの範囲は0~127なので球速範囲はどうしても80~207km/hになるため
システム制限外しただけではあまり効果がない
球速自体をN倍したり、球種毎に速度係数が設定されているのでそれを書換たり
しないと60km/hを下回ったり、207km/hを上回ったりはあまりできない
球種毎の係数はmain+0x5505290にあるのでそれを弄ってみたら少しはわかるかも
左からストレート、本気ストレート・・・
1.0、1.0、0.976、0.946、0.56、0.905、0.949、0.952、0.81、0.743、0.845、
0.872、0.845、0.855、0.872、0.837、0.797、0.905、0.935、0.837、0.851、
0.851、0.905、0.837、0.929、0.946、1.0、1.0、0.87、0.94

>>773
BIDは合ってる
実機、エミュともに有効だしあまり他のこおどと競合することはないと思う
自分はそれを使ってどうこうなったことないからわからないけど
そのこおどのみ使用・不使用で試してそれでも落ちる・落ちないなら使わない

>>774
動くけど試合遷移時など頻繁に落ちるのでこおどだけ作成してゲームは実機でやる
関係ないけどRyujinxは落ちないけど動作がもっさりする(ドライバのバージョン落とすとかあるみたいだけど)
自分がyuzu系を使用しているのはデバッガーが利用できるその一点のみ
実機はもちろん他の人とは違ってむしろRyujinxよりこおどは動きにくいと思う
IDAというかmainファイルのARMプログラムを逆アセしないとADRL命令のアドレスがわからない
Cheat Engineだけで作成することも出来るだろうけど、それはもうエミュ専用こおどになって
実機でも他のエミュでも使えないからあまり意味があるとは思えない
776名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 21:21:27.40ID:3Docpaht
龍神で動かないコードってループあるやつでしょ
龍神だとループコードにエンドあるとなぜか動かないのは何年も前から指摘されてる
エンド消すだけで動く
2024/07/25(木) 21:47:40.20ID:XHvZ+sch
そういえばたまにそういえばループ命令で20000000を入れている人ちらほら見るけどこれって要るの?
他にもこおどの終わりで無条件に入れている人も見かける
Code Type 0x2の説明見ると対象はType 0x1 or Code Type 0x8になってるし
Code Type 0x3はEnd Loop Encoding (310R0000)が用意されているから要らないと
思ってたんだけど入れている人ここ以外でもちらほら見かけるし何らかの理由があって
あえて入れているのかと思ってたんだけどどっちが正しいのかわかる人いる?
他にもCode Type 0xC0でも終了場所がわからないから入れてるけど、
これは後で追加されたこおどタイプだからCode Type 0x2の説明から漏れてるだけかなと思ってる
2024/07/25(木) 22:14:46.34ID:dmamRxyX
Yuzuってもう更新してないよね
4176が最後だと思うけど有志が続けてたりするんだろうか
2024/07/25(木) 22:48:27.58ID:mytfo0i9
>>776
具体的にどう変えればいいかおしえてくださいよ
2024/07/25(木) 22:52:27.84ID:mytfo0i9
添付の神がコード消しちゃってる…
だれかマイライフの体力やる気のコードだけでも貼ってくれませんか
2024/07/25(木) 22:58:33.45ID:7Ke01tS9
あれ何だったんだろ
レベル稼ぎしたかったとかなのだろうか
782名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 23:02:29.96ID:EAtOl3Km
>>780
[体力 やる気]
580F0000 0C8C26B0
580F1000 00000008
580F1000 00000008
780F0000 00013AEC
640F0000 00000000 00640064
780F0000 00000004
640F0000 00000000 00000190
783名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 23:43:36.43ID:EAtOl3Km
>>777
多分大半がわからないで入れてる
SXOS_CodeBuilderでコードを作ったり
他人のループコード真似して作って20000000が入ってる
意地悪でエミュで使われたくないからとか入れてるとかはありそう
784名無しさん@お腹いっぱい。
垢版 |
2024/07/25(木) 23:44:56.55ID:+eaztMW4
>>775
mainファイルを逆アセできる環境を整えるところから始めないといけんのか
先は長そうだけど地道に頑張ってみるわ
いろいろありがとう
気が向いてコードを公開してくることを期待して待ってる
2024/07/25(木) 23:45:22.96ID:Jisrjk8i
サガスカまだかよ
本当に無能しかいねぇな
2024/07/26(金) 00:56:23.02ID:Uk4hEyZK
>>772
動いたと思ったら試合で必ず落ちるわ。
他の人は落ちないのかしら?
2024/07/26(金) 03:15:29.93ID:ib91jaI/
>>786
チートなしでも俺も落ちた
思い出せばそれが原因でRyujinxへ移行したんだった
2024/07/26(金) 03:22:00.60ID:68yArhf1
サクセスアイテム99個のコードってありますか?探しても見当たらない...
2024/07/26(金) 03:49:14.82ID:aa2mP5ug
>>788
エミュならない
2024/07/26(金) 04:49:05.86ID:ha/uM2xe
>>778
Yuzuは任天堂から訴えられたからね
2024/07/26(金) 08:19:30.05ID:kUChfVib
レナティスのチート作ってくれる物好きはいませんか
2024/07/26(金) 08:44:47.57ID:SwJZcnlI
すまんな腐龍のゲームはいつも騙されるんで手を出さないことにしてるんだ
きっと見た目に騙された外国人が対応してくれるさ
793名無しさん@お腹いっぱい。
垢版 |
2024/07/26(金) 10:25:27.57ID:2oR1eRQC
レナティスう2に来たーwww
794名無しさん@お腹いっぱい。
垢版 |
2024/07/26(金) 11:13:46.07ID:HHT3bZJO
ここには割れ厨しかいねえな
2024/07/26(金) 12:43:58.78ID:2oR1eRQC
勝ってるやつはすくない
2024/07/26(金) 12:48:24.62ID:4oA9qGMk
人生勝ち組は買う
2024/07/26(金) 13:07:13.80ID:zLnrPZl0
パワフェスでやっとレアキャラを仲間にしたのにエラーで落ちた
絶望的すぎる
上の方で出てたミニゲームなしで仲間になるチートが切実に欲しい
マップに好きなキャラだせるチートとかない?
マップのアドレスと出現してる選手の数値とかってサーチできる?
2024/07/26(金) 14:49:12.59ID:iO/l3bE6
ルルアのアトリエ
TID[0100B2B00BDEE000]
BID[BB6A24337631CB28]

ネルケと伝説の錬金術士たち
TID[0100F4C00B1DE000]
BID[A62C044AD807BCBF]

これの60fpsのチートもしくはMODの情報無いでしょうか?
よろしくお願いします
2024/07/26(金) 17:55:52.75ID:xqjjmbQA
PC版やれよw
800名無しさん@お腹いっぱい。
垢版 |
2024/07/26(金) 19:04:22.30ID:mntTItZj
>>751
メガテンうpしたろだってどこよ
どこにもないぞ
gbaにパワプロ上げてた人が他に神こおどがうpされたから消します
って削除しちゃったんだが
そんな神こおどどこにあるねん
2024/07/26(金) 19:31:52.73ID:Qk1L6IB/
>>775
全部175には簡単に出来ましたが
球速はn倍にしたいのですが近くにあるのでしょうか?
802名無しさん@お腹いっぱい。
垢版 |
2024/07/26(金) 20:29:39.41ID:eBVZHcLJ
悲しいかないろいろなサイトでパワプロ2024の改造コード公開してくれてる人は削除やら更新しないってなってしまって、一番解析できた人も公開する気はないようで自分みたいなただコードを待つ人はあきらめるしかないのか・・・
2024/07/26(金) 21:02:08.70ID:JHETuauG
>>800
オン機能があるから少なくとも自分は742の代替コードを除いてパワプロ2024は1件も投稿していない

>>801
175にしたというのは球種毎の速度係数を大きめにして175が出るようにしたってこと?
なら球速n倍はその係数をn倍した値にすればなっています
でも上で書いた通りシステムの速度上限により補正されます(投手自身の球速上限チェックもあったかも)
球種毎の速度係数はあくまでメモリ上に存在する本来静的なデータの書き換えになりますが
上のチェックはプログラムでの即値チェック(レジスタに値が読み込まれる)にメモリ上には存在しないため
レジスタに読み込まれる即値を修正しない(プログラムの書き換え)と無理です
同じメインファイルの話なのでアドレス差が近いと言えば近いですが数百バイト以内にありませんし
あったところで書き換える値がわからないと思います
具体的な方法としてはメインファイルの逆アセリストをテキスト検索で#0x432F0000(あるいは#1127153664)で
20件ヒットしてその19件目、ちょい上で最低球速の#0x42700000(60.0)とかを設定しているところです
値を#0x432F0000(175.0)から#0x447A0000(1000.0)に変更すればシステム上の球速上限が999km/hになります
どうしてもやりたきゃE8 65 A8 52 81 18 22 1E でAOB検索すると1件ヒットするはずなので
E8 65 A8 52 を 48 8F A8 52 に変更する
2024/07/26(金) 21:05:35.71ID:7+MGrsz4
[新球種開発ランク制限なし(共通)]
[新球種開発下限上限制限なし(共通)]
[選手図鑑開くと図鑑全開(パワフェス)]
[選手図鑑開くとLV10(パワフェス)]
[ミニゲームなしでスカウト可能(パワフェス)]

ロダの場所は知ってるが本当コード名だけなのな
こんだけあればもう何も要らないけど出来ますか?
805名無しさん@お腹いっぱい。
垢版 |
2024/07/26(金) 21:27:04.74ID:fPVZMPYM
ペナントでの経験値を2倍や4倍に出来るコード誰か作れませんか?サクセスや栄光ナインみたいに特能本がないから辛い。。
2024/07/26(金) 23:02:26.19ID:30P+NRuR
アイテム系コード
ループの20000000消してもやっぱ竜神じゃ効かないな
ただけすだけじゃだめなんか
2024/07/26(金) 23:06:33.65ID:UVusQaYv
>>806
普通に実機でやったら
コード投稿してくれた人も動かないって何度も書かれたら気分悪くなるかもしれんぞ
2024/07/26(金) 23:19:51.00ID:fU3nMvGO
凶悪ブラジル人アスンサオファビオ
2024/07/27(土) 01:01:11.73ID:IAjn24YE
むしろ龍神とCTで特殊能力を金特に書き換えたいんだが?(´・ω・`)
プロ助けて(´・ω・`)
810名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 02:49:38.45ID:j/Tj6q4J
>>798です
他で2つとも解決しました
2024/07/27(土) 03:02:02.81ID:HVQM6gue
解決したならその内容を書けよ
まともな回答したやついないし
そんな情報誰もいらんかもしれんが
解決しましたとだけ書くぐらいなら
いっそ最初から書かないか
解決した内容を書くかしろ
2024/07/27(土) 10:46:50.04ID:iNJCOzHq
龍神だけど栄冠系のコードは全部効果あるな
サクセスのアイテム以外使えたから自分はサクセスやらんから助かりまくってる
2024/07/27(土) 12:24:12.25ID:fnKUEOXN
パワプロ 2024ですが投げる球種を表示することは難しいのでしょうか?
2024/07/27(土) 13:39:04.46ID:+zthEm/O
>>803
ありがとうございます
やってみます
815名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 13:48:13.96ID:+MaPJawF
逆アセ環境つくるためにmainファイル(NSOファイル)をELFファイルに変換したいけど
nx2elf.exeやdecompress.cmdにmainファイルをD&Dしても変換できない

それならばとelfに変換せずGhidra-Switch-Loaderを使えないかと思ったけど
Install Extensionでプラスマークからzipを選択してもエラーが出て導入できない

この辺の導入解説してるサイトとかないかな
2024/07/27(土) 15:43:18.65ID:kMj7TmDm
>>813
あれから他のモードもやって色々追加する過程で対決!レジェンドバトルで表示させるために作ってみた
作り方は打撃練習でオプションのCOMタブからCOM球種ガイドで選択(方向・球種、方向、表示しない))を
変更してからOK押してからタイム画面に戻り変動サーチしてアドレスを絞り込む
後は絞り込んだアドレスに読込BPを仕掛けてタイムを解除するとブレークするので、アドレスから値を
取得するところを方向・球種など自分が設定したい値を設定するように書き換える
これでパワフェスや対決!レジェンドバトルなど他モードでも表示されるようになる(ホームランアタックは別)
同様の手順で他の項目(例えばCOM投球カーソルなど)にも利用できる

>>814
こっちもやっぱり必要だったのでこれだけ付けておきす
[投手自身の最高球速チェック無効(共通)]
04000000 0285F2DC D503201F

>>815
上手くいくかどうかわからないけどCode Updater for Nintendo SwitchのOldとNewのmainを読み込ませる
適当に814のコードを貼り付けて変換を掛け右下のSaveNSOボタンを押してmainファイルを出力して
それに対してnx2elf.exeを試してみるとか
2024/07/27(土) 16:38:52.58ID:PFBScfpe
サクセス編だけどアイテムコードが動くyuzuでキャラ作って中断セーブ
そして竜神にセーブデータコピペして開始すると問題なくアイテム使える環境にはなった
ちょっとめんどくさいけど試合で確実フリーズするyuzuよりかはいいんじゃないかな
2024/07/27(土) 16:40:32.33ID:do1r4slU
…実機でやれば良いだけのはずなんだが…
2024/07/27(土) 17:14:32.41ID:YUdO4UiM
>>818
酢まん割れ中なんだろ
820名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 17:29:30.10ID:boYv8lkZ
>>816
IDAとギドラの使い方を教えて
↓ここのこおどアプデのガイドでは
https://github.com/StevensND/ghidra-port-mods-guide
龍神でExeFSファイルを展開してギドラで読み込んでるけど
何を読み込んでどんな風にこおど作ってるの?
821名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 17:33:22.61ID:boYv8lkZ
>>815
https://github.com/StevensND/ghidra-port-mods-guide
ここにちょうどSwitchLoaderのインストールもある
822名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 19:50:39.73ID:+MaPJawF
>>816
ありがとう
無事にGhidraでmainファイル読み込めた

まず答えがすぐ出そうな>>803を試してみた
#0x432F0000をテキスト検索して該当の箇所が見つかったけど
Ghidraの結果とmainファイルで直にE8 65 A8 52 81 18 22 1EをAOB検索して出た結果では0x100000くらいズレが出るけど
ズレの出ないようにサーチする方法はないのかな

Ghidraのサーチ結果:text::02761234
Mainファイルの結果:02831234
出して良いのか分からなかったから、数値は下4桁適当です

>>821
ありがとう
見てみる
2024/07/27(土) 21:03:34.69ID:kMj7TmDm
>>820,822
Ghidraについては故障前のPCで使ったことがある程度で現在インストールもされていないので解りません
上で書いた方法で変換を掛けたelfファイルから0x48バイト目にある値(0x838)バイト分のヘッダを削除したものに対してdevkitproの以下のコマンドを実行したらIDAの結果と一致したのでelfファイルに問題ないと思います
aarch64-none-elf-objdump -D -b binary -m aarch64 no-aliases --disassemble-zeroes --start-address=0x2830400 --stop-address=0x2830500 -EL elfファイルへのフルパス
Ghidra使ってみた時の記憶にもアドレスがズレるようなことはなかった気がするので何か設定など間違っているのではないでしょうか
824名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 21:17:22.96ID:PM/lwDSA
>>776
ありがとうございます。
こぉどの仕組みは全然知らなかったけれど、とりあえずループとエンドを消して力技で行数増やすことで龍神でもこぉどが動きました。
正しい方法ではないとは思うけど、とりあえず動いたので参考に貼っておきます。

[サクセスアイテム全部 99個]
580F0000 0CAD1A20
580F1000 00000908
580F1000 00000220
#780F0000 00000004
#640F0000 00000000 63636363

経験値999のこぉどみたいに#の行をあと71個増やすと全部のアイテムが出ました。
825名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 23:33:45.54ID:boYv8lkZ
>>823
試しに龍神で展開したExeFSのmainを読み込んで
>>822
のEB 65 A8 52 81 18 22 1Eで検索したら
2830000ら辺がヒットした
もしかしてこのやり方でもできる?
826名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 23:50:35.59ID:boYv8lkZ
>>824
もしかして

580F0000 0CAD1A20
580F1000 00000908
580F1000 00000220
300E0000 00000051
640F0000 00000000 63636363
780F0000 00000004
310E0000

で動く?
元の見たらループ開始がコピペミスなのか2つあったからそれが原因かな
2024/07/27(土) 23:55:45.93ID:kMj7TmDm
>>825
多分ちゃんと>>821が機能してmainファイルを直接読み込めているんじゃないですか
828名無しさん@お腹いっぱい。
垢版 |
2024/07/27(土) 23:59:02.57ID:+MaPJawF
>>823
いつも丁寧にありがとうございます
elfファイル0x48バイト目にある値(0x838)バイト分のヘッダを削除したアドレスと一致するようになりました
これでARMプログラムを逆アセできる環境が整ったので、コード作成にチャレンジしてきたいです

ただ、私の環境ではyuzuもRyujinxも落ちてしまうのでCheatEngineでブレイクポイントを仕掛けたりができません
この場合、例えば>>816のように
>絞り込んだアドレスに読込BPを仕掛けてタイムを解除するとブレークする
ようなことはどうすれば可能になりますか
Switch(CFW)、Edizon SE、Breeze、jnoexs、CheatEngine、 Ghidraは使える環境です
829名無しさん@お腹いっぱい。
垢版 |
2024/07/28(日) 00:14:44.55ID:JGOSwvpJ
パワフェス選手図鑑埋めってあったりしませんか?
2024/07/28(日) 00:23:13.65ID:xY5L/Mre
>>828
多分だけど>>821を導入してmain.elfではなく直接直接main(nso)ファイルを読み込めるようにしておいた方が良いと思う

エミュで落ちて動かないのなら実機を使うしかありません
実機でデバッグするためにはatmosphereのコンフィグアイルの変更とポート番号を知る必要があったと思います
そのあたりは調べれば見つかると思います(おそらく海外サイト、ここの過去ログにも書いたかもしれません)
IDAはgdbデバッガーに対応しているので接続先へのIPとポート番号を指定すれば繋がりますが
Ghidraがサポートしているかどうかは知りません
サポートしていなければgdbコマンドを調べて実行するなどするしかないと思います

また上で聞かれたパワフェスのミニゲームせずにスカウトなどなら、やり方も書いてありますし
動的デバッグではなく静的なデバッグで出来ると思います

>>829
図鑑埋めは図鑑上でふしぎなメモ帳使うなどして経験値アドレスを調べたらそのすぐそばにあります
1なら図鑑登録済み、0なら図鑑登未登録なので他キャラとの差分をとってループこおどを作れば
ポインターのデータ書換こおどを作るか図鑑開いた時にブレークさせて1を書き込むようにするとかすれば作れます
2024/07/28(日) 03:56:31.96ID:0oSQErhV
>>824
Ryujinxで動きました!
栄冠ナインのアイテム数と本、アイテム使用制限なしお願いできませんか
2024/07/28(日) 04:20:07.27ID:NNdz3opT
突っ込まないようにしてたけどryujinxでもループコード普通に動くけどね
動かないって言ってる人はコードそのものが悪い可能性もあるがバージョンとかいくつの使ってんだろ
2024/07/28(日) 04:24:31.77ID:NNdz3opT
ryujinxはメガテンの神コードにもあった二重ループも動く
逆に柚子では二重ループが作者も言ってるように動かなかった
2024/07/28(日) 06:16:37.05ID:0oSQErhV
>>832
1.1.1330と最新の1.1.1361で>>685と栄冠ナインアイテム全部9が効いてない
コードはこれ

[Item ALL9]
580F0000 0D12E648
580F1000 00000030
580F1000 00000020
580F1000 000000F8
580F1000 00000080
300E0000 00000088
640F0000 00000000 09000900
780F0000 00000004
310E0000
20000000
835名無しさん@お腹いっぱい。
垢版 |
2024/07/28(日) 10:27:26.20ID:n6YnKuJP
20000000がいらんちゃうかしらんけど
836名無しさん@お腹いっぱい。
垢版 |
2024/07/28(日) 10:36:29.47ID:giKTeL4I
>>830
ありがとうございます
gdbデバッガーについて調べてみます

静的なデバッグということでミニゲーム無しに改めて挑戦してみました
Switch文を見つけて(case0〜8ですよね)その上の条件の値をとってくるところが

7100dd1c28 00 01 40 79 ldrh w0, [x8]
7100dd1c2c 1f cc 07 71 cmp w0, #0x1f3
7100dd1c30 f4 83 80 1a csel w20, wzr, w0, hi
7100dd1c34 b6 87 fd 97 bl FUN_7100d33b0c
7100dd1c38 08 1c 00 13 sxtb w8, w0
7100dd1c3c 1f 21 00 71 cmp w8, #0x8
7100dd1c40 48 07 00 54 b.hi LAB_7100dd1d28
7100dd1c44 69 6b 02 d0 adrp x9, 0x7105b3f000
7100dd1c48 29 81 38 91 add x9, x9, #0xe20
7100dd1c4c 0a 0e 80 52 mov w10, #0x70
7100dd1c50 89 26 aa 9b umaddl x9, w20, w10, x9
7100dd1c54 22 1d 40 f9 ldr x2, [x9, #0x38]
7100dd1c58 09 b6 01 b0 adrp x9, 0x7104492000
7100dd1c5c 29 c1 02 91 add x9, x9, #0xb0
7100dd1c60 8a 00 00 10 adr x10, 0x7100dd1c70
7100dd1c64 2b 69 68 38 ldrb w11, [x9, x8, LSL]
7100dd1c68 4a 09 0b 8b add x10, x10, x11, LSL #0x2
7100dd1c6c 40 01 1f d6 br x10

このあたりだと思って、その中でもそれっぽいのが
7100dd1c28 ldrh w0, [x8] だと考え、こいつを戻り値2にするため mov w0, #2 に変更
ARMtoHEX使って40008052になったので、これをコード化すると
[ミニゲーム無し]
04000000 00dd1c28 40008052 アドレス部は0x838分ズレてます
で試してみたけど効果なかったです
どこが間違ってますか?
2024/07/28(日) 11:37:02.14ID:xY5L/Mre
>>836
惜しい!
ここはただミニゲームの文言を出すところです
でその文言を決定しているのが上で言うところの
7100dd1c34 b6 87 fd 97 bl FUN_7100d33b0cになります
Switch文のcase2のみミニゲームの文言を設定していないので
その関数の戻り値を2にするとミニゲームなしなのではと想定できます
だから単純にその関数の先頭で2(mov w0 #2)を返してリターン(ret)する
それだけでも出来ますがで出来るだけ影響範囲を小さくするため
必要なところだけ書き換えた方が良いため
FUN_7100d33b0cを呼び出している4箇所を
bl FUN_7100d33b0c -> mov w0, #2
のような感じで変更して必要なところだけ有効にしたら良いと思います

アドレスのズレに関してはプラグインを入れてmainを直接読み込ませた
>>825はズレていないのかと思ったけど違うのかな
2024/07/28(日) 11:45:15.45ID:xY5L/Mre
あともう一点
mov w0, #2はリトルエンディアンでは40008052はです
pchtxtにするなら40008052のままで構いませんが
atomosphere形式?というのか上の形式ではビッグエンディアンにしなくてはいけません
2024/07/28(日) 11:57:18.74ID:xY5L/Mre
aarch64の関数は色々ありますが基本的には
レジスタ(足りなきゃスタックも使う)で引数を受け取り演算結果をw0(足りなきゃW1やスタックも使う)に返します
その際お約束として呼び出したらW19-W29の値は保証されますがW0-W18の値は保証されていません
7100dd1c28 00 01 40 79 ldrh w0, [x8]はパワフェスキャラIDで
FUN_7100d33b0c関数へそれを引数として渡し
その結果(キャラに紐づくミニゲーム)をW0に返してもらっていることになります
840名無しさん@お腹いっぱい。
垢版 |
2024/07/28(日) 12:48:32.59ID:qVv1F7gH
>>830
すみません図鑑埋めのコードですが、JNoexsを使わずにedizonだけでも出来ますでしょうか?
2024/07/28(日) 13:13:23.75ID:iWaY0bAc
どこ出身なの?
2024/07/28(日) 13:53:03.50ID:xY5L/Mre
>>840
https://agree.5ch.net/test/read.cgi/mango/1675111807/
2024/07/28(日) 16:07:19.36ID:/HDys+gk
アプロダに請求書のテンプレとかあるけど平気なんだろうか
2024/07/28(日) 19:02:25.46ID:viuPIVat
>>843
盗聴して公にさらすやつより平気だろ
2024/07/28(日) 19:22:17.59ID:M0qrhr0t
>>836
完成していましたら是非ともチート投稿お願いします
2024/07/28(日) 19:30:12.49ID:pyiknerY
パワプロ用のうpろだないなあって思ったから末尾pawapuro2024にして作っといた
847名無しさん@お腹いっぱい。
垢版 |
2024/07/28(日) 20:24:08.39ID:giKTeL4I
>>837-839
詳しくありがとうございます
ただ難しいですね…プログラミングに初めて触れるので言葉の意味を考えるだけど頭が痛くなります
こんな難しいことをこなすのは尊敬しかありません

>>837の前半をまずは試してみたいと思います
FUN_7100d33b0cの戻り値を2にするには、関数の先頭でレジスタw0に2を設定し、すぐに関数を終了させればいいですか?

7100d33b0c 02 00 80 52 mov  w0, #2
7100d33b10 c0 03 5f d6 ret

それでコード形式にすると
04000000 7100d33b0c 52000002
04000000 7100d33b10 d65f03c0
これだとアドレスのズレを直しても効果無しなんです
関数の先頭の考え違いをしてそうですね

Ryujinxで展開したExeFSのmainも同じ数値(0x838)ずれてたので、もうズレたままやろうと思います
2024/07/28(日) 20:25:17.97ID:VvDkWXVE
どこに作ったのかもわからんがウイポじゃないしPSスイッチしか展開されていないのに専用なんて全くイラネ
2024/07/28(日) 20:28:08.38ID:xY5L/Mre
>>847
落ち着いて、アドレス部の71をとって試してください
2024/07/28(日) 20:31:07.08ID:xY5L/Mre
あと52000002(02000052 )はeor w2, w0, #1という命令になります
アドレスも合っているのであと一息
851名無しさん@お腹いっぱい。
垢版 |
2024/07/28(日) 22:08:00.80ID:giKTeL4I
>>849-850
できました!!!!!!!感動!!!!!マジで嬉しい!!
本当しつこく質問ばかりで申し訳ありませんでした
お陰で少しレベルアップした気がします
感謝です!!

惜しむらくは既に図鑑フルコンプしていたこと…
2024/07/29(月) 00:25:38.01ID:qN40nSRw
必ずできるわけではありませんが応用としてエラーメッセージの参照箇所から
そこに分岐しないように書き換えたり何をチェックしているのか調べることにより
色々実現できるかもしれません
853名無しさん@お腹いっぱい。
垢版 |
2024/07/29(月) 12:31:28.30ID:BEkZ2hhM
マイライフの経験値ってバーで表記されて数値では分からないよね
ペナントにいたっては経験値表記皆無だし
そういうときは増減サーチで地道にやっていくしかないのかな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況