Prison Architect 64位逃脱模式穿墙代码
生活随笔
收集整理的這篇文章主要介紹了
Prison Architect 64位逃脱模式穿墙代码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
坐標原點是右上角,x向右增大,y向下增大,坐標是4字節的float,用模糊搜索增大減小的方法找到之后,修改它如果玩家產生瞬移,就得到了玩家坐標,然后用指針掃描找基址,重啟游戲,切換不同的監獄,直到找到一個可用的指針。xy是連在一起存儲的,x的地址+4就是y。
寫一個dll,用Xenos64注入進去就可以了。
// dllmain.cpp : 定義 DLL 應用程序的入口點。#include "pch.h"HMODULE g_hDll = NULL; HANDLE g_hEntryThread = NULL;DWORD WINAPI EntryThread(LPVOID p); DWORD WINAPI EjectThread(LPVOID p);BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) {switch (ul_reason_for_call){case DLL_PROCESS_ATTACH:g_hDll = hModule;AllocConsole();freopen("CONOUT$", "w", stdout); g_hEntryThread = CreateThread(NULL, 0, EntryThread, NULL, 0, NULL);CreateThread(NULL, 0, EjectThread, NULL, 0, NULL);break;case DLL_THREAD_ATTACH:case DLL_THREAD_DETACH:case DLL_PROCESS_DETACH:break;}return TRUE; }DWORD WINAPI EjectThread(LPVOID p) {while (1){Sleep(100);if (GetAsyncKeyState(VK_END)){printf("Bye!\n");TerminateThread(g_hEntryThread, 0);FreeConsole();FreeLibraryAndExitThread(g_hDll, 0);}}return 0; }DWORD WINAPI EntryThread(LPVOID p) {INT64 address;float *x = NULL;float *y = NULL;HANDLE hExe = GetModuleHandleW(L"Prison Architect64.exe");printf("PrisonArchitect64.exe: %p\n", hExe);address = (INT64)hExe;address = *(PINT64)(address + 0x009CDBF8);address = *(PINT64)(address + 0xC);address = *(PINT64)(address + 0x18);address = *(PINT64)(address + 0x2B8);address = *(PINT64)(address + 0x28);address = *(PINT64)(address + 0x18);address = *(PINT64)(address + 0x18); address = *(PINT64)(address + 0x28); address = *(PINT64)(address + 0x2C); x = (float *)(address + 0x38);y = x + 1;printf("pos: %f, %f\n", *x, *y);printf("You can click [END] to exit the cheat menu!\n");printf("You can click [F4] to enable super move!\n");BOOL bSuperMove = FALSE;float fStep = 0.1;while (1){Sleep(30); if (GetAsyncKeyState(VK_F4)){bSuperMove = !bSuperMove;}else if (GetAsyncKeyState('W')){if (bSuperMove){*y -= fStep;}}else if (GetAsyncKeyState('S')){if (bSuperMove){*y += fStep;}}else if (GetAsyncKeyState('A')){if (bSuperMove){*x -= fStep;}}else if (GetAsyncKeyState('D')){if (bSuperMove){*x += fStep;}}}return 0; }總結
以上是生活随笔為你收集整理的Prison Architect 64位逃脱模式穿墙代码的全部內容,希望文章能夠幫你解決所遇到的問題。