X



チート初心者スレpart3
0216ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 10:04:03.33ID:MyrweZAB
>>1
自称不細工(子ガチャ外れ枠)「親ガチャ外れた。美男美女の子供として生まれ、容姿が良ければ人生イージーモードだった。」
0217ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 10:39:20.12ID:MyrweZAB
>>1
小室圭さんの緊急帰国で警備費は2千万円 仮住まい候補は「赤坂」「青山」の高級マンションに
https:/ /news.yahoo.co.jp/articles/8b1625f22d3636fc6e19c5df8c2384303af1a6ad
0218ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 11:14:39.72ID:MyrweZAB
脳ミソ腐った鬼畜の住みか 豚社長と指なくしバカマヌケ は職員のことも考えて気持ち悪い笑みが耐えられない判子なんか押すわけないやろ!
こういう結論ありきの押し付け命令するクソバカ変態ストーカーの言いなり豚社長
0219ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 11:49:57.16ID:MyrweZAB
>>1
実家暮らしニートが親ガチャ失敗言うてるのうける
親ガチャ大当たりやん
0220ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 15:30:26.63ID:catNKBGh
IDコロコロ どう見てもB型以下の変態ストーカーのふざけぶりとぼけぶりは変わりませんと110番通報するとどうなるか?
0221ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 16:05:47.75ID:catNKBGh
でも重労働作業場のエアコンは直さず どう見てもB型以下の変態ストーカーのふざけぶりとぼけぶりは変わりませんと110番通報するとどうなるか?
0222ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 17:21:45.10ID:pRH+S+o9
>>1
眞子「そこっ…!イイッ」
圭「」ピタッ
眞子「…え?…」
圭「眞子…俺今月金ねンだわ」
眞子「で、でも…これは国のお金で…」
圭「フーン」ヌポポ
眞子「ッ!…いやッ!辞めないで!」
圭「…じゃあ分かるよな?」
眞子「…」フルフルつ50000円
圭「…」グワシャ
圭「愛してるよ…眞子」チュッ
圭「っしゃ!スパート掛けるぞオラッ!」パンパンパンパンパンパン
眞子「アッアッアッアッ….いやああああ!!!!!」

これが現実

★「金ねンだわ」とは
小室圭さんと眞子様の結婚発表した際に、
小室家には400万円ほどの借金があることが判明、メディアに取り上げられることで結婚に待ったがかかった。
この発表を受けたネット民は、借金のある小室圭を「金無しの屑人間」と仮定し
ネタコピペを次々創作していく流れに。
「金ねンだわ」は、そのコピペ内で「金無しの屑人間」と化した小室圭が発言した架空のセリフが元ネタとなっている。
0223ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 18:14:59.99ID:pRH+S+o9
>>1
眞子「そこっ…!イイッ」
圭「」ピタッ
眞子「…え?…」
圭「眞子…俺今月金ねンだわ」
眞子「で、でも…これは国のお金で…」
圭「フーン」ヌポポ
眞子「ッ!…いやッ!辞めないで!」
圭「…じゃあ分かるよな?」
眞子「…」フルフルつ50000円
圭「…」グワシャ
圭「愛してるよ…眞子」チュッ
圭「っしゃ!スパート掛けるぞオラッ!」パンパンパンパンパンパン
眞子「アッアッアッアッ….いやああああ!!!!!」

これが現実

■「金ねンだわ」とは
小室圭さんと眞子様の結婚発表した際に、
小室家には400万円ほどの借金があることが判明、メディアに取り上げられることで結婚に待ったがかかった。
この発表を受けたネット民は、借金のある小室圭を「金無しの屑人間」と仮定し
ネタコピペを次々創作していく流れに。
「金ねンだわ」は、そのコピペ内で「金無しの屑人間」と化した小室圭が発言した架空のセリフが元ネタとなっている。
0224ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 18:38:02.50ID:pRH+S+o9
>>1
眞子「そこっ…!イイッ」
圭「」ピタッ
眞子「…え?…」
圭「眞子…俺今月金ねンだわ」
眞子「で、でも…これは国のお金で…」
圭「フーン」ヌポポ
眞子「ッ!…いやッ!辞めないで!」
圭「…じゃあ分かるよな?」
眞子「…」フルフルつ50000円
圭「…」グワシャ
圭「愛してるよ…眞子」チュッ
圭「っしゃ!スパート掛けるぞオラッ!」パンパンパンパンパンパン
眞子「アッアッアッアッ….いやああああ!!!!!」

これが現実

■「金ねンだわ」とは
小室圭さんと眞子様の結婚発表した際に、
小室家には400万円ほどの借金があることが判明、メディアに取り上げられることで結婚に待ったがかかった。
この発表を受けたネット民は、借金のある小室圭を「金無しの屑人間」と仮定し
ネタコピペを次々創作していく流れに。
「金ねンだわ」は、そのコピペ内で「金無しの屑人間」と化した小室圭が発言した架空のセリフが元ネタとなっている。
0225ネトゲ廃人@名無し
垢版 |
2021/10/01(金) 19:32:39.11ID:nMTFOeqt
>>1
ガキ「無職で皇族にプロポーズした一般人に多額の税金が無駄使いされている?どうでもいいです」
0226ネトゲ廃人@名無し
垢版 |
2021/10/12(火) 13:09:24.35ID:F2G1mzVb
共産党による皇室崩壊計画がこんなところにまで投下されるとはな
0227ネトゲ廃人@名無し
垢版 |
2021/10/15(金) 22:40:21.50ID:pC5zGc/c
x86アセンブラが凄い敷居高く感じるんだが皆どうやって覚えた?
0228ネトゲ廃人@名無し
垢版 |
2021/10/16(土) 09:56:07.06ID:???
言語仕様的にはアセンブラはあらゆるプログラミング言語の中で最も簡単だろ
0229ネトゲ廃人@名無し
垢版 |
2021/10/16(土) 21:28:10.55ID:???
まじか。構文の見た目が直感的じゃなくて全然分からない。頭良いんだな
このままチートエンジンのチュートリアル続けても身につきそうにない
お勧めの入門書ある?
0230ネトゲ廃人@名無し
垢版 |
2021/10/16(土) 21:34:03.14ID:???
入門書もなにもインテルの命令セット リファレンス見るだけじゃん
0231ネトゲ廃人@名無し
垢版 |
2021/10/16(土) 22:10:30.96ID:???
>>230
https://imgur.com/a/hrc3yTE
弾を撃ったときにこういう処理が出てきたら赤い所だけ着目してればいいのですか?
イメージとして*(string+1)こういうことしてるのかな?アドレスの計算をして何をしてるのかわからない。
全体を通して通してアセンブラ見ると全く意味がわからない。。
0233ネトゲ廃人@名無し
垢版 |
2021/10/17(日) 09:43:03.46ID:???
>>231
見た所、弾の数の処理っぽいからstringではないだろうよ
pushしてるってことはその後に何か関数呼んでるだろうしfunc(弾の数)って感じだろうな
dec [esi]は--*ptrだから撃った後に弾減らしてるんだろう
0234ネトゲ廃人@名無し
垢版 |
2021/10/17(日) 09:47:54.47ID:???
>>229
直感的ではないがどれも単純な命令だし命令数だって高級言語と比べたら限られてるからな
ちゃんとまともにプログラミング経験があればすぐ分かるよ
逆にプログラミング経験もないのにいきなりアセンブラから入ったら何のためにこの命令を行ってるのか理解出来なくて勉強捗らないだろうな
0235ネトゲ廃人@名無し
垢版 |
2021/10/17(日) 21:34:43.18ID:???
>>233
一年近くCのコンソールの文法並行してやってるけど全然検討もつかなかったw
厳しいかな?詳しく教えてくれてアリガトウ
0236ネトゲ廃人@名無し
垢版 |
2021/10/18(月) 09:57:51.08ID:UDOXFdji
PUBGで使えるチートエンジン誰か売ってない?
0237ネトゲ廃人@名無し
垢版 |
2021/10/18(月) 10:01:28.54ID:???
ハンゲームのななパチのバイオ5で子役のアドレス探してるんですがたどり着けません。
押し順ベルと三択回避が知りたいのですが、どのように探せばいいですか?
0241ネトゲ廃人@名無し
垢版 |
2021/10/19(火) 10:16:19.58ID:???
アドレスどうやって探すの?に対して「見つからないから自分で作れ」は草
0243ネトゲ廃人@名無し
垢版 |
2021/10/22(金) 22:08:45.31ID:???
サドンアタックEVOの弾のアドレスが引っかからないのですが
どうすれば見つかりますか?
撃って-1検索し続けても出ないし16進数8進数に変えてやっても駄目みたいです。
0244ネトゲ廃人@名無し
垢版 |
2021/10/23(土) 07:24:41.68ID:???
バイト数変えるならまだしも進数変えてもなんの意味もねえぞ
0245ネトゲ廃人@名無し
垢版 |
2021/10/23(土) 20:43:11.57ID:???
>>244
知らなかった。ありがとう
でもバイトのタイプ全て変更してやったけど出なかった
他に方法ないかな
0246ネトゲ廃人@名無し
垢版 |
2021/10/24(日) 07:22:56.83ID:???
何のツール使ってるか知らんが変動サーチする
Cheat Engineなら
1.Scan TypeをUnknown initial value で First Scan
2.ゲーム内で一発撃つなど弾数変動させて Changed value で Next Scan
3.ゲーム内で弾数変動させず動きまわって Unchanged value で Next Scan

2.3.を繰返し件数が絞れたら適当に書き換えて対象アドレスを特定する
上手くいかない場合はValue Typeのサイズを見直す
アドレス自体が絞り込み中に変動する場合は諦める
念のため先にfloatやdoubleで値直指定での検索も試しておく

弾数アドレスが特定でき、そのままコード化してもおそらく再利用性できない
コード化したいなら例えば、弾数アドレスに書込みブレークポイントを設定し、
ゲーム内で1発撃って弾数の書込み箇所でブレークさせ、直前の処理を確認し
最大値チェックを行っていればそれを利用し最大値に、行っていなければ減算
処理を行わない命令に書き換えるなどしたものをコード化する
0247ネトゲ廃人@名無し
垢版 |
2021/10/24(日) 13:19:14.52ID:???
チートエンジンでメモリサーチする際、一時ファイルとして結果をキャッシュするんじゃなくてメモリで済ませるように設定余地残してもらいたいわ
とっくに64bit化してるんだし今時のPCなら数GBくらい軽くメモリ余ってるんだから
0248ネトゲ廃人@名無し
垢版 |
2021/10/24(日) 13:20:27.47ID:???
まぁ自分で改変すりゃいいんだけど開発言語がPascalとかいう糞言語なのがな
0250ネトゲ廃人@名無し
垢版 |
2021/10/26(火) 08:35:12.75ID:???
比較命令は、比較(compare)を意味するCで始まる命令である事が多い
比較の後はたいてい条件付きジャンプ命令である事が多い
比較結果がイエスかノーかでジャンプするかしないかが決まるから
ジャンプ命令も、JumpのJで始まる命令である事が多い
0251ネトゲ廃人@名無し
垢版 |
2021/10/26(火) 08:39:48.53ID:???
じゃcmp命令ないからこれは見当違いの所見てるのか。

>>比較結果がイエスかノーかでジャンプするかしないかが決まるから

こうやって検討付けていくのか。助かる
もうちっと頑張ってみる。ありがとう
0255ネトゲ廃人@名無し
垢版 |
2021/10/26(火) 21:03:05.13ID:???
書込みブレークさせたら停止しているアドレスは書込み命令の1つ後になる
なので1つ前の書込み命令をnop命令などで潰すだけでも効果があるかもしれない
ただし、これが有効なのは弾を撃つという1処理に対して個別に書込み命令が用意されている場合
もし、弾の初期値設定や弾が増えた場合など共通して同じ箇所で書込みを行っている場合は不具合が生じる

頻繁にバージョンアップする場合はAOBインジェクションを使用しバイトパターンを用いてアドレスの差分を自動修正すると良い
UnityでJitコンパイラを利用している場合は、Mono Featuresを有効にしてクラス、メソッド名を用いたアドレスを特定する
コード化する場合はクラス、メソッドを事前にコンパイルする命令を組み込み、メモリに展開させておくこと

上の詳しい内容を字数制限有りの文字だけの5chで書くのは難しい
ネット上にはそういった情報がいくらでも有るので自分が解りやすいサイトを探せば良い
0256ネトゲ廃人@名無し
垢版 |
2021/11/02(火) 07:44:10.80ID:WdQYQ7TE
>>237子役で絞っていけ
0257ネトゲ廃人@名無し
垢版 |
2021/11/04(木) 23:51:00.73ID:???
スパロボXでCheat Engineを用い機体やパイロットを全く別のものにしようとしているのですが上手くいきません
PS4版でSWを使った時のようにしてもウンともスンとも言わず
サーチして出た数値を弄っても戦闘アニメ以外での顔アイコンだけは変わるだけだったり
パっと見はシーブック・アノーからシーブック・アノーへ乗せ換えられたようにはなりますが実際の乗せ換え結果は正常なままでした
https://i.imgur.com/hSYnRwj.jpg
0258ネトゲ廃人@名無し
垢版 |
2021/11/05(金) 22:47:44.24ID:???
古いPS2のゲームなんだけど敵モンスターの外観のアドレス見つけるにはどうすればいい?
未実装のモンスターのデータが入ってるみたいでそれを見てみたい
0259ネトゲ廃人@名無し
垢版 |
2021/11/05(金) 23:23:28.12ID:???
それなら簡単
アドレスをずらしてモンスターを変えていく
未使用モンスターに変更したら見れる
0260ネトゲ廃人@名無し
垢版 |
2021/11/14(日) 02:18:28.08ID:???
WindowsゲームプログラミングっていうAPIの参考書買ってきたんだが
早くもダルい…………。チート中上級者ってこういうの全部覚えてるの?
0261ネトゲ廃人@名無し
垢版 |
2021/11/14(日) 07:43:23.93ID:???
https://ideone.com/ZOZVxe

WriteProcessMemoryの練習してるんだけどやり方間違えてるのかゲームに反映されない
チートエンジンで見つけたポインタ、アドレス自体は合ってるみたいなのだけど
どこが駄目か教えて欲しいです
0262ネトゲ廃人@名無し
垢版 |
2021/11/15(月) 12:44:45.21ID:???
何もわからん初心者だがベースアドレスとか設定してないせいじゃないの
0263ネトゲ廃人@名無し
垢版 |
2021/11/15(月) 14:52:51.15ID:???
if (ProcessID == NULL)じゃなくてif (handle == NULL)でOpenProcessが成功したかを判定すべき
そしてWriteProcessMemoryが成功したか否か自体も確認してみ
cout << WriteProcessMemory(handle, (LPVOID)helth, &write_Helth, sizeof(write_Helth), NULL) ? "WPM成功!" : "WPM失敗..." << endl;
0264ネトゲ廃人@名無し
垢版 |
2021/11/15(月) 14:59:10.03ID:???
あとSleep(3000); exit(0);
なんてせずにmain関数の一番したでgetchar();しとけばコンソールに何か打たない限り終了されなくなる
0265ネトゲ廃人@名無し
垢版 |
2021/11/15(月) 15:02:10.04ID:???
てかfor(;;)の中でWPMしてるのはどういう理由?
WriteProcessMemoryを待機無しで無限ループしてるってことになってるけど
0266ネトゲ廃人@名無し
垢版 |
2021/11/15(月) 18:34:23.66ID:???
>>265
for入れとけばHP減った後自動で回復してくれると思ったのですが意味なしですか?
教えてもらった通りにWPMの成功を確認する文を入れてみたのですが一応成功はしてるようです、、
WPMの第二引数にHPのポインターを入れてるのですがそれが間違えなのでしょうか? 
0267ネトゲ廃人@名無し
垢版 |
2021/11/15(月) 18:42:50.00ID:???
>>266
自作アプリの実行前からCEでアドレスの値を調べて想定した書き換えができてるか確認すればいいんじゃね?
0268ネトゲ廃人@名無し
垢版 |
2021/11/21(日) 03:28:16.65ID:???
ゲームでアイテムを無限とかにするチート(MOD?)はBANになったりしますか?
デッドバイデイライトというゲームで遊びたいのですが、PS4はクロスセーブに対応してないのでまた一から始めるのが怠くて・・・
課金スキンや微速チートなどを使って通報されまくらない限り平気なんですかね?
0271ネトゲ廃人@名無し
垢版 |
2021/11/27(土) 04:00:37.08ID:???
教えてください。
チートエンジンを使ってThe Ruins Of The Lost Kingdom CHRONICLEというMOゲームでMPやHPを減らないようにしたいのですが、HPMPアドレスを絞っても複数のアドレスが出てきてそのままアドレスを固定して進行すると、アドレスがまた変わってしまいます。
最初にヒットしたアドレスを固定したままにするとゲームがクラッシュします。
この場合はどうすればよろしいのでしょうか。よろしくお願いします
0272ネトゲ廃人@名無し
垢版 |
2021/11/30(火) 12:58:58.10ID:???
ポインタかScriptで対応すればいい
Scriptって聞くと難しく感じるかもしれないが、HPアドレス取得するだけならアセンブラロクに知らんでもどうにかなる
むしろ多重ポインタのベースアドレス探す方が面倒まである
0273ネトゲ廃人@名無し
垢版 |
2021/12/03(金) 01:23:39.65ID:???
>>272
そうなんですね
スクリプトのやり方を調べながら、試行錯誤してみます。ありがとうございます
0274ネトゲ廃人@名無し
垢版 |
2021/12/04(土) 23:07:16.54ID:???
固定するだけならわざわざアドレス取得しなくても処理潰すか固定値代入したほうが楽そう
0275ネトゲ廃人@名無し
垢版 |
2021/12/09(木) 17:34:26.73ID:???
チートエンジンでインジェクション時のenable,disableについて質問で、ちょっと割愛して仮に
[ENABLE]
newmem:
mov [rbx],rdi
mov [rbx+FF],rdi
jmp return
INJECT:
jmp newmem
returtn:
[DISABLE]
INJECT:
mov [rbx],rdi
というスクリプトを書いたとき、disableのときに[rbx+FF]の値を元に戻したいのですが
単純に命令を追加すると元アドレスがずれてしまうので、変化させずに行うにはどうすればいいのでしょうか?
0276ネトゲ廃人@名無し
垢版 |
2021/12/10(金) 00:32:23.37ID:???
>>275
たぶんこれでいける

[ENABLE]
label(x)

newmem:
mov [rbx],rdi

push rax
lea rax,[rbx+FF]
mov [x],rax
pop rax

mov [rbx+FF],rdi
jmp return
x:
dq 0
INJECT:
jmp newmem
returtn:

registersymbol(x)

[DISABLE]
INJECT:
mov [rbx],rdi
{$lua}
writeInteger('[x]',100)
{$asm}
unregistersymbol(x)
0278ネトゲ廃人@名無し
垢版 |
2021/12/17(金) 07:42:53.84ID:???
>>259
アドレスをずらすってどうやるの?具体的に教えて下さい
敵のHP減らして敵のアドレスをヒットさせて
んで・・・その後どうすりゃいいのかわからないす
0279ネトゲ廃人@名無し
垢版 |
2021/12/19(日) 10:08:50.89ID:???
グラフィックを指定しているアドレスの値をズラしての間違いでしょ
外観のアドレスの探し方を知りたいって質問ではなく、未実装のモンスターを見たいという願望に対する返答
つまりお前にはなんの助けにもならないレス
0280ネトゲ廃人@名無し
垢版 |
2021/12/20(月) 12:06:38.52ID:???
>>279
なるほど。質問の仕方が悪かったってことですか
改めて外観のアドレスの探し方を教えてほしいです
敵の攻撃力から構造体辿ったんだけどそれっぽいのが見つからない
0281ネトゲ廃人@名無し
垢版 |
2021/12/21(火) 20:56:01.27ID:???
ステータス付近にないのであればどっか別の場所で一括管理してるんじゃないの
ゲームによって構造違うし一概にこうしたら見つかるよなんてのは難しい気がする
0282ネトゲ廃人@名無し
垢版 |
2022/01/21(金) 17:18:51.63ID:???
自由にキャラクターをスポーンするのって逆アセンブルで出来る?
やっぱGTAみたいなスクリプトとかアンリアルエンジンのコンソールコマンド無いと無理かな?
0283ネトゲ廃人@名無し
垢版 |
2022/01/22(土) 09:49:17.12ID:???
できるけどネトゲの場合はクライアントにスポーン座標が埋め込まれてる訳ではなくサバからのメッセージに従うって形式が多い
0284ネトゲ廃人@名無し
垢版 |
2022/01/24(月) 22:13:37.08ID:???
Cheat Engineとエミュを起動し直したらコードの座標変わるんだけど
何とかする方法ありませんか?
0286ネトゲ廃人@名無し
垢版 |
2022/01/25(火) 13:59:57.43ID:x+duJQuB
Easy anti cheatってespのみでも検知されるの?大抵のfpsってespだけならbanされないイメージあるけど
0287ネトゲ廃人@名無し
垢版 |
2022/01/25(火) 17:44:47.41ID:???
espの描画に必要な敵座標、自分の座標、向きなど
EACを回避しないと取得できない。
外部プロセスからのアクセスはEACが防ぐし、DLL差し込みもEACが検知する。
0288ネトゲ廃人@名無し
垢版 |
2022/01/25(火) 22:10:48.04ID:???
>>285
ありがとう
サーチ機能ないエミュなのでこれ使うしかないのですが
仕様と思ってその都度検索かけます
0289ネトゲ廃人@名無し
垢版 |
2022/01/25(火) 23:23:46.35ID:ic1sPDJV
>>287
マジか、じゃあチート業者の技術ってかなり高いんだな
0290ネトゲ廃人@名無し
垢版 |
2022/01/26(水) 12:40:01.81ID:???
不定期にデスクトップスクショ取ってくるものも多いからespも安全ではない
安全に最重点を置くならゲーム上のマシンから別デバイスへ情報を送ってそっちでビューさせるって方式しかない
その場合は2Dマップやレーダーくらいしか出来ないがこれだけでも十二分なアドバンテージは得られる
0291ネトゲ廃人@名無し
垢版 |
2022/02/05(土) 13:22:47.48ID:???
あちこちで情報拾ってきて
弄り回したけど駄目だったから
元にあったct使おうと思ったんだけど
???で何かの数値が取得できない場合自分で治すにはどこを弄れば良いんだろうか
静的アドレスを拾ってこようと思ったけど無理そうだ
0292ネトゲ廃人@名無し
垢版 |
2022/02/05(土) 14:13:53.93ID:???
ポインタリストの中のどこかでNULL(0)等の不正値があるってこと
一番考えられるのはベースアドレスが狂ってるパターン
構造体の変更によって途中のオフセットが狂ったパターンもあり得るが
0296ネトゲ廃人@名無し
垢版 |
2022/03/19(土) 10:28:49.28ID:???
大抵の出来る奴は既に良い給料貰って普通にエンジニアとして働いてるからな
0297ネトゲ廃人@名無し
垢版 |
2022/03/31(木) 08:08:02.26ID:yN6+L6nu
>>296
化学系の開発職で勤続3年目の20代だが、年880万台の収入ある
0299ネトゲ廃人@名無し
垢版 |
2022/03/31(木) 22:02:05.63ID:???
プログラミングが出来る奴の話してるのになんで化学系開発職が年収自慢してんの?馬鹿なの?
0305ネトゲ廃人@名無し
垢版 |
2022/04/12(火) 17:58:32.45ID:???
チートエンジンで目的のアドレス見つけた後その周辺の数値をまとめて変えたいのだけどどうすれば出来ますか?
0307ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 04:50:09.14ID:???
アイテムの数を変える為にアドレスを見つけた後に他のアイテムも順番に変更して行きたいのですが、アドレス手動追加で入力して変更しています
ただこれだと労力がかかりすぎてしまって例えばアドレス自体を逆引きみたいな感じで特定の法則で検索してまとめて変更する事って出来ますか?
0308ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 07:42:10.30ID:???
アイテムのアドレスが100あるとして、全てのアイテムの数を一気に同じ数に変えたいのか
それとも範囲指定で50番目から70番目までを20にしたいのか
それとも5番目は10にして、21番目は30にしてあとはそのままにしておくとか
こんな感じ?
0309ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 12:47:36.78ID:???
どれも出来る様にはなりたいですが1番やりたいのは最初の全てのアイテムの数を一気に同じ数に変えたいです
0310ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 13:11:49.24ID:???
全部変えたいならCtrl + AからEnterで変えれる
1番目から10番目までを変えたいなら、まず1番目を左クリック、
Shiftキーを押しながら10番目をクリックしてEnterで変えれる

5番目と10番目と21番目を変えたいなら、まず5番目を左クリック、
Ctrlキーを押しながら10番目と21番目をクリックしてEnter
0311ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 15:19:28.34ID:???
選択するアドレス自体をまとめて表示したいのです
例えばアイテム3のアドレスは見つけられるのですがそのアドレスからアイテム1,2,4,5を変える場合(アドレスは2ずつ増減する)
アドレス手動追加でアイテム3のアドレスを-2又は+2して追加という事を繰り返しています
なのでアイテム3のアドレスで検索してアイテム1.2.4.5を編集画面にまとめて追加する方法は有りませんか?
0312ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 15:39:29.81ID:???
ポインタースキャンでアイテム3の静的アドレスとオフセットを見つける
アイテム3が[Tutorial.exe+87ab1c]+12なら
アイテム2が[Tutorial.exe+87ab1c]+10
アイテム4が[Tutorial.exe+87ab1c]+14

2と4はAdd Address Manuallyで追加する
これを保存しておけば次回から手動で追加する必要ないよ
0313ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 17:55:52.37ID:???
静的アドレスとオフセットは見つけましたが結局これはアイテム100個分いじる場合は1度100回入力しないといけませんか?
ポインタ使うので1度のみだとアドレスをそのまま打つより労力増えてませんか?
0315ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 19:00:37.18ID:???
上の方に有ったのですね確認不足でした
>>124のでやってみたのですがやりたい事は出来ました
ただ追加で質問なのでが
ベースタイプを2バイトや8バイトにする方法と基本文字列サイズ?(最初の個数)を現状維持にするやり方を教えて欲しいです
質問が多くてすみません
0316ネトゲ廃人@名無し
垢版 |
2022/04/14(木) 19:18:15.07ID:???
連投すみません
自己解決しました、回答してくれた皆さんありがとうございました
0317ネトゲ廃人@名無し
垢版 |
2022/07/12(火) 10:38:55.86ID:???
チートエンジンのAOBでraxレジスタだけは[シンボル]に値を入れたり、その逆を行うなどの干渉が出来るのですが
rbxや他のレジスタに干渉する事が出来ません(スクリプトが起動しない)。これらは触ることは出来ないのでしょうか?
0320ネトゲ廃人@名無し
垢版 |
2022/07/13(水) 20:42:48.18ID:???
コードくらい貼ればいいのに
どうせ記述ミスってるだけでしょ
0321ネトゲ廃人@名無し
垢版 |
2022/07/14(木) 11:49:47.51ID:???
>>320
例えば問題なく起動する「mov [シンボル], rax 」を
「mov [シンボル], rbx」にするだけでスクリプトにチェックが入らなくなる感じです

皆さんの反応を見る限りシンボルとの干渉自体は基本的にどのレジスタでも可能と捉えても大丈夫ですか?
0322ネトゲ廃人@名無し
垢版 |
2022/07/14(木) 12:03:10.18ID:???
現状(自分の理解の範囲内での)苦肉の策で

mov [記憶用シンボル],rax //raxの値を一時退避
mov [rax],rbx
mov [実用シンボル],rax
mov rax,[記憶用シンボル]//raxに退避していた値を復帰

の様な不格好な形で擬似的にrbxとの干渉を実現していたのですが、
流石におかしいと思ったので質問させて頂きました
0323ネトゲ廃人@名無し
垢版 |
2022/07/14(木) 17:34:48.10ID:???
なんでやろな
どのゲームでも一緒なんか?
スクリプト内にエラーが有る場合はスクリプト右クリック→コンテキストメニューの一番上にエラーが表示されるから見てみるといいかもしれん

ついでにraxを退避させるだけならpushでええんちゃう?
push ,rax
mov [rax],rbx
mov [シンボル],rax
pop rax
0325ネトゲ廃人@名無し
垢版 |
2022/07/15(金) 12:44:24.60ID:???
>>323
pushとpopの命令を把握してませんでした(無知)
値の退避はそちらの方法で簡潔に記述出来そうです。有り難うございます

rax以外のレジスタに触れない状況はゲームの方が原因だった様です
色々試した所Unity製のゲームが比較的遭遇率が高めだった感じがしました
0326ネトゲ廃人@名無し
垢版 |
2022/07/17(日) 11:44:47.23ID:???
rax退避させる必要ある?
退避させるべきは[rax]じゃなくて?
>>322だけ見るとraxへの代入は一切ないようだけど
0327ネトゲ廃人@名無し
垢版 |
2022/07/19(火) 11:48:39.32ID:JbN/ne5D
ゲーム内の数値はメモリー閲覧であるのですが…
チートエンジン内での走査結果で出てこないんですが理由分かりますか?
0328ネトゲ廃人@名無し
垢版 |
2022/07/19(火) 12:44:43.17ID:???
>>327
数値検索は手動で指定しない限り4byte単位、8byte単位などの区切りの良いアラインメントで検索される
例えば「5」を検索したい場合にアドレス0x10000001に5がある場合はこれは引っかからない

あとは文字列検索でよくあるのはデフォルトだと書き込み可能なメモリからのみ検索がされるので、exeに埋め込まれている文字列などはWritableのチェックを外さないと検索されない
0329ネトゲ廃人@名無し
垢版 |
2022/07/23(土) 02:38:05.25ID:CIKSlYhV
GTA3の主人公の見た目を変えたいんだけど、この場合どうやって主人公の見た目のアドレスを見つければ良いかな?
0330ネトゲ廃人@名無し
垢版 |
2022/08/04(木) 22:35:54.76ID:qhm7iKjH
cheat engineでRPGツクールXP製のゲーム(腐界に眠る王女のアバドーン)のポインタスキャンを検索したいんだがMax Levelを 10に、Max Offsetを4095にしても見つからなくて困ってます
これ以上Levelを増やすと一日かかっても終わらなくなるんだけどこういった場合どうやって探したらいいですか?
0331ネトゲ廃人@名無し
垢版 |
2022/08/13(土) 22:01:19.68ID:???
諦めてゲーム進行で変わらない数値をAOBスキャンしてそっからオフセット足すスクリプトを書く
0332ネトゲ廃人@名無し
垢版 |
2022/08/16(火) 21:07:29.68ID:???
多くある検索結果を一個づつクリックしながら追加するよりも
全部選択する方法はありますか?
0333ネトゲ廃人@名無し
垢版 |
2022/08/17(水) 15:27:26.90ID:???
適当なアドレスクリックしてCtrl+Aで全選択、サーチ結果右下にある赤矢印押して追加
一部の範囲やアドレスだけ追加であればShift+クリックによる範囲選択だったり、Ctrl+クリックでの個別選択すればいい
0334ネトゲ廃人@名無し
垢版 |
2022/08/17(水) 19:05:50.37ID:???
ありがとうございました。
データー解析はちょこちょこやってればすぐに見つかりますが
プログラム解析には教えていただいたやり方が威力を発揮しますね。
0335ネトゲ廃人@名無し
垢版 |
2022/08/26(金) 07:46:42.74ID:???
金は増やせるけどアイテム数はサーチに掛からなかったり
ステータスの回避は見つかるのに命中はみつからないと言うことが起きてるんだけどなんで?
項目として大きく違うように見えないのに検索にかからないのが不思議でしょうがない
0337ネトゲ廃人@名無し
垢版 |
2022/08/26(金) 12:55:16.53ID:???
例えばアイテム数は種類ごとに個数が分かれていてステータス欄にはそれらの合計値を表示してるとか
0339ネトゲ廃人@名無し
垢版 |
2022/08/27(土) 18:45:50.33ID:???
稀だけど同じアイテムでも1つ1つインスタンスが分かれててUIには種類ごとのインスタンス合計値を表示するだけって作りのものも確かにある
その方式だとしたら合計値の数字データはスタックや一時ヒープで即捨てられて文字データしか残らない
ただこういうパターンよりかは暗号化されてない前提ならbitで保持されてるケースの方が俺の経験則だと多いな
0340ネトゲ廃人@名無し
垢版 |
2022/08/27(土) 21:14:52.62ID:???
上のは"種類ごとに"って言ってるから突っ込まれてるんじゃないの?
0341ネトゲ廃人@名無し
垢版 |
2022/08/27(土) 22:23:42.52ID:???
アイテムはかなりの数あるからわかるとして
項目の少ないステータスの回避は見つかるけど命中は見つからないはどういうこと?
0342ネトゲ廃人@名無し
垢版 |
2022/08/28(日) 15:22:27.60ID:???
>>341
それステータス上限が15だったりしない?
それなら4bit単位で保持して1byteに二つの値を敷き詰めてるってパターンかもしれない
この場合バイトサーチに引っかかるのは下位4bitで且つ次のステータスが0の場合のみってことになる
0343ネトゲ廃人@名無し
垢版 |
2022/08/29(月) 09:02:20.69ID:qK9NMLU7
チートエンジンを使ってKH2.5(キングダムハーツ2ファイナルミックス PC版)のハックを試みてるものです。

メモリハック自体初めてで、お金やステータスなどある程度画面上の数値から読み取れるものは自力で見つけられる。コードインジェクションも少しやりました。
アセンブリに関してはレジスタや構文を少し齧った程度で完全に把握はしてません。

それくらいの知識量です。

PS2時代にあったPAR2の改造コードの再現をPC版でも出来ないかなと思ってます。

具体的には以下のコードを移植、再現したいです。

スケルトン変更コードと呼ばれるものです。

200F9000 10400005
200F9004 944F004C
200F9008 24010000
200F900C 142F0000
200F9010 240F0000
200F9014 A44F004E
200F9018 03E00008
201D348C 0803E400
こちら複合化状態のものです。

こういったPS2時代のコードの移植となるとやっぱりオリジナルのディスクが必要でしょうか?

もしくは何かポイントやコツがあれば教えて欲しいてます。

まだ試してませんが、このコードのデータ値を検索かけて該当の数値がないか見てみようかと思います。
ただ、このコードの製作者全てコードで書き換えてた場合は見つけられないのかなと思ってます。

お知恵をお借りできたら幸いです。
0344ネトゲ廃人@名無し
垢版 |
2022/08/29(月) 13:43:24.81ID:uIawWEHw
チート代行してくれませんか?お金払います
0345ネトゲ廃人@名無し
垢版 |
2022/08/29(月) 15:14:19.15ID:???
いいですけど足付かないようにビットコインで支払えますか?
ついでに当方本業の開発業で結構良いお給料貰っているので時給換算1万以上でお願いします
0346ネトゲ廃人@名無し
垢版 |
2022/08/31(水) 19:55:57.37ID:???
>>343
WindowsのIA32とPS2のMIPS IIIは別物
コードを変換するより解析しなおした方が早いかもね
0347ネトゲ廃人@名無し
垢版 |
2022/09/03(土) 06:49:10.77ID:???
なんで日本だけこんなに情報少ないんだろうな
英語や中国語だと最新の情報は出てこなくても割と使える情報出てくるのに
0348ネトゲ廃人@名無し
垢版 |
2022/09/03(土) 15:35:10.88ID:???
>>343
それはデータではなくプログラムを書き換えているので移植などというレベルではない
0349ネトゲ廃人@名無し
垢版 |
2022/09/08(木) 12:42:44.58ID:???
日本のチートコミュニティは割と昔からあったけど排他的だったり出来合いのツール使って満足する新規ばかりで限界集落化した
今でも細々と続いてるところはあるけど情報共有しようってところは見かけないな
みんな海外フォーラムで済ましてるんじゃない
0350ネトゲ廃人@名無し
垢版 |
2022/09/08(木) 12:48:34.11ID:???
そもそもプログラミング自体が敢えて日本のコミュニティに拘る必要性が皆無だし
0351ネトゲ廃人@名無し
垢版 |
2022/09/17(土) 13:47:18.75ID:???
世界で1億人ほどしか使ってない言語の情報量と少なくとも10億人以上が使ってる言語の情報量を
比較したら少ないのは当たり前ということに気づかない程度のやつには厳しいだろうなw
0352ネトゲ廃人@名無し
垢版 |
2022/09/17(土) 13:49:54.41ID:???
そんなに興奮しないで下さい
何か一本取ったように感じるのは充実した審議とはほど遠い審議と言わざるを得ない
0353ネトゲ廃人@名無し
垢版 |
2022/09/18(日) 06:29:45.32ID:???
人口比較でここまで論破した気になれるのすごいw
人口以前の話だろ さすがに
0354ネトゲ廃人@名無し
垢版 |
2022/09/18(日) 14:05:31.73ID:???
ごく当たり前のことを言っただけなのに一本取られたように思いこんでるのか...
逆になぜ日本に対して英語圏や中国と同等の情報量を期待してるの?
それこそ傲慢もいいところだと思うけどな
0355ネトゲ廃人@名無し
垢版 |
2022/09/18(日) 20:29:26.83ID:4Nuk+tBp
デスストランディングの座標系を操作したり、ジャンプ力を上げようと思って高さ変えつつそれらしい数値を絞り込んでみたのだけど全然見つからない・・・

アドレスの数値を変更しても反応のない動的アドレスばっかりが100個ほど最終的に残るのだけど、最近のゲームってそこら辺の数値巧妙に隠してること多いのかな。探し方が悪い?

ネットの記事だとアドレスにXYZの数値がベタ置きされて管理されてる系のゲームばかり出てくるのであまり参考にならない。
0357ネトゲ廃人@名無し
垢版 |
2022/09/18(日) 22:44:16.47ID:???
コジマ繋がりでMGS5ならやったことあるけど確かに検索に引っかからなかった
なんかチート対策でもしてるんだろなオンライン要素あるし
0358ネトゲ廃人@名無し
垢版 |
2022/09/19(月) 01:54:18.41ID:ncgB0aHG
チート対策で最近のゲームは常に数値を暗号化してベタ起きしないのが普通なんだな。しかも常に複合のためのシード値をランダム生成してるからメモリに確保される数値もランダムになると・・・・そうなってた場合無理じゃね?
0359ネトゲ廃人@名無し
垢版 |
2022/09/20(火) 10:43:05.20ID:???
クライアントに置かれてる限り無理ってことはない
逆に鯖に置かれてたらどんなハッカーでも基本無理になる
0361ネトゲ廃人@名無し
垢版 |
2022/09/20(火) 23:14:53.52ID:???
暗号化までされてるのなんてソシャゲとか無料オンラインゲームぐらいじゃない
0364ネトゲ廃人@名無し
垢版 |
2022/09/23(金) 09:06:34.73ID:???
DQ10オフラインのステータス、HPと攻撃力の値を現在の値から999に変更したいのですが
アドレスを割り出せずに難儀してます。
どなたかわかる方いませんか?
0370ネトゲ廃人@名無し
垢版 |
2022/09/23(金) 21:50:31.34ID:???
Englishすら入ってないDenuvoゲームをFearlessでリクエストしたところで無駄な気がするけど
0372ネトゲ廃人@名無し
垢版 |
2022/09/27(火) 18:26:36.23ID:???
英語版がない
海賊版がアップされない
CTがアップされない

この流れだと思う
0373ネトゲ廃人@名無し
垢版 |
2022/10/06(木) 19:34:08.05ID:???
ピクリマff2のキャラステータスってそのままの数値で格納されてないんですかね?
ギルはサーチで見つかったんですがステータスの数値はヒットしません
0374ネトゲ廃人@名無し
垢版 |
2022/10/26(水) 12:50:57.77ID:kceeErzt
質問失礼します
アドレスの数値がプレー中に常に変動していて数値を変更しても元の数値が変更されないアドレスの数値を変更する方法はありますか?
0375ネトゲ廃人@名無し
垢版 |
2022/10/28(金) 18:27:42.14ID:???
なんの数値を変えたいのか知らんが単純な個数やら数値を変えようとしているのであればそもそもアドレスが間違ってると思う
0376ネトゲ廃人@名無し
垢版 |
2022/11/12(土) 20:44:52.32ID:???
CheatEngineのcmpで同じ値かどうかを判別出来ますが、以上以下を判別する方法はありますか?
floatの値 1 以上が入った場合を判別させたくて…
0377ネトゲ廃人@名無し
垢版 |
2022/11/13(日) 14:34:25.77ID:???
>>376
https://i.imgur.com/9tXTigv.png

左側がVisual Studioでfx[5]が1.0以上ならgeを表示、そうでなければlを表示。
右側がそれに対応するCheat Engineの逆アセンブル結果。

cvtss2sd命令はメモリにあるfloatをxmm0レジスタへコピーする。
comisd命令はxmm0レジスタと1.00を比較する。
jb命令はxmm0レジスタが1.00未満だとジャンプする。
0382あらまや
垢版 |
2022/11/30(水) 22:51:56.05ID:???
グラクロのチート(gg
コードってどこみればのってますか?
0383ネトゲ廃人@名無し
垢版 |
2022/11/30(水) 23:24:02.38ID:???
今日マックのグラコロ開始だからグラコロにしか見えなかった
0384ネトゲ廃人@名無し
垢版 |
2022/12/13(火) 21:42:04.33ID:???
かなり古いMMOでアイテム増殖したりレベル弄ったりしてみたいんだが
通信解析してプロキシサーバ立てて改ざんしないといけないのか?
下手したらWindows98で作ってるかもしれん
便利なツールあったら教えて
0386ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 08:30:34.19ID:???
モンスター倒した時のドロップ判定なんだが
クライアントから送信されるIPでサーバが抽選してるなら
改ざんして意図的にレアドロップに変えられないかなと思ってるんだが
Wireshark導入してみたものの更新が多すぎてどれがモンスター倒した時の送信記録なのかわからん
教えてエロい人
0387ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 09:06:26.23ID:???
普通のオンラインゲームだと全てサーバ側でステータスやアイテム等の情報管理してクライアント側は描画と入力イベント処理くらいじゃないの?
0388ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 09:37:38.88ID:???
いくら古いとは言え流石に重要な部分にはチェックサム仕込んでるだろ
0389ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 10:09:01.93ID:???
cheat engineってMMOだと使えない?
うさみみハリケーンと同じで所持金増やせたとしても実際使えないのかね?
0390389
垢版 |
2022/12/14(水) 10:58:46.87ID:???
数値変わるだけで全く使えなかった(´;ω;`)
0391ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 13:38:06.44ID:???
ネトゲとは何なのかをまず理解しよう
まともなネトゲは所持金やらキャラのステータスやらの実体はサーバー側にあり、君が操作しているクライアントソフトなどただの表示用ビューアに過ぎない
表示用ビューアの表示値を変えたところで実体は何一つ変わらないのでクライアントの画面更新のタイミングで元に戻される事となる

昔は極稀にサバで管理せずにクライアント側に管理を委ねてるアホなネトゲも存在したがそういうネトゲは即終了することとなる
0392ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 19:59:50.51ID:nuXh9HIB
GTAでチートエンジン使って売却直前に数値変更するとお金が増えるって裏技参考に使ってみたけどやはりできなかったわ
逆にクライアント側でできるチートってどんなのがある?
0393ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 20:07:43.04ID:MefWtfV/
テクスチャ
0394ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 20:12:54.76ID:???
結局ゲームに依るけどモーションの高速化やら無敵も出来たりする
0395ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 20:17:31.98ID:nuXh9HIB
>>393
裸にするみたいな感じか?
それも自分だけにしか見えてないとかじゃないの?
>>394
スキル詠唱時間短くしたりできるんかね
0396395
垢版 |
2022/12/14(水) 20:34:21.34ID:???
スピードハックで見た目だけ早くなったけどやはり意味が無かった
0397ネトゲ廃人@名無し
垢版 |
2022/12/14(水) 20:34:53.27ID:???
>>392
キャラ座標関係はクライアントに任せてるゲームが多い
全ユーザーの位置を厳格にチェックしようとするとCPU使用率相当跳ねあがるだろうからね
だから加速やワープみたいなチートが結構存在する

そういったチート対策のためにキャラ座標まで厳格にチェックしだしたネトゲあったけど、海外鯖でやってるのかってくらいに移動がもっさりになってたな
0398ネトゲ廃人@名無し
垢版 |
2022/12/15(木) 00:13:51.28ID:???
チャット欄にSQLのコマンドぶち込んだら何か返って来ないかなと思ったけど工夫すればできるもんなのか?
接続人数とか見てみたい
過去に他ゲーでそういう裏技あったりする?
0399ネトゲ廃人@名無し
垢版 |
2022/12/15(木) 00:26:23.13ID:???
SQLインジェクションとか裏技じゃなくてセキュリティホールだから普通は対策してる
チートじゃなくてサーバをクラックしたいの?
0400ネトゲ廃人@名無し
垢版 |
2022/12/15(木) 01:51:08.21ID:???
>>399
GMアカウント発見できたら面白そう
SQLインジェクションの例説明してるサイト参考に試してみたができなかったな
サイトによっては1=1とかA=Aで書かれてたりするけどここは自分で変えないといけないのか?
0401ネトゲ廃人@名無し
垢版 |
2022/12/15(木) 15:22:47.14ID:???
sqlmap導入したんだがhtml覗いてみるとPOSTメソッドでapplication/x-www-form-urlencoded使ってるんだよね
application/x-www-form-urlencoded使ってる場合と使ってない場合でやり方変わってくる?
全てのパラメータが注入できないし、もっと多くのテスト実行したい場合はコマンド入れろ言われてそれもやったけどダメだった
0402401
垢版 |
2022/12/16(金) 09:35:17.73ID:MKZ4lb6+
tampar使ったらインジェクションポイント見つけられたけど
テーブル表示するコマンド使っても
no tables foundになる
ちなみにtechniqueで攻撃パターンは全て試した
アドバイスくれ
0403ネトゲ廃人@名無し
垢版 |
2022/12/16(金) 20:34:57.01ID:???
明らかに攻撃のリクエスト送信しまくってると裏で警察動いてるかもよ
0405ネトゲ廃人@名無し
垢版 |
2022/12/16(金) 22:29:21.79ID:8F27aQKA
AI認識エイムアシストみたいなやつBANされません!っていたるところでみるから調べてみたけど
物体検知のyolov5をonnxに変換?して検知した物体の真ん中に仮想マウスのカーソルを移動させるらしいんだが仮想マウスの座標動かしてるならオンラインFPSならAIMの座標管理してるはずだしBANされるとおもうんだがどんなトリックがあるんだ
0406ネトゲ廃人@名無し
垢版 |
2022/12/17(土) 15:18:44.20ID:???
ガチャ回す時のパケット特定して
再び送るみたいなことやると無限にガチャ回せるの?
packet editerとかで調べると同じパケット送り直すことでキャラがそのモーションを行うみたいなのがあったけどどうなんすかね?
ネトゲの話
0407ネトゲ廃人@名無し
垢版 |
2022/12/17(土) 15:47:16.63ID:???
ネトゲはサーバ側で情報管理してるからクライアント側で再送しても所持金の範囲内でしかガチャ回せんだろ
0409ネトゲ廃人@名無し
垢版 |
2022/12/17(土) 16:47:37.06ID:???
あるコードの命令が書き込む複数のアドレスのfloatに相対的に1や2を足すと言った命令はどうすれば実現出来るでしょうか?
絶対値には置き換えられるのですが…
0410ネトゲ廃人@名無し
垢版 |
2022/12/18(日) 00:01:26.46ID:???
>>406
キャラがモーションを行うって言うのは君のクライアント内の話だから自由自在
そのモーションを行うパケットを自前で生成してクライアントに送るなりすれば課金モーションとかでも君のPC内限定だが再現は可能
ガチャはサーバー側で行う事だからめちゃくちゃザルな鯖でもない限りは不可能
0411ネトゲ廃人@名無し
垢版 |
2022/12/18(日) 00:05:18.79ID:???
>>409
mov [ポインタ], eaxみたいな書き込み命令の直前にinc eaxみたいなコードを差し込めば良い
floatのinc命令相当のコードは忘れたけど
0412ネトゲ廃人@名無し
垢版 |
2022/12/18(日) 11:23:11.74ID:???
>>411
そちらをヒントに探しましたらfld,fadd,fstpの利用で実現出来る事が判りました
有り難う御座います
0413ネトゲ廃人@名無し
垢版 |
2022/12/22(木) 17:50:28.59ID:???
パケット改ざんについて詳しい人いますか?
wiresharkやチートエンジンでできるみたいな記事みかけたけどイマイチやり方がわからん
プログラミングできないと無理?
0415ネトゲ廃人@名無し
垢版 |
2022/12/22(木) 18:26:21.67ID:???
パケット解析して対象のデータ突き止めたとして
次はどう編集すればいいんだ?
0417ネトゲ廃人@名無し
垢版 |
2022/12/22(木) 19:23:18.86ID:???
電文が平文だったらプロキシサーバ経由して修正、暗号だったら暗号化する直前でチートエンジン等で修正じゃね
電文仕様はゲーム毎に違うので分析が必要だね
0418ネトゲ廃人@名無し
垢版 |
2022/12/22(木) 19:46:29.71ID:???
昔のツールだけどWPE PROってやつDLしてみた
ピグやメイプルで使われてたものみたい
いわゆるプロキシサーバ兼エディタみたいなやつだね
パケット記録できたけどこれを解読しないといけなくて詰んでるわ
今解読しようとしているゲームが個人製作のMMOでクッソ過疎だからどこにも参考記事無いんだわ
有識者求む
0419ネトゲ廃人@名無し
垢版 |
2022/12/23(金) 11:09:49.61ID:???
暗号化されてないパケットであればビックリするほど簡単
暗号化されてるパケットをプロセスへのアタッチ無しで改竄しようと思ったらビックリするほど難しい
プロセスへのアタッチ有りなら暗号化前、復号化後のデータをフックすればいいだけだが
0420ネトゲ廃人@名無し
垢版 |
2022/12/23(金) 11:47:19.93ID:???
>>419
暗号化されてる場合
暗号化前の生データを編集しないとダメ?
チートエンジン使って内部send見つける方法の記事見てたが途中でゲーム落ちるから詰んでる
0421420
垢版 |
2022/12/23(金) 12:19:16.97ID:???
Undetected Cheat Engine使えば突破できるらしい
自己解決しました
0422ネトゲ廃人@名無し
垢版 |
2022/12/23(金) 12:23:00.74ID:???
暗号/復号ロジックがわかっていれば楽かもしれないけど電文いじるのは面倒よ
電文は一発で全文送信できるとは限らないので状況によっては分割されたのを集める必要あり
あとはいじった後に電文長が1バイトでも増えたらどうすんの?
0423ネトゲ廃人@名無し
垢版 |
2022/12/24(土) 12:47:41.93ID:???
暗号解読は諦めてWPE PROで遊ぶことにするわ
同じパケットしか送れないけど意図しないタイミングで送ればお金増やせたりするのかな?
大抵の場合ゲームごと落ちるが
0424ネトゲ廃人@名無し
垢版 |
2022/12/24(土) 14:12:40.59ID:???
>>423
同じ平文生データでもシーケンス番号(何回目の通信か)によって暗号化後のバイナリが変わるケースが多い
なので暗号化されてる場合はその手法も大抵は無理
それにお金とかは鯖側で管理されてるはずだから解読できたとしても大抵は無理だよ
0425ネトゲ廃人@名無し
垢版 |
2022/12/24(土) 14:20:20.75ID:???
>>424
一度ログアウトするとまるっきり変わってたな
とある記事にマイナスの値を入れるとオーバーフロー起こすみたいな書いてたけどその辺どうよ?
0426ネトゲ廃人@名無し
垢版 |
2022/12/24(土) 15:25:18.96ID:???
>>425
そんなのアプリ次第だろ
まあ、そういった想定していない値やチェック漏れがある処理を探してアタックするのが定番のやり方だけどな
0427ネトゲ廃人@名無し
垢版 |
2022/12/24(土) 19:13:11.53ID:???
そもそも暗号わかんないからマイナス値の送りようがないんだけどね
同じパケットを送ってシステムの穴付いたりできるのかな?
0428ネトゲ廃人@名無し
垢版 |
2022/12/25(日) 21:04:52.83ID:???
チートエンジンのデバッガでブレークポイント設定するじゃん?
移動とかアイテム購入とかのアクションする前に固まるんだけどこれ正常動作なの?
0429ネトゲ廃人@名無し
垢版 |
2022/12/25(日) 21:55:43.05ID:???
設定した箇所が他でも使われてるだけでしょ
エンジンによってはどんな処理でも同じルーチン使ってることもあるから、その場合はトレースなりで追いかけないとどうにもならんよ
0431ネトゲ廃人@名無し
垢版 |
2023/01/18(水) 21:20:13.15ID:???
プログラミングとか全く無知なんですけどjavascriptで作られたゲームでチートやろうと思ってて「CookieClickerチートで学ぶJavaScript」ていうサイトを参考にソースコードを見ようとしたら画像みたいにhiddenとかなっててちゃんと見えない
こういうサイトのソースコードを見る方法ってないんですか?
https://i.imgur.com/AP6aHWt.jpg
0432ネトゲ廃人@名無し
垢版 |
2023/01/20(金) 19:16:25.60ID:???
逆にvisibleってなってる所は見えるの?
つか本体のスクリプトはhtmlの最初のほうで読み込んでるんじゃね?
0433ネトゲ廃人@名無し
垢版 |
2023/01/21(土) 00:14:33.54ID:???
>>432
>>431の画像の情報しか見えなかったので違いますかね
htmlの最初の方っていうのは一個目の画像のことですか?
自分の中のイメージとしては下のコンソールに何かのコマンドを入れて一瞬で経験値999とかにしたいと思ってるんですけど何を入れればいいか分からないんですよね
https://i.imgur.com/RcdURhh.png
https://i.imgur.com/LWdN4d5.png
0434ネトゲ廃人@名無し
垢版 |
2023/02/08(水) 15:04:59.50ID:???
hiddenの部分はvisibilityに"hidden"という文字列を代入するって意味で何かが暗号化されてたりするわけじゃない
だけどそもそもソースコードをすべて読み込むのは最終手段
たとえばクッキーの枚数を増やしたいならこれでじゅうぶん
・クッキーを右クリックして検証
・右側のイベントリスナータブを選択
・clickツリーを展開してbutton#bigCookieのmain.js?=v…をクリック
・表示されたコードで怪しい場所を見つける↓
Game.Earn(amount);
Game.handmadeCookies+=amount;
・amountの部分を好きな数値に書き換えてコンソールで実行
ガンバレ〜
0435ネトゲ廃人@名無し
垢版 |
2023/03/08(水) 19:26:30.95ID:???
チートエンジンのスクリプトで
スクリプトをONにすると特定のアドレスの値を1
offにすると0
ってスクリプトを考えてるんですけど
こういうのでもハックするゲームに存在する命令を改ざんする形じゃないと
設定できないのでしょうか
0436ネトゲ廃人@名無し
垢版 |
2023/03/08(水) 19:40:56.08ID:???
[enable]
アドレスorシンボル:
db 1
[disable]
アドレスorシンボル:
db 0
0437ネトゲ廃人@名無し
垢版 |
2023/03/08(水) 20:18:37.50ID:???
>>436
いやコーディングができないとかの問題じゃなくて
ハックするゲームの命令と関係なしのスクリプトは作れないかって問題です
0440ネトゲ廃人@名無し
垢版 |
2023/03/08(水) 21:54:10.37ID:???
書き換えたいアドレスが1256da2bでauto assembleで

[ENABLE]
[1256da2b]:
db 1
[DISABLE]
[1256da2b]:
db 0

と描き込んでexcecuteを押すとnot all instructions could be injected.と出てしまいます。
何が問題でしょうかアセンブリ言語の文法間違ってるとかでしょうか
0443ネトゲ廃人@名無し
垢版 |
2023/03/08(水) 22:43:12.99ID:???
>>442
ありがとうございます
これでコード自体はうまくいきました
activeのところをクリックして値が変わるのも確認しました
ただゲーム内に値変化の影響が反映されません。
値のバイト数とかの問題でしょうか?
0444ネトゲ廃人@名無し
垢版 |
2023/03/08(水) 22:45:42.44ID:???
ごめんなさいメモリの番号間違ってました
直したらうまくいきました。
すごい初歩的な問題だと思いますが質問に応答していただきありがとうございました。
0445ネトゲ廃人@名無し
垢版 |
2023/03/10(金) 22:31:05.84ID:???
重ねて恐縮ですが質問あります。
動的アドレスの関係で固定アドレスではなくポインタの場合の書式はどうなるか
教えてもらってもよいでしょうか
というかアセンブリ言語でポインタ指定って可能なんでしょうか
0448ネトゲ廃人@名無し
垢版 |
2023/03/17(金) 10:28:03.63ID:???
なんか無理そうやな
>>440のアドレスがポインターの場合ってことでいいんよね
アドレスが0x00100000でオフセットが0x10、0x08、0x14だったとすると
[[[00100000]+10]+08]+14
って感じでいけるハズやで
0450ネトゲ廃人@名無し
垢版 |
2023/03/19(日) 15:07:20.96ID:???
あってる
Add Address Manuallyから画像1番上のAddress:の部分に
[[[game.exe+00FD2420]+b4]+2c]+de
と入力すると同じ結果が得られるはず
0451ネトゲ廃人@名無し
垢版 |
2023/03/26(日) 17:36:31.67ID:???
>>450
遅レスですがうまくいきました
これでスクリプトのコードにいちいち動的コード全通り書かなくてもよくなりました
ありがとうございます
0452ネトゲ廃人@名無し
垢版 |
2023/03/26(日) 21:05:56.68ID:???
https://i.imgur.com/xx2T9uc.png
メモリを見ていると右側の欄にrightfootとかrightuplegとか明らかに意味のある単語がでてきたんですが
そもそも右側の欄は何なのでしょうかなんのために必要なのでしょうか
どなたかお教えください
0453ネトゲ廃人@名無し
垢版 |
2023/03/26(日) 22:11:13.09ID:???
>>452
左側の16進数をASCIIコードとして表示できる場合は対応した文字を表示しているだけ
プログラム内部で使用するパラメータや表示する文字列とかが見える
この文字列を参照してるコード調べれば何かわかるかも程度
0454ネトゲ廃人@名無し
垢版 |
2023/03/26(日) 23:46:01.18ID:???
>>453
わかりました。ありがとうございます。
さらに質問ですがボーンオフセットマトリックスという文字列が表示されるメモリ領域でで8つのアドレスを発見したんですが
ボーンオフセットマトリックスの変数って12個だと思うのですが8個の場合もあるんでしょうか
0455ネトゲ廃人@名無し
垢版 |
2023/03/29(水) 09:41:24.85ID:???
文字列とそれに対応したデータが近いメモリ領域に存在する保証はない
0456ネトゲ廃人@名無し
垢版 |
2023/03/29(水) 12:07:23.57ID:???
>>455
気を付けます。
また>>454で挙げた8つのアドレスですが浮動小数点表現(どうやらIEEE754とのこと)で2つの変数なのがわかりました。
それで、その変数を弄りたいのですが
浮動小数点表現の変数を変換する際スクリプトはどのように書けばいいか分かる方いらっしゃいませんか?
なお対象となる変数は
0は00 00 00 00
1は00 00 80 3f
と数字の順序が逆に書かれています。
0458ネトゲ廃人@名無し
垢版 |
2023/03/29(水) 13:40:21.20ID:???
>>457
アドレスの指定は一番左側に表示されてる数字でいいんでしょうか
1なら
00 00 80 3f

この”00”をアドレスで指定する感じでOKですか?
0459ネトゲ廃人@名無し
垢版 |
2023/03/29(水) 14:37:09.93ID:???
自分で試してみればいいんじゃね
失敗した時に教えた人のせいにできないとダメなん?
0460ネトゲ廃人@名無し
垢版 |
2023/03/29(水) 15:04:25.11ID:C/YS2r3C
>>420

俺の記事でも読んでくれたのかな?
暗号化する関数に生データ渡される時に別のデータとすり替えると楽に任意のパケット送信できる
0462ネトゲ廃人@名無し
垢版 |
2023/03/29(水) 21:21:54.25ID:???
ボーンを(正確にはボーンオフセット行列を)いじるスクリプトを考えているのですが
人間による入力は角度(°)で、メモリの修正はサインorコサインの値で、などといった形はできますか?
できるのであればどうすればよいでしょうか
0465ネトゲ廃人@名無し
垢版 |
2023/03/30(木) 14:53:04.98ID:???
まずは表示する値と実際に入れる値の組でプルダウンメニュー作って選択された項目を設定するとかやってみれば?
角度決めうちならLua書かなくてもいけるかも
慣れてきたら機能追加すればいいと思う
0466ネトゲ廃人@名無し
垢版 |
2023/03/30(木) 20:44:05.66ID:???
>>465
チートエンジンのフォームの話ですよね?
とりあえずフォーム作成でかなり挫けてます。
というのもフォーム作成について解説してくれてるサイトがあんまりなくて。
ここ参考にすればいいとか何かあれば教えてください。
0467ネトゲ廃人@名無し
垢版 |
2023/04/03(月) 21:24:57.83ID:???
とりあえずチートエンジンwikiにあったチュートリアルをしたことで
おぼつかないもののフォームを作成することができ、残りはコーディング部分になりました。
ただ
ハックしたいゲームのメモリのアドレスの値を読み取る方法と、指定したアドレスに値を書きこむ方法
がそもそもわからずコーディングできません。
どうすればそれらができるようになるでしょうか
0469ネトゲ廃人@名無し
垢版 |
2023/04/03(月) 22:21:27.07ID:???
ハックしたいゲームのメモリのアドレスの値を読み取る方法と、指定したアドレスに値を書き込む方法については、チートエンジンwikiに詳しい説明があります。

メモリのアドレスの値を読み取る方法は、チートエンジンのメインページにある「Cheat Engine: Value Types」や「Pointers」などのセクションを参照してください。

指定したアドレスに値を書き込む方法は、チートエンジンのメインページにある「Auto Assembler」や「Code injection」などのセクションを参照してください。

また、チートエンジンを使用する方法については、wikiHowにも分かりやすい記事がありますので、参考にしてみてください。
0470ネトゲ廃人@名無し
垢版 |
2023/04/03(月) 23:27:16.19ID:???
>>468
txtファイルに書かれている関数を使って
writeFloat([game.exe+01016E44]+600,0)
を最後の行に付け加えて構文チェックをすると
..."]:1052: unexpected symbol near '['
とでます。
ぐぐってみると「lua言語で変数名に使用してはいけない記号を使用した際に発生します。」
とあるのですがこれはどういうことなんでしょうか[]を使えないってのはおかしいとは思うのですが
予めgame.exeが何なのかとかコードを書く必要があるんでしょうか
0471ネトゲ廃人@名無し
垢版 |
2023/04/03(月) 23:52:27.03ID:???
lua言語では、writeFloatという関数は標準ではありません。 おそらく、あなたが使っているゲームやライブラリが提供しているものだと思います。その場合、その関数の正しい使い方を確認する必要があります。

一般的には、[]を使ってインデックスを指定する場合、その前にはテーブル名が必要です。例えば、t[1]という書き方はテーブルtの1番目の要素を表します。しかし、[game.exe+01016E44]+600という書き方はテーブル名がありません。もしかしたら、これはメモリアドレスを指定しているのかもしれませんが、luaでは直接メモリアドレスにアクセスすることはできません。

もし、writeFloat関数がメモリアドレスに対応しているとしても、[]ではなく()を使って引数を渡す必要があります。例えば、writeFloat((game.exe+01016E44)+600,0)というようにです。
0472ネトゲ廃人@名無し
垢版 |
2023/04/04(火) 00:31:56.91ID:???
ダブルクォートかシングルクォートでアドレスの部分をくくってみては?
writeFloat("[game.exe+01016E44]+600",0)
0473ネトゲ廃人@名無し
垢版 |
2023/04/04(火) 00:48:02.73ID:???
>>471
[]を()に変更した所構文エラーはなくなりました(txtファイルの説明からもおそらくメモリアドレスに対応していると思われます)
それでスクリプトを実行した所
Error:[string "
..."]:4: attempt to index a nil value (global 'game')
とでました。ぐぐった所スコープ?が悪いとでました。
おそらくgame.exeがグローバル変数と解釈された?と思われます。
writefload関数の使い方がおかしいのかと思い確認しましたが
writeFloat(v: single): float をパイプに書き込みます。 送信されたバイト数を返し、失敗した場合は nil を返します

writeFloat(address,value) : 指定されたアドレスに単精度浮動小数点を書き込みます。 成功時に true を返します

writeFloatLocal(address,value) : CE のメモリ内の指定されたアドレスに単精度浮動小数点を書き込みます。 成功時に true を返します
>>468 さん が言ってたcaluaに載ってる内容なのでチートエンジン的にはすでに実装されている関数であり
説明から見るにwritefloat(,)関数なのは間違いなく、使い方が
0474ネトゲ廃人@名無し
垢版 |
2023/04/04(火) 00:49:21.47ID:???
途中で切れてしましました
説明から見るにwritefloat(,)関数なのは間違いなく、使い方が問題だったのではと思っています。
どう修正すればいいでしょうか
0475ネトゲ廃人@名無し
垢版 |
2023/04/04(火) 02:09:53.12ID:???
function UDF1_1_CEToggleBox1Click(sender)
print(tostring(writefloat))
writeFloat("[game.exe+01016E44]+600",-0.5)
end
で 
>>473 さんの言う通りにしてみた所
うまくいきました!(なんで上手くいったかは全然わかりませんが)
ありがとうございます
0476ネトゲ廃人@名無し
垢版 |
2023/04/04(火) 02:24:11.24ID:???
失礼しました
>>472 さんの間違いです

function UDF1_1_CEToggleBox1Click(sender)
print(tostring(writefloat))
writeFloat("[game.exe+01016E44]+600",-0.5)
end
で 
>>473 さんの言う通りにしてみた所
うまくいきました!(なんで上手くいったかは全然わかりませんが)
ありがとうございます
0477ネトゲ廃人@名無し
垢版 |
2023/04/04(火) 08:44:12.13ID:???
luaのパーサーは標準のやつでブラケット使うアドレス表現は解釈できないってこと?
一旦、文字列引数として受け取って、CEのアドレス表現として評価してるのかな?
0478ネトゲ廃人@名無し
垢版 |
2023/04/05(水) 03:28:28.55ID:???
luaはC#の方言って感じだからC#の文法にないことは出来ない
そういうこと
0479ネトゲ廃人@名無し
垢版 |
2023/04/05(水) 21:38:23.51ID:???
フォームでeditに書かれてる値を読み込むコードを書きたいんですけど
どんな関数使えばいいですか?
0481ネトゲ廃人@名無し
垢版 |
2023/04/07(金) 17:41:33.21ID:???
正直lua使っていくならいちいちここで質問せずにサイトやら書籍使って勉強したほうがいいよ
lua自体はそんな難しいプログラミング言語じゃないし
0482ネトゲ廃人@名無し
垢版 |
2023/04/07(金) 18:17:32.27ID:???
luaと言うかCEでの作法を覚えるしかないと思うぞ
GUI部品とか親フォームからたどっていったり、ID指定で取ってくるとか複数のやりかたがあったはず
フォーラムのコードとか見れば大体解決する
0483ネトゲ廃人@名無し
垢版 |
2023/04/07(金) 18:41:19.27ID:???
>>479
function UDF1_1_CEToggleBox4Click(sender)
print(tostring(writefloat))
print(tostring(readfloat))
writeFloat("[game.exe+01016E44]+5d0",math.cos(math.rad(UDF1_1.CEEdit1.text)))
writeFloat("[game.exe+01016E44]+5f8",math.cos(math.rad(UDF1_1.CEEdit1.text)))
writeFloat("[game.exe+01016E44]+5d8",math.sin(math.rad(UDF1_1.CEEdit1.text)))
writeFloat("[game.exe+01016E44]+5f0",-math.sin(math.rad(UDF1_1.CEEdit1.text)))
writeFloat("[game.exe+01016E44]+5d8",readFloat("[game.exe+01016E44]+5d8")*UDF1_1.CEEdit2.text)
writeFloat("[game.exe+01016E44]+5f8",readFloat("[game.exe+01016E44]+5f8")*UDF1_1.CEEdit2.text)
end
大体こんな感じで
・editに書かれてる値をアドレスに書きこむ
・editに書かれている値の数をかける
はできるようになりました。
ご協力ありがとうございます。
0484ネトゲ廃人@名無し
垢版 |
2023/04/07(金) 18:44:14.18ID:???
行列演算したいんですけど
場合によっては作成したCTファイルを配布する前提(なお作っているCTファイルはオンラインで迷惑行為をするようなものではありません)なので
torchみたいな外部ライブラリをDLせずに演算できるようにしたいです。
どうすれば良いでしょうか。
0485ネトゲ廃人@名無し
垢版 |
2023/04/07(金) 19:40:51.64ID:???
こども電話相談室みたいになってきたなw
外部ライブラリはライセンスに従って自分のEXEと一緒に再配布しちゃえばいいんじゃね?
EXEにしても中ではluaのインタプリタで動くので演算速度のメリットはなく、高速な外部ライブラリキックしたほうが断然速い
0486ネトゲ廃人@名無し
垢版 |
2023/04/07(金) 23:57:26.65ID:???
>>485
torchというライブラリの導入方法がわからいのもあり
とりあえず自分で行列計算のメソッドを書いてみたんですが
これであってますか?

matrix = {}
for i = 1, 3 do
matrix[i] = {}
for j = 1, 3 do
matrix[i][j] = 0
end
end

function matrix_mul(A,B)
local C ={}
for i =1,3
for j = 1,3
C[i][j]=A[i][1]*B[1][j]+A[i][2]*B[2][j]+A[i][3]*B[3][j]
end
end
0487ネトゲ廃人@名無し
垢版 |
2023/04/08(土) 14:00:03.12ID:???
結局
function matrix_mul(A,B)
local C ={{0, 0, 0},{0, 0, 0},{0, 0, 0}}
for i =1,3 do
for j = 1,3 do
C[i][j]=A[i][1]*B[1][j]+A[i][2]*B[2][j]+A[i][3]*B[3][j]
end
end
return C
end
で行列の計算ができるようになりました
いちいち型指定するのにゼロをいれないといけないのが不便
0488ネトゲ廃人@名無し
垢版 |
2023/04/08(土) 23:22:01.03ID:???
大体コード部分はできたんですけど
作っているフォームのパネルやエディット、ボタンなどを
コピーアンドペーストして複数設置するようにするにはどうしたらよいでしょうか
0491ネトゲ廃人@名無し
垢版 |
2023/04/09(日) 00:00:19.88ID:???
object inspector見ればコピペした後に部品増えてんだろ?
同じ位置に出て気付かないだけで
0492ネトゲ廃人@名無し
垢版 |
2023/04/09(日) 00:02:30.50ID:???
>>491
ツリー上の所を見ても増えてないです。
チュートリアルにもctrl+c ctrl+pで複製しろみたいな事書かれているので
できるはずなんですけど…
0493ネトゲ廃人@名無し
垢版 |
2023/04/09(日) 16:31:21.61ID:???
ショートカット使えないならあきらめ
フォームをファイルに書き出して編集、必要な部品コピペして部品IDユニークになるように書き換え、再読み込みとか泥臭いやつでもやってみれば
0495ネトゲ廃人@名無し
垢版 |
2023/04/15(土) 22:56:42.10ID:???
チートエンジンでスクリプトをオンにするとフォームが起動して
オフにするとフォームが消えるようにするにはどうすればいいですか?
0496ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 00:46:24.64ID:???
m_default_right_breast_tip={{0, 0, 0},{0, 0, 0},{0, 0, 0}}
v_default_right_breast_tip={0, 0, 0}
set_this_matrix_as_default(offset_right_breast_tip,m_default_right_breast_tip,v_default_right_breast_tip,…略


function return_to_the_default(offset,
m_default,
v_default,
text1,text2,text3,text4,text5,
text6,text7,text8,text9,text10,
text11,text12,text13,text14,text15)
print(tostring(writefloat))
writeFloat("[game.exe+01016E44]+offset+0",m_default[1][1])
writeFloat("[game.exe+01016E44]+offset+4",m_default[1][2])
writeFloat("[game.exe+01016E44]+offset+8",m_default[1][3])
writeFloat("[game.exe+01016E44]+offset+10",m_default[2][1])
writeFloat("[game.exe+01016E44]+offset+14",m_default[2][2])
writeFloat("[game.exe+01016E44]+offset+18",m_default[2][3])
writeFloat("[game.exe+01016E44]+offset+20",m_default[3][1])
writeFloat("[game.exe+01016E44]+offset+24",m_default[3][2])
writeFloat("[game.exe+01016E44]+offset+28",m_default[3][3])
writeFloat("[game.exe+01016E44]+offset+30",v_default[1])
writeFloat("[game.exe+01016E44]+offset+34",v_default[2])
writeFloat("[game.exe+01016E44]+offset+38",v_default[3])
・・・・(省略)
end

みたいな形でコードを書くと attempt to index a nil value (local 'm_default')
と出るんですがfunctionの変数に行列を入れた場合行列の成分を使うのできないってことですか?
0497ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 00:49:53.33ID:???
まとめ方が下手だな・・・
matrix_a={{0, 0, 0},{0, 0, 0},{0, 0, 0}}

function X(matrix)
print(matrix_a[1][1])
end
の時
X(matrix_a)
を実行できますか?
ということです
0498ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 00:50:08.34ID:???
1. チートエンジンのメインウインドウから、「Table->Show Cheat Engine Lua Script」をクリックしてください
2. スクリプトウインドウで、フォームを作成するコードを記述します
```
-- フォームの変数を作成
local form = createForm(false) -- falseはフォームが自動的に表示されないことを意味する

-- フォームのタイトルやサイズなどを設定
form.Caption = "My Form"
form.Width = 300
form.Height = 200

-- フォームにボタンやラベルなどのコントロールを追加
local button = createButton(form)
button.Caption = "Click Me"
button.Left = 100
button.Top = 50
local label = createLabel(form)
label.Caption = "Hello World"
label.Left = 100
label.Top = 100
```
0499ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 00:55:09.16ID:???
3. スクリプトウインドウで、スクリプトを有効化したときにフォームを表示し、無効化したときにフォームを非表示にするコードを記述します
コード書いたらNGワードになるから頑張って書いて
4. スクリプトウインドウで、「Execute Script」ボタンを押してスクリプトを実行します
5. チートテーブルのスクリプトエントリーのチェックボックスをオンにすると、フォームが起動し、オフにするとフォームが消えるはずです
0501ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 01:25:23.29ID:???
>>499
スクリプトに

[enabe]
(フォーム名).show()
[disable]
(フォーム名).hide()

じゃだめってことですか?
0502ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 01:29:04.94ID:???
>>501
それでもできると思います
ただし、フォームのインスタンスを作成する必要があります例えば、以下のようなコードです

local form -- フォームの変数
[ENABLE]
form = createForm(false) -- フォームのインスタンスを作成
form.loadFromTable(cheatForm) -- チートテーブルに保存したフォームを読み込む
form.show() -- フォームを表示する
[DISABLE]
form.hide() -- フォームを隠す
0505ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 02:18:11.09ID:???
local form = createForm(false)
がコンパイルできないって出ました…
というかluaって変数の型指定って具体的な代入以外でできましたっけ?
0506ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 02:47:59.32ID:???
luaは変数の型指定は必要ありませんが、変数のスコープを指定するためにlocalを使います
Luaでは変数の型は動的に割り当てられるため、必要に応じて異なる型の値を割り当てることができ
もしかしたら、createForm関数が定義されていない可能性があります
0507ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 09:58:24.46ID:???
>>506
私が使用しているcheatengineはヴァージョン7.5で
以前ここでcelua.txtに使える関数が載ってると言われたので
確認しましたが
createForm(visible OPT): creates a CEForm class object(window) and returns the pointer for it. Visible is default true but can be changed
とあったの定義されてるはず…なんですけどどういうことなんでしょうか…
pythonとかだと〇〇のライブラリ呼び出しますみたいな一文書きますけど
luaにも必要なんでしょうか
0509ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 10:52:11.48ID:???
こんなんで動くんじゃね?
{$lua}
local form = nil
{$asm}
[ENABLE]
{$lua}
if form == nil then
form = createForm(True)
end
form.show()

[DISABLE]
{$lua}
if form ~= nil then
form.hide()
end
0510ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 10:57:56.21ID:???
フォームを✕ボタンで閉じちゃったりすると動かなくなるので、formがnilじゃなくても表示されてるか閉じられたformなのか判定する必要がありそう
フォーム閉じるタイミングのコールバックがあれば何かするとか
0511ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 12:21:04.96ID:???
>>509
form.loadFromTable(cheatForm)
挟んでないのに行けるの?…と思いながらも
実行したらいけました。
というか

[enable]
{$lua}
(ォーム名)a.show()

[DISABLE]
{$lua}
(フォーム名).hide()

でいけました。
>>508 さんの言う通りでした。

{$lua}つけなくてもフォームのコーディングとか他人配布のCTファイルのスクリプトははいけたのになんで?ってなりました。
とりあえずよくわかんない時は{$lua}つけた方がいいんでしょうか
0512ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 12:35:02.01ID:???
>>511
そりゃ<LuaScript>の中に書いてりゃLuaってわかるけど、<AssemblerScrip>の中だと{$asm}が前提になってるから{$lua}って明示する必要があっるてだけじゃね?
0513ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 12:41:34.55ID:???
>>512
あぁなるほど
すごく初歩的な質問ですいませんでした。

チートエンジンウィキのチュートリアルにはまったく書かれてない内容なんだけど
チートエンジンのチュートリアルが不親切すぎるのか、ここが相当親切なのか…
0514ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 14:58:00.90ID:???
function f1 (text1,text2)
text1=0
text2=1
end

function ……Click(sender)
f1(form.CEEdit1.text1,form.CEEdit1.text2)
end
みたいなコードを書いて該当のフォームをでクリックしてもform.CEEdit1.text、form.CEEdit2.textの値が変わらないんですけど(しかもエラーはでない)
問題はプログラミング部分でしょうかコーディング部分でしょうか
0515ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 15:28:07.96ID:???
言語仕様よく知らんが、文字列や数値だと値がコピーされて値渡しになってんじゃね?
Editのようなオブジェクト渡せば参照渡ししてくれんじゃね?
0516ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 17:39:02.98ID:???
>>515
それだ!と思ったのですが調べた見たところオブジェクトは参照渡ししかできないようなので
違うと思います。

オブジェクト
以下の型は オブジェクト である
テーブル
Luaのテーブルは動的に確保された オブジェクト
関数
スレッド
ユーザーデータ
オブジェクトは変数の格納されず、参照されるのみである
代入、引数渡し、関数の返り値は、コピーではなく参照が渡される
テーブルついて
0518ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 18:35:43.14ID:???
form.CEEdit16.text=10000
→フォームの数字が1万になる

function f1(text1)
text1=10000
end
f1(form.CEEdit16.text)
→フォームの数字が変わらない

実験して上記の通りになったんで
本来オブジェクトは参照渡しのはずなのに参照渡しされないっぽいです。
>>517
そっちにも聞いてみます。
0519ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 18:45:51.94ID:???
すごい初歩的で致命的なバグが放置されていたんだね
ヒーローになれるかもしれませんね
0520ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 19:11:40.67ID:???
>>519
どうも書き換えるだけでなく読み込む方でも関数の引数にeditオブジェクト使えないっぽいんで
やっぱeditオブジェクトのバグなのかなぁと思ったりもします。
0521ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 19:15:53.16ID:???
はーチュートリアルに実装されてない機能使えとかあったり
フォームはコピペすらできないし
コードに{$lua}って書いてなかったり(チュートリアルに書かれてあるコードだとコンパイルすらできない)
editオブジェクトは引数に使えなかったり
ゴミすぎんだろCE……
0522ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 22:12:35.88ID:???
forumで効いたら
unction f1(text1)
text1.text=10000
end
f1(form.CEEdit16)
とのことでした。
型指定とかゆるゆるなのにこういうところは厳しいのか…
0523ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 22:19:50.99ID:???
writeFloat("[game.exe+01016E44]+660",v_default[1]+text1.text/1000)
でうまくいくのですが、後の改変に備えてモジュール化したいので
offset=0x630
writeFloat("[game.exe+01016E44]+offset+30",v_default[1]+text1.text/1000)
としたらうまくいきません。
どうすればよいでしょうか?
0525ネトゲ廃人@名無し
垢版 |
2023/04/16(日) 23:55:17.64ID:???
>>524
630+30で660では?
readFloat("[game.exe+01016E44]+5d0")では狙い通りのアドレスの値を読み込んでいるため
writeFloat("[game.exe+01016E44]+660",v_default[1]+text1.text/1000)
の+660の部分は+0x660であり+630+30に変えても問題ないため
>>523
と判断しました。
んで結局うまく行ってないです。
0526ネトゲ廃人@名無し
垢版 |
2023/04/17(月) 00:14:00.51ID:???
10進数と16進数で違うが合ってると判断してるのなら原因わからんわ
すまんな
0527ネトゲ廃人@名無し
垢版 |
2023/04/17(月) 00:51:42.16ID:???
>>526
いえ、相談にのって頂きありがとうございました。

改めて検証した所こうなりました。
writeFloat("[game.exe+01016E44]+660",v_default[1]+text1.text/1000)
→うまくいく
writeFloat("[game.exe+01016E44]+0x630+0x30",v_default[1]+text1.text/1000)
→うまくいく
offset_1=0x630
writeFloat("[game.exe+01016E44]+offset_1+0x30",v_default[1]+text1.text/1000)
→うまくいく

function f2(offset)
writeFloat("[game.exe+01016E44]+offset+0x30",v_default[1]+text1.text/1000)
end
offset_1=0x630
f2(offset_1)
→うまくいかない(errorはでない)

うまくいかない理由が分かる方いらっしゃいませんか?
0529ネトゲ廃人@名無し
垢版 |
2023/04/17(月) 04:12:40.37ID:???
開発者に向かってstupidは草
文句だけじゃなくて改善案くらい一緒に書いとけよw
自分で暗に文字列はオブジェクトじゃないとか言っておきながら参照渡しにならないって文句いってるのも草だよな
0531ネトゲ廃人@名無し
垢版 |
2023/04/18(火) 20:41:40.83ID:???
>>527
さらに検証して
function f2(offset)
local o1=offset
writeFloat("[game.exe+01016E44]+o1+0x30",v_default[1]+text1.text/1000)
end
offset_1=0x630
f2(offset_1)
→うまくいく

でうまくいきました。マジでなんで。
本当に意味不明ですがとりあえず目的は達成しました。
0532ネトゲ廃人@名無し
垢版 |
2023/04/18(火) 22:38:53.42ID:yRvVNGuH
function f1(offset,vector)
local o1 =offset
vector[1]=readFloat("[game.exe+01016E44]+o1+30")
end
vector1={0, 0, 0}
offset1=0x630
f1(offset1,vctor1)
→うまくいかない

ためしに下記をしてみると
function f2(offset,vector)
local o1 =offset
vector[1]=readFloat("[game.exe+01016E44]+o1+30")
print(vector[1])
print(vector1[1])
end
vector1={0, 0, 0}
offset1=0x630
f1(offset1,vector1)

0.086963586509228
0
で(本来参照渡しであるはずなのに)値渡し状態になってることがわかったんですけど
これどうすればいいでしょうか。
0533ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 04:34:38.04ID:???
コンパイル必要な言語だとf2の中に出てくるvector1って未定義なんでエラーになるんじゃね?
luaが未定義だからよろしくやってくれて0にしてるとかじゃね?
その書き方だったらf2の前にvector1宣言しとくべきじゃね?
値渡しになってっるってのであれば、f2でreturnして、その値を受け取りゃいいだけじゃね?
0534ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 08:05:01.52ID:???
readFloatとwriteFloatは内部で文字列を解釈してる
そもそもluaの変数名を入れて動いてる事自体が奇跡
たぶんローカル変数しか解釈できないんじゃないの
local address = string.format("[game.exe+0x01016E44]+0x%X+0x30", offset)
local result = readFloat(address)
こうすれば絶対動く
0535ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 09:14:42.42ID:???
覚えたてのcall by referenceって言いたいだけとか?
call by valueだったとすると型がわからないから何をどこまでコピーすればいいかのコストが高そうな気がする
0536ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 19:36:16.14ID:???
>>534
cheatengineformで >>534 さんの言う通りだと教えてもらいました。
>>534 さんのコードの方が私のより可読性が高いものの行数が増えるなぁどうしようと思っていた所、
function f2(offset)
writeFloat(readPointer"game.exe+01016E44"+offset+0x30,v_default[1]+text1.text/1000)
end
というコードを教えてもらいました。一番シンプルでわかりやすいのでこれでいこうと思います。
0537ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 20:39:20.76ID:???
こんな適当なことしか言わない所で聞かずに本家に行ったほうがいいんじゃね?
0538ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 21:01:02.50ID:???
>>532
この件ですが
function f1(offset,vector)
vector={0, 0, 0}
vector[1]=readFloat(readPointer("game.exe+01016E44")+offset+0x30)
end
vector1={0, 0, 0}
offset1=0x630
f1(offset1,vctor1)
→うまくいかない
ってのが正しくて試しに
function f3(offset,vector)
vector[1]=readFloat(readPointer("game.exe+01016E44")+offset+0x30)
end
vector1={0, 0, 0}
offset1=0x630
f1(offset1,vctor1)
→うまくいく
となりました。

関数内で引数の型指定のためにゼロベクトルを代入していたのを辞めた結果うまくいくようになったのですが、
これはどういうことなんでしょうか。ゼロベクトルを代入した結果、vectorとvector1の関係が切れたと見て
いいんでしょうか
0539ネトゲ廃人@名無し
垢版 |
2023/04/19(水) 23:25:41.98ID:???
別オブジェクトの参照で上書きしちゃったんで元オブジェクトが書き変わらないのは当然じゃね?
0540ネトゲ廃人@名無し
垢版 |
2023/04/20(木) 19:59:46.88ID:???
>>539
ということは
function f1(offset,vector)
vector[1]=0
vector[2]=0
vector[3]=0
vector[1]=readFloat(readPointer("game.exe+01016E44")+offset+0x30)
end
vector1={0, 0, 0}
offset1=0x630
f1(offset1,vctor1)
だとうまくいくということでしょうか。
さらに言えばvector={0, 0, 0}は単純に値を書き換えるという意味ではない何かで
vector[1]=0は単純に値を書き換えるという意味でしょうか
python辺りだと一括代入できて楽なんだけどめんどくさい感ある
0541ネトゲ廃人@名無し
垢版 |
2023/04/20(木) 20:58:24.85ID:???
Python知らんけどLuaでも{0, 0, 0}で初期化された新しいオブジェクト(インスタンス)作ってんじゃねーの?
一括代入っつーなら長さ10くらいの配列に{0, 0, 0}代入して配列の長さ確認してみりゃいいだけじゃね?
0542ネトゲ廃人@名無し
垢版 |
2023/04/21(金) 04:48:17.91ID:???
CEだとオブジェクトのアドレス表示できない?
アドレス比較はできるのでどんな結果になるか確認してみれば?
a={0, 0, 0}
b=a
if a == b then print("1") end
b[1]=1
if a == b then print("2") end
b={0, 0, 0}
if a == b then print("3") end
0543ネトゲ廃人@名無し
垢版 |
2023/04/21(金) 20:41:04.87ID:???
>>542 さんのを実行すると
1
2
とでました。また
a=0
b=a
if a == b then print("1") end
b=1
if a == b then print("2") end
b=c
if a == b then print("3") end
を実行すると
1
とでました。ということは基本的に代入すると参照関係が切れるけど
配列の成分に値を入れる場合は特別に参照関係が切れないということで
いいんでしょうか。
0544ネトゲ廃人@名無し
垢版 |
2023/04/21(金) 22:10:08.66ID:???
ただ単に参照って言いたかっただけで実際は何もわかっていなかった人で草
オブジェクトの変数は簡単に言うとデータが入ってるメモリの先頭アドレス
配列の各要素は先頭アドレスからのオフセットでアクセスする(正確には違うけど)
その変数に別データの先頭アドレス入れちゃったらどうなるよ?ってことだよ

あとは、自分で試したのがオブジェクトじゃなくて数値使ってるのも理解できてない証拠
そこはb=cじゃなくてb=0だろ
0545ネトゲ廃人@名無し
垢版 |
2023/04/22(土) 17:55:17.42ID:???
>>544
>オブジェクトの変数は簡単に言うとデータが入ってるメモリの先頭アドレス
>配列の各要素は先頭アドレスからのオフセットでアクセスする(正確には違うけど)
それとb=1をするとbとaの参照関係切れる切れない関係なくないですか?
配列の構造についての解説自体はありがたいですが…
0546ネトゲ廃人@名無し
垢版 |
2023/04/22(土) 20:13:40.89ID:???
論点ずらすなよ
オブジェクトの話してんのにb=1とか値の話を持ち込んで混乱させてるのはそっちだろ

a={0,0,0}って内部では下のような処理してる
 a={} ←どこかのメモリを新規に確保、aにアドレス返す、仮にaddr1とする
 a[1]=0 ←writeFloat(addr1+offset+0, 0)
 a[2]=0 ←writeFloat(addr1+offset+4, 0)
 a[3]=0 ←writeFloat(addr1+offset+8, 0)
b=a ←bにもaの参照であるアドレスaddr1が入る
b[1]=1 ←writeFloat(addr1+offset+0, 1)
ここでは参照先のアドレスaddr1の指す先のデータ書き換えてるだけで、bのアドレス変える操作しとらんだろ?
b={0,0,0} ←aと同じように新規にメモリ確保、別メモリなのでaddr1とは違うaddr2がbに入る
ここでbはaの参照ではなく別データの参照に置き換わったってだけ
参照切れたとか言ってるけど参照切ってるのは君が書いたコード

参照って君が思ってるような選ばれた人しか使えないような高度な考えじゃなくて単なるデータが格納されているメモリのアドレスを指してるだけのものだよ?
0547ネトゲ廃人@名無し
垢版 |
2023/04/22(土) 23:51:19.07ID:???
>>546
じゃあ結局基本基本的に代入すると参照関係が切れるけど
配列の成分に値を入れる場合は特別に参照関係が切れないということですね
あと配列のパターンじゃなくて
b=1などの数値のパターンだとどうなるんですか?
0548ネトゲ廃人@名無し
垢版 |
2023/04/23(日) 00:47:44.80ID:???
基本的とか特別って何だよ?
配列の要素に値を設定する処理はbが指してるアドレスにあるデータを更新してるだけで、b自身のアドレスは変更してないだろ?
0549ネトゲ廃人@名無し
垢版 |
2023/04/23(日) 11:16:35.59ID:???
もう数値とか参照関係ないだろ?
値がコピーされるだけで変数の間には何の関係もない
参照になるのはオブジェクトだけって自分で言ってただろ
0550ネトゲ廃人@名無し
垢版 |
2023/04/25(火) 14:13:40.06ID:???
>>549
じゃあ結局代入すると参照関係が切れるけど
配列の成分に値を入れる場合は参照関係が切れないということですね

b=1の場合でもメモリ確保して1の値がそこで保持されてb自体にはアドレスを返す
であってますか?
0551ネトゲ廃人@名無し
垢版 |
2023/04/25(火) 18:12:00.70ID:???
lua言語の実装としてはデータの入ったアドレスとして管理してるんだろうよ
処理の中で変数bに数値入れたの知ってるから、変数bが指定されたら数値で返してるってだけ
使う側としては0入れたのにアドレスの数値が入ってたらおかしいだろ?

もう悔しくて屁理屈こねて突っ掛かってるだけにしか見えんよ
ソース読めば仕様もバグも全て書かれてるよ
0552ネトゲ廃人@名無し
垢版 |
2023/04/26(水) 16:18:36.91ID:???
>>550
実装によるとしか言えない
いちいち4バイトのメモリを確保してアドレスを保持しているかもしれないし
4バイトではなく8バイトかもしれないし
スタックに保持しているかもしれないし
起動時に予め確保しておいたメモリ領域を使っているかもしれないし
高速化のためにメモリを使わずにレジスタだけを使っているかもしれない
わからんけど動けばよくね
0553ネトゲ廃人@名無し
垢版 |
2023/04/26(水) 18:58:50.59ID:???
lua実装側の変数のメモリ管理とlua利用側の変数の見え方が混乱しているっぽい
あとは参照というキーワードにこだわりを持ってる
0555ネトゲ廃人@名無し
垢版 |
2023/04/28(金) 23:43:47.10ID:???
>>552
実装によるというのは実行するアプリ(この場合ではcheatengine)という意味ですか?
0556ネトゲ廃人@名無し
垢版 |
2023/04/29(土) 08:25:15.56ID:???
君は実装とか言い出す前にluaの言語仕様理解しなさい
実装知りたかったらソース読みなさい
0557ネトゲ廃人@名無し
垢版 |
2023/04/29(土) 09:19:10.08ID:???
>>555
質問を読み直してみたけど変数はすべてアドレスの別名だと思って構わない
aという変数を宣言するとLuaが勝手に0x1000000を割り当ててくれるみたいな
その前提があったうえで、さらにaがテーブルの場合は0x1000000に実データが存在する別のアドレス0x2000000を書き込むということ
0x1000000にすべてのデータを書き込めばいいと思うかもしれない
けど0x1000004にはbという変数が割り当てられてるかもしれないから、そのばあい上書きすることになる
そして上書きを避けるために代入のたびに再割当てをすると処理が重くなってしまう
だから妥協の結果としてテーブルの代入で奇妙な挙動が生まれる
直感どおりの代入がしたいならDeepcopyで調べるといい
たしかPythonも同じ問題を抱えてたはず
0558ネトゲ廃人@名無し
垢版 |
2023/04/29(土) 09:35:17.40ID:???
質問に答え忘れてたからもうひとつ
>>555
そう
けどテーブル代入の奇妙な振る舞いを理解するためにはそこまで考える必要はない
0559LC Production
垢版 |
2023/04/29(土) 18:53:43.55ID:Wp8DYy46
c++でメモリにアクセスして、
敵の情報を取得し、
そのあとメモリを書き換えて視点を移動させる。
コードは教えれないけどそんな感じでチート作れまっせ
0560ネトゲ廃人@名無し
垢版 |
2023/04/29(土) 21:32:38.26ID:???
>>557
deepとかshallowとかの話じゃない
テーブルを関数に渡して、引数の変数を関数内で{0,0,0}で初期化したら呼び出し元に反映されなくなったってのが始まり
その引数をbとすると、b={0,0,0}の代入では参照無くなるのに同じ代入のb[1]=1をすると呼び出し元にも反映されるが違いが理解できないって話
そこで変数はアドレスだという話をしたら、参照は関係ない数値の話を持ち出して数値の変数もアドレスなら~みたいなluaとしての振る舞いと実装が入り雑じった話になってる
0561ネトゲ廃人@名無し
垢版 |
2023/04/30(日) 01:44:56.64ID:???
なるほどね
こだわりがないならreturnに返り値を乗せて呼び出し元で代入すればいい
どうしても参照渡しがしたいならこうするとか?
function f(offset, pVector)
pVector[1] = {0,0,0}
pVector[1][1]=readFloat(readPointer("game.exe+01016E44")+offset+0x30)
end
offset1 = 0x630
vector1 = {0, 0, 0}
f(offset1, {vector1})
今テストできる環境にいないから動くか知らんけど
0563ネトゲ廃人@名無し
垢版 |
2023/05/01(月) 21:34:01.79ID:???
>>560
質問した側がこういうのも失礼なのは承知してますが
あなたはもう質問に応えないでください。
自然言語でのコミュニケーションに難があるのか、質問が終わって次の質問に移行したことを理解してないし
藁人形論法で私のレスを歪曲した上で罵倒してくるのは不愉快です(参照参照一番わめいてるのはあなた自身であることに気付きましょう)
色々ためになった部分がありますが意思疎通が困難でとてもしんどいのでもうこれ以上反応して頂かなくても結構です。
0565ネトゲ廃人@名無し
垢版 |
2023/05/14(日) 14:28:30.85ID:3mWaNf6U
てすと
0566ネトゲ廃人@名無し
垢版 |
2023/05/14(日) 14:28:57.87ID:3mWaNf6U
こんにちは。androidエミュレータでCheatEngineのデバッグに成功した方いますか?
windows10環境でCheatEngine7.5のデバッガをbluestacks5(nougat 32bit)で起動している
fgoというアプリにアタッチしても、設定したブレークポイントで止まりません。
そこで、
https://www.cheatengine.org/forum/viewtopic.php?t=587796&sid=f96bbe572780137c660fc96f23d51099
このサイトの通りにroot化したbluestacks側でceserverX86を起動し、windows側の
チートエンジンからネットワーク越しにfgoのプロセスを開きました。メモリスキャン&書き換えは
ceserver非使用時同様問題なくできます。しかしデバッガをアタッチするとfgoがクラッシュします。
ceserverのログはptrace errorなどがでます。
ceserverArm32などすべてのバージョンを試しましたが、デバッグアタッチ時に
今度は全部のレジスタが使われているなどのエラーがでます。有識者いますでしょうか?
0567ネトゲ廃人@名無し
垢版 |
2023/05/14(日) 14:41:17.94ID:3mWaNf6U
>>566
続きです。
チートエンジンのデバッガの種類を変更したりはしました。
色々調べているとバージョンによってうまくいくいかないがあるそうです。
また、自分でCEサーバーをコンパイルして成功した人もいるようです。
レジスタall usedエラーはANDROID実機では起きず、仮想CPUだから起きるとの見解もありました。
しかし上記サイトの人は間違いなくエミュレータで成功してます。
これからceserverを自分でビルドしたものに変更したり、
過去のチートエンジン、サーバーのバージョンに変えたり、
androidバージョンを9や11に変えたりしようとは思っています。
最悪安い実機の購入も考えてます。
最近チートエンジンに手を出したので色々手探りでやってますが、わかる方いましたら是非教えてほしいです。
0568ネトゲ廃人@名無し
垢版 |
2023/05/20(土) 15:11:53.95ID:jhXCnLLY
>>567
成功しました。お騒がせしました。
0569ネトゲ廃人@名無し
垢版 |
2023/05/20(土) 15:40:26.97ID:???
どうやって成功しました?
自分も過去にやってうまくいかなかったのでよければ教えてください
0570ネトゲ廃人@名無し
垢版 |
2023/05/22(月) 13:26:46.68ID:RqMx9qsL
>>569
test
0571ネトゲ廃人@名無し
垢版 |
2023/05/22(月) 13:30:25.44ID:RqMx9qsL
>>569
>>569
結局実機買いました。pixel 3a中古整備品です。amazonだと13000円で買えます。やはりレジスタused errorは仮想CPUが原因でした。あとpixel3-aはarm64なのでサーバもarm64を起動します。アドレス参照、書き込み、ブレークポイントでちゃんと止まってレジスタも見れます。あとandroid10ではroot取ってもsystemに書き込めなかったので9にダウングレードしました。
https pwnyourphone.com/
このサイトのツールはandroid10以降のデバイスでsystemの書き込み権限を取るツールなのですが、結構色々頑張っても無理でした。開発者に聞いても無理でした。成功デバイスリストがあるんですけど大体XiaomiかGaraxyです。開発者の回答「HUAWEI などを使用していない限り、Android 9 には悪名高いshared_blocks 読み取り専用機能も EROFS (拡張読み取り専用ファイル システム) も、私の知る限りではありません。」とのことです。なので実機を買う場合はandroid9対応、もしくは10なら上記のセキュリティを突破できるデバイスでないとceserver起動できないかもです。
0572ネトゲ廃人@名無し
垢版 |
2023/06/08(木) 23:03:00.77ID:???
ポインターを指定する際にマイナスのオフセットってありえますか?
ありえるのであればどういうデータ構造だとありえるんですか?
0577ネトゲ廃人@名無し
垢版 |
2023/06/11(日) 09:15:58.50ID:???
データサイズ的に奇数になるような構造体だと分かりやすいね
自分でサンプル書いてアドレスや内容ダンプするのが理解が早いな
sizeof使ってみれば一発でわかるし
0578ネトゲ廃人@名無し
垢版 |
2023/06/17(土) 06:10:15.82ID:???
構造体の配列自体はなんとなく
メモリアライメント自体はある程度きちんと
理解しました。ただこれらがどうマイナスのオフセットに繋がるかよくわかりませんでした。ごめんなさい。

あと別件ですが12*7*4byte=336byteのメモリの状態をネット掲示板でたやすく交換できるような
シリアルコード的な短い暗号にする方法って何かありませんか?
0585ネトゲ廃人@名無し
垢版 |
2023/06/27(火) 18:01:18.28ID:vEbqGmyr
初心者はツールに頼る前にCとアセンブラ勉強すれば?
仮想マシンでイチから入れればセットアップも躓かないでしょ。
C: VisualStudioとMSVC++
アセンブラ: Netwide Assembler
(godbolt.orgでC->ASMがどうなるか見れる。)

Practical Malwareナンチャラとか、ゴミみたいな日本語の教材(ツールの貧相な紹介)みたいな低レベルの本読むからいかん。
実践て書いてある本は矛盾してることに気づけ。言語の教本(ネットでも良いやつは探せる)読んで自分で始めるのが一番。

Cの構文、ポインタの概念、アセンブラは3、4文字でできた単語と代入の方向、副作用を覚えるだけ。
小学校でYes, It is a pen.だとか、ヨウ素がでんぷんと...ってのを順番に覚えるのと何も変わらん。

"The importance of small steps"って調べてみ。
1から10知るなんて誰も出来ないよ。興味があるから1から10まで全部覚えるだけ。

以上が理解できないなら向いてない。分かってるならそのうちできるようになるから頑張れ。
ところで
>>0572
そのポインタより手前に有効なデータがあるならいつでもそうできるんじゃない?
だから、継承とかリンクトリスト、構造体の配列なんかはそうなるかもしれないね。
アセンブラ読んでてそれがでてきたなら、コンパイラがそうしたかったとしか。
例えば、int * hoge = &fuga->b;だと、fugaのbはhoge[-1]で触るとかね。
0586ネトゲ廃人@名無し
垢版 |
2023/06/27(火) 18:03:31.85ID:vEbqGmyr
>>585
の安価より下が
>>572
への返信ね。


バカすぎて安価の書き方間違えた。
0587ネトゲ廃人@名無し
垢版 |
2023/06/27(火) 18:05:01.70ID:vEbqGmyr
> 例えば、int * hoge = &fuga->b;だと、fugaのbはhoge[-1]で触るとかね。
あとfugaのbじゃなくてfugaのa。頭回ってないなぁ...
連投ごめんね
0588ネトゲ廃人@名無し
垢版 |
2023/06/27(火) 22:37:05.71ID:???
まぁボチボチ調べながらやってます。

話は変わりますが
浮動小数点の演算で、任意の小数を引数にした演算、を考えているのですが
誤差が出にくい演算のコーディングのコツってありますか?
なるべく整数演算にするってのは常道だとは思いますが今回考えているのは
任意の小数を引数にした演算なのでそれ以外の方法でコツ があれば教えてください
0589ネトゲ廃人@名無し
垢版 |
2023/06/28(水) 00:10:34.77ID:wvfY4N8I
>>588
スレチだしそのくらいググレカス。
精度は型に依るので、単、倍、四倍と扱える桁数は変わってくる。

そもそも小数精度の意味間違えてる。最初から0.9100..00じゃなくて0.91000035..82みたいなのを扱えばズレるわけで。コーディングとかの問題じゃあない。

高精度な浮動小数点を自前で実装するしかないね。

リサーチ癖付けな〜
0590ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 11:19:25.66ID:???
Javaが使えるならプロセス間通信で引数を受け取ってBigDecimalで計算して返すツールを作って常駐させればよさそう
結果を浮動小数点に落とし込むまでは誤差ゼロ
処理速度はだいぶ犠牲になるだろうけど
0591ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 11:32:46.32ID:n3XgK3mH
>>590
別に任意精度小数はJavaの専売じゃないからどの言語にも実装はあるよ…
あとどっちも浮動小数点ね。2進数に落とし込むまでは、が正解。

自分が重箱したいだけだけど、"演算のコーディングのコツ"と聞かれたら計算そのものの話。
>>588はそもそも自分が何をしてるのか理解してないから日本語もガタガタ。

チート板で聞くような用途でそんな精度いらないと思うけどね。
0592ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 11:48:52.90ID:???
よく知らないけどその手の演算ライブラリのDLLをCEのプロセスにロードしてAPI叩くのでは?
0594ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 15:49:10.58ID:???
有効数字は変わらんって言えばいいことをそこまでぐだぐだいう奴が”日本語がガタガタ”笑
0595ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 16:49:21.90ID:???
ツリーはグループとか階層確認だけっぽいけどな
一番裏側の部品から順番に最前面へ持ってけば希望通りに並ぶと思うぞ
あとはフォーム情報のファイル直接いじればZオーダー書いてあるんじゃねーか?
0596ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 17:27:52.94ID:n3XgK3mH
コーディングや計算の段階で誤差が出ると思う奴に"二進数の浮動小数点を使うなら有効桁は変わらないよ"とだけ言って正しく伝わるならそうする。

>>588にそこまで理解力あるならとっくに脱初心者してるんだよなぁ…>>594は人に教えるのうまいでちゅね〜ありがとう〜
0597ネトゲ廃人@名無し
垢版 |
2023/06/29(木) 22:16:58.89ID:???
>>595
一応できたっぽいんですけど
bring to frontで後ろに来て
send to backで前に来る上、
即時反映はされず一旦エディットモードを終わらせないと反映されませんでした。
これって仕様なんですかね?
0599ネトゲ廃人@名無し
垢版 |
2023/06/30(金) 18:25:14.00ID:???
自分より出来ない奴を見下してマウント取るのに必死で草
リアルでも後輩社員にこんな感じで接してるんやろなぁ
0600ネトゲ廃人@名無し
垢版 |
2023/06/30(金) 21:57:45.04ID:???
言葉の定義にこだわってる感じ社会人というより情報学科の一年生とかだろ
そいつに限らず細かいこと気にしすぎなやつ多すぎ
チーターはチーターらしく結果をでっち上げることだけに専念すればいいのに
0601ネトゲ廃人@名無し
垢版 |
2023/07/01(土) 16:46:06.01ID:???
>>596
すいませんがそういうのはスレチです
ここはチート初心者スレなんで
そういうレスはコミュニケーション初心者スレとかでお願いします
0602ネトゲ廃人@名無し
垢版 |
2023/07/02(日) 13:18:20.12ID:b/OSoTcu
三國無双に似たオフラインゲームで
チートコードを作りたいんだけど知見がある方いれば教えて。。

やりたいことは外伝限定で操作出来るキャラを本編で操作したい。

この場合「誰を操作するか」という情報と
外伝キャラクターのidを特定する必要があると思うんだけど、どうやって特定すれば良いのか、そもそもこの考え方が合ってるのか分からなくて。 
因みにドラッグオンドラグーン3っていうPS3のゲーム
0603ネトゲ廃人@名無し
垢版 |
2023/07/05(水) 06:19:20.70ID:Ip85qtpE
仕事でC使ってるのにこのスレの内容全く分からん
0604ネトゲ廃人@名無し
垢版 |
2023/07/11(火) 01:30:38.33ID:N7G3fNL2
専ブラ停止で人がいるかわからんけども
公式の衣装のバイナリ見るのに適したバイナリエディタとかあったら教えてほしい
0606ネトゲ廃人@名無し
垢版 |
2023/07/13(木) 07:00:19.97ID:???
Cのような高級言語知ってるだけじゃわからんよ
機械語レベルの知識がないと
0608ネトゲ廃人@名無し
垢版 |
2023/07/13(木) 22:06:23.74ID:???
unityroomでセーブデータをいじりたいのですがよくわからないので教えてください
Chromeのコンソールを開いて実行コンテキストセレクタをwebgl-frameに設定
IndexedDBからセーブデータを取得するところまではいけました
しかし改ざんしたセーブデータをputしてもゲーム内に反映されません
これといったエラーも表示されないので手詰まりです
0609ネトゲ廃人@名無し
垢版 |
2023/07/14(金) 00:06:59.07ID:???
ネット越しに取得するデータだからデータ破損や改ざん防止でチェックサム的なデータを持ってるかハッシュ値みたいの別途取得して比較してるとか?
0611ネトゲ廃人@名無し
垢版 |
2023/07/15(土) 16:31:03.53ID:???
自己解決しました
セーブデータのサイズが変わったのにPlayerPrefsに記録されるデータ長を変更し忘れてたのが原因でした
0613ネトゲ廃人@名無し
垢版 |
2023/07/20(木) 18:48:14.79ID:Tgz99W6M
サイズの異なるファイルのバイナリを比較したいんだけど
ファイルAのX行からY行、ファイルBのZ行からW行を比較する
みたいなのができるバイナリエディタ知りませんか
0614ネトゲ廃人@名無し
垢版 |
2023/07/20(木) 21:14:37.02ID:???
比較したい範囲を2つのテキストファイルにコピペしてWinMergeで比較すれば楽かもね
0615ネトゲ廃人@名無し
垢版 |
2023/07/21(金) 00:55:20.33ID:M7XcGNJj
あぁそうか
冷静に考えれば誰でも思いつく方策を思いついてなかった
ありがとうございますやってみます
0616ネトゲ廃人@名無し
垢版 |
2023/07/31(月) 14:07:46.07ID:jyz2T/zU
質問失礼致します。0〜9と.しか入力できない欄にプラスマイナスその他文字などを入力する方法ってありますかね?
0617ネトゲ廃人@名無し
垢版 |
2023/08/01(火) 22:10:21.62ID:???
適当な数字入れて文字列でメモリ検索してアドレス見つけたらメモリ側から書き換えるとか
0618ネトゲ廃人@名無し
垢版 |
2023/08/03(木) 09:22:00.02ID:???
OK押した時に文字種チェック入って弾かれることもあるのでチェックロジックNOPにする必要あるかも
0619ネトゲ廃人@名無し
垢版 |
2023/08/03(木) 13:01:21.94ID:CmsUI+Jz
回答頂きありがとうございます。
こちらの方法を試してみます
0620ネトゲ廃人@名無し
垢版 |
2023/09/09(土) 02:34:52.06ID:???
cheatengineの値<スクリプト>の変えた数値を直接上書きできませんか?
それと上書きすると何か問題ありますか?
0621ネトゲ廃人@名無し
垢版 |
2023/09/14(木) 20:55:30.05ID:???
>>620
アドレス直接書き換えだと元の値に書き戻されたりするからスクリプトで書き戻す処理を無効にするとか良くあるよ
聞く前に試すのが早いと思う
0626ネトゲ廃人@名無し
垢版 |
2023/11/21(火) 08:34:19.33ID:h/5+2ZaP
本当の本当に素人なのですが、質問をさせてください。
キャラクターの表情、関節の角度など、画面上で数値が表示されない値を変更したいと考えています。
アドレスの特定がかなり難しい話のような気がするのですが、もし参考になりそうな情報が載っているところをご存知であれば教えていただけないでしょうか。
0627ネトゲ廃人@名無し
垢版 |
2023/11/21(火) 09:45:53.50ID:???
float型を「Unknown initial value」からサーチ始めて少し移動したのち「Changed value」を繰り返す、時折ストップさせた状態で「Unchanged value」を何度か繰り返す
これをやればすぐ見つかるけど大抵は複数のシャドウコピーがあるので一旦すべてテーブルに追加して一つづつ値を変更してキャラが移動するかを試しどれが実体化を割り出す必要がある
0628ネトゲ廃人@名無し
垢版 |
2023/11/26(日) 02:13:27.38ID:DTR8VAyr
dead by daylightのチート作りたいのですが、メモリ読み取りするためにカーネルドライバを使う必要があります。EACに検出されない方法知っている方いますか?現在kdmapperというツールを使用しようとしていますがインテルドライバが既にあるとかいうエラーで立ち往生しています。ちなみに自分で脆弱なドライバを見繕う場合、kdmapperがやってくれてる痕跡削除等も自力で実装する必要があるので面倒くさいです。
0629ネトゲ廃人@名無し
垢版 |
2023/11/26(日) 12:22:56.39ID:???
EACはBattleEyeなんかと並んで一応は世界最先端のアンチチート技術だからその辺は自力で出来ないと無理だよ
誰かの作ったもん利用して一時的に動いたとしても彼らはどんどんアプデ繰り返してくるからすぐ使えなくなる
0630ネトゲ廃人@名無し
垢版 |
2023/11/27(月) 12:50:11.31ID:+4G6I6qw
>>629
それは承知の上で、現在のEACバージョンで未検出のメモリ読み取り方法を知っている方を探しています。例えばvalorantに関しては、現在僕が使っているAIエイムボットは1年間未検出です。EACでもそのような対策されていない脆弱性があるのではないかと思います。BE用でも構いかません。DMAやドライバ公式署名などお金がかかるものでもいいです。もちろん無料でとは言いません。動作の保証があればお金を払います。
0631ネトゲ廃人@名無し
垢版 |
2023/11/27(月) 18:18:38.00ID:???
>>630
AIエイムボットって要するに画像認識系?
であればそれは技術的にはチートとは言い難いものだからまあ検出されなくても不自然ではないが
0632ネトゲ廃人@名無し
垢版 |
2023/11/28(火) 10:40:57.31ID:11HBW4P2
メモリにはアクセスしません。画像認識です。エイムボットは目的であり、その手段としてメモリ読み取り、他の方法がある場合リスクが最小のものを選びます。今回の目的はACに保護されたメモリ領域へのアクセスであり、その手段としてカーネルドライバ、DMA、ハイパーバイザー、それ以外の方法がありますが、検出可能性が最小のものを選びたいです。有識者いましたら是非お願いします
0633ネトゲ廃人@名無し
垢版 |
2023/11/28(火) 14:58:51.36ID:???
オンラインゲームでそこまでして欲しい情報とか書き換えたい情報ってあるの?
敵味方の位置情報とかそんなの?
0634ネトゲ廃人@名無し
垢版 |
2023/11/29(水) 12:52:51.43ID:kig3ZHW8
>>633
まさしくそれです。敵の座標(x,y,z)、自分のカメラ座標(x,y,z)、カメラ回転(x,y,z)、カメラ視野角、これらの情報がbox型のウォールハックに必要です。それらの情報はメモリにアクセスする必要があり、ACに保護されている場合それを突破する必要があります。その他にもクライアント側で管理している面白い情報が見つかります。
0635ネトゲ廃人@名無し
垢版 |
2023/11/30(木) 11:22:41.51ID:???
クライアントのプロセス側からメモリへのアクセスはほとんどの場合blockされないから
そっちにコードっ突っ込んでメモリを読み取ればいい
アンチチート類は外部プロセスからのメモリ読み取りくらいしか制限しないです
0636ネトゲ廃人@名無し
垢版 |
2023/12/04(月) 12:53:35.18ID:+bZ4Nc8f
>>635
情報あざます。全然詳しくないですが、obsやdiscordのdllからフックみたいなやつですかね。ただ、ブロックされないに関してはカーネルかハイパーバイザーで読み取るでクリアしていますが、問題は検出されないかどうかです。discord等のdllを変更すると署名が失効して検出されるそうです。とりあえず今オープンソースのapex linuxチート見てたらハイパーバイザーで読み取ってるぽいので、それを流用してみます。
0637ネトゲ廃人@名無し
垢版 |
2023/12/12(火) 05:12:16.21ID:cGvUlraF
独自の署名付きドライバー(ev or ov)は何人ぐらいに配布したらブラックリストに登録される可能性がありますか?主にヴァンガードで使用します。
0638ネトゲ廃人@名無し
垢版 |
2023/12/28(木) 22:34:00.95ID:/gCTshn8
pythonで質問なんだけど
def 関数名
 for :
  try
  except
   break
  else:
   if :
    return true
 return false
みたいな構造のコードについて
これってtrueを返した後にfalseを返さないの?
一回でもreturnを返すと関数の処理はストップするの?
0639ネトゲ廃人@名無し
垢版 |
2023/12/29(金) 10:06:32.36ID:???
はい、Pythonの関数内で`return`文が実行されると、その関数の実行はそこで終了します。例えば、ある条件が満たされて`return True`が実行される場合、その時点で関数は終了し、それ以降のコードは実行されません。同様に、`return False`も同様に関数を終了させます。

以下は簡単な例です:

```python
def my_function(value):
for item in value:
try:
# 何かしらの処理
if item == 3:
return True # ここでTrueを返すと関数が終了する
except:
break
else:
if item == 5:
return False # ここでFalseを返すと関数が終了する

# 例の使用
result = my_function([1, 2, 3, 4, 5])
print(result) # 出力はTrue
```

この例では、リストの中に3がある場合に`True`を返し、5がある場合に`False`を返しています。どちらかが返された時点で関数が終了し、それ以降の処理は実行されません。
0640ネトゲ廃人@名無し
垢版 |
2023/12/29(金) 13:39:47.16ID:???
>>638
スコープをちゃんと見よう
return trueは一つ上のifが真のときにしか呼ばれない
0641ネトゲ廃人@名無し
垢版 |
2023/12/29(金) 22:13:07.74ID:4KbVxu0X
わかりました
ありがとう
0642ネトゲ廃人@名無し
垢版 |
2023/12/31(日) 00:11:11.39ID:HEGI4ft5
また質問なんだけど
pythonで配列(行列みたいなデータ)の集合を考えているんだけど
重複を許さないような集合ってsetでできる?
適当にコード書いたらTypeError: unhashable type: 'list'て出た
0643ネトゲ廃人@名無し
垢版 |
2024/02/06(火) 23:58:54.07ID:???
CheatEngineのCTファイルで値を変更したメッシュの情報やファイルは抽出できません?
0644ネトゲ廃人@名無し
垢版 |
2024/02/12(月) 14:03:39.58ID:j3pXkv3y
チートエンジンで所持アイテムの個数を一括変更するスクリプトはどうすれば良いのでしょうか
外のサイト見て、HP減らないとか、減算を加算に変更するとかは見たけど、複数の同時変更みたいな記事も見つからずで
現状では、静的アドレスが見つかっている状態で、32バイト先に次のアイテム個数が有るのは分かっています
0646ネトゲ廃人@名無し
垢版 |
2024/02/13(火) 16:52:58.11ID:1xHIlE+5
>>645
作るための知識が不足しているので、苦闘してます
手持ちの別ゲームのCTファイルもあたってみたのですが、似たようなスクリプトが見つからず、
参考にするためのCTファイルがないと厳しいですね

どなたかゲーム問わずで、手持ちのアイテム所持数変更とかのCTファイル無いですかね
0647ネトゲ廃人@名無し
垢版 |
2024/02/15(木) 01:38:03.85ID:???
バイオ2のリメイク
インストールして最初の起動だと操作キャラの位置がサーチできるのに
ゲームを再起動したら再インストールするまで検索に引っかからなくなる怪現象が発生しません?
ちなみに弾数とかは素直に検索できるんですよね
なんか対策してるんですかね
0648ネトゲ廃人@名無し
垢版 |
2024/02/29(木) 12:39:30.88ID:3q3wpwYa
>>647
最初の起動のうちに座標アドレスのオフセットを特定しとくとかかね
0649ネトゲ廃人@名無し
垢版 |
2024/03/01(金) 11:41:46.58ID:???
>>648
ジャンプ命令に気を付けつつコードを一行ずつ遡ってレジスタの代入を目視で確認してるんですけどこれであってます?
正直、最後までできる気がしないんですけど
ベースアドレスがスタックやヒープメモリの領域を抜けたらそこで確定する感じなんですかね
普段はゲームを再起動しつつポインタスキャンの力技でなんとかしてるんでオーソドックスなやり方がイマイチよく分からんです
0651ネトゲ廃人@名無し
垢版 |
2024/03/01(金) 21:42:51.46ID:???
>>650
それっぽいところに仕掛けてレジスタのそれっぽい値を引っ掛けてくる感じですかね
なんとなく分かりました
ありがとうございます
0652ネトゲ廃人@名無し
垢版 |
2024/03/04(月) 11:37:47.88ID:5dK3XVuR
https://github.com/praydog/REFramework
これのオブジェクトエクスプローラ使ってなんとかできんかな。構造体がわかれば手間が大幅に省ける
0653ネトゲ廃人@名無し
垢版 |
2024/03/05(火) 09:18:57.90ID:???
>>652
これすごいですね
https://cursey.github.io/reframework-book/object_explorer/object_explorer.html
ここの動画の通りにたどったらプレイヤー座標の数値が知れたんでメモリ検索かけたら見つかりました
なぜかObject Explorerに表示されてるAddressとはちょっと違いましたけど
ちなみにどうやら再インストールすれば見つかるのはただの偶然で
プレイヤーが静止してても微妙に数値が変わる場合があったのが原因だったっぽいです
0654小心者
垢版 |
2024/03/06(水) 23:07:34.34ID:jIyA5XcM?2BP(0)

アークナイツでチートやりたいんですけどやり方を教えてもらえませんか
0655ネトゲ廃人@名無し
垢版 |
2024/03/13(水) 12:45:19.55ID:Met5e79e
cheatengineで値を変更する。静的な変更を加えたい場合は、unityゲームのチート方法を調べる。
0656ネトゲ廃人@名無し
垢版 |
2024/03/13(水) 19:58:01.72ID:Q9unyfvw
最近cheat engineを使い始めて、値のわかってるものは変更できるようになって、静的アドレスはまだ探せてない、この状態で敵を倒すと100%ドロップとか探せるんだろうか?教えて欲しいです。
0657ネトゲ廃人@名無し
垢版 |
2024/03/15(金) 16:29:33.91ID:/4ejaIg9
ゲームのsdkを生成する(UEしか触れたことないがUnityもオープンソースなのでフリーのツールがあるはず)。目的のフィールドまでのオフセットを確認し、ポインタチェーンを辿り値を変更。sdkの生成ツールはUnreal EngineでいうとDumper-7のようなもの。
0658ネトゲ廃人@名無し
垢版 |
2024/03/31(日) 08:49:06.10ID:???
一度やって出来なくて挫折したんだけれど静的アドレス見つけるのって簡単に出来る?
0659ネトゲ廃人@名無し
垢版 |
2024/04/05(金) 10:07:38.56ID:???
アドレス検索→見つけたらアドレステーブルに追加してポインタマップ生成&保存→ゲーム再起動
これを何回か繰り返す
アドレス検索→アドレステーブルに追加してポインタスキャン
保存していたポインタマップを追加してアドレスをその当時のやつに設定
他の設定はどうすればいいのか忘れた
しばらくすると検索が終わるからそれっぽいのを全てアドレステーブルに追加
PCとゲームを再起動してもポインタが機能しているか確かめる
これでたぶん大丈夫

ここまで書いといてなんだけど
目的のアドレスを処理しているゲーム側のコードをAOBスキャンしてアドレスを盗み見する独自コードを注入するのがフォーラムのCTでよく見る手口
そっちのほうが確実
0660ネトゲ廃人@名無し
垢版 |
2024/04/06(土) 07:43:38.48ID:???
>>659
下の方は良くわからんが上の方で何とか出来た、ありがとう
検索結果が2万とか出たりしたからそれで確実じゃないってこと?
この結果自体を減らすのに有効な手段って有ったりする?総当たりしかないのかな
0661ネトゲ廃人@名無し
垢版 |
2024/04/06(土) 15:46:14.23ID:???
>>660
俺も初心者だから1行目の繰り返す回数を増やすしか思いつかない
でも2万とか見たこと無いな
まあベースアドレスが一番若くてポインタの連鎖が浅いやつを選んで失敗したことがないから
あんま心配しないで大丈夫だと思う
0662ネトゲ廃人@名無し
垢版 |
2024/04/06(土) 18:31:54.78ID:???
>>661
なるほどね
ただ普通のステータスを弄る時はアドレス二桁とかだったから最初のが特別だったみたい


質問ばかりで申し訳無いがメモリから構造体分析で周辺アドレスを探してるけれどオフセット多い物だとポインタ追加するだけでも結構大変
アドレス追加から静的アドレスやらオフセットやらを入力するのではなく静的アドレス自体を複製してオフセットをずらしたり出来るのかな?
0663ネトゲ廃人@名無し
垢版 |
2024/04/07(日) 07:07:53.11ID:???
>>662
よくわからんけどアドレスをコピペしたときにダイアログが出て
そこで最終オフセットを修正できるがそれじゃダメなんか?
複数コピペすれば倍々でアドレスを増やせたはず
0664ネトゲ廃人@名無し
垢版 |
2024/04/07(日) 14:24:48.98ID:???
>>663
ああこれで良かったのね
ダイアログが良くわからなくてキャンセルしてたわ
ごめん、ありがとう
0665ネトゲ廃人@名無し
垢版 |
2024/04/20(土) 01:48:25.32ID:???
パワプロ2022でサクセスのターン数のサーチする方法が分かる方いませんか?
その他のことは大体できるんですがこれは数値を入力をしてもヒットしません
開始がターン数68で、経験点や調子と同じ2byteだと思うですがなぜヒットしない
レスを投稿する


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