[問題]請教有關編撰遊戲修改器
我想寫個遊戲修改器 , 已找出要修改的記憶體位址 , 但卻不知道要如何撰寫程式
於是在網路上詢問相關資訊 , 在某論壇上一位高手給了我一些代碼
但我不太明白這運作的方式 , 有人告訴我這是個外掛
不用加掛code到遊戲內 , 而是獨立運行 , 可否請高手幫忙 , 依照他給我的代碼
該如何去編譯程式 ? 請指教 , 謝謝 !
==============================================================================
==============================================================================
我已經大概知道編程 , 但是卻無法修改遊戲中的數值 , 請高手指正我哪邊錯誤了 ? 謝
謝 !
程式可以運行 , 我在輸入 address 有加上16進位的 0x , value 這是修改直接要得值 ?
開啟時會叫出client.exe , client.exe會顯示 0x440004= 7474
代碼是外國高手幫忙的 , 我不知到哪邊錯誤 , 請版上高手幫幫忙 謝謝 ~
遊戲暫存器: 03740268
必須要先到球員編輯區 , 輸入暫存器位址 , 才有辦法更改
此為GM8和FPE修改法
這支程式卻讀不到內部的位址 , 不知到哪邊有錯誤 ?
====================================
首先 run MemoryEdit.exe
佢會 CreateProcess and run Client.exe
Client.exe 會 不斷 咁 print 會 int 既 address and value
之後 MemoryEdit.exe 會要你 input 個 address 你要 edit 既
個 address 可以 抄返 Client.exe Show 出 o黎 既
e.g. 010E9008 就 input 0x010E9008 <= 0x 開頭 hex
之後 要你 input 個 value e.g. input 8888
之後 等 5 秒
check 返 Client.exe
佢個 value 會 唔同左
=====================================
Client.exe
http://rafb.net/p/2kHbU711.html
MemoryEdit.exe
http://rafb.net/p/98P5I788.html
==============================================================================
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.170.234.241
※ 編輯: andy79323 來自: 218.170.234.241 (03/31 23:46)
※ 編輯: andy79323 來自: 218.170.234.241 (03/31 23:47)
推
04/01 00:05, , 1F
04/01 00:05, 1F
→
04/01 00:10, , 2F
04/01 00:10, 2F
→
04/01 00:10, , 3F
04/01 00:10, 3F
→
04/01 00:17, , 4F
04/01 00:17, 4F
→
04/01 00:18, , 5F
04/01 00:18, 5F
→
04/01 00:21, , 6F
04/01 00:21, 6F
→
04/01 00:23, , 7F
04/01 00:23, 7F
→
04/01 00:24, , 8F
04/01 00:24, 8F
→
04/01 00:25, , 9F
04/01 00:25, 9F
※ 編輯: andy79323 來自: 218.170.234.241 (04/01 00:26)
→
04/01 00:28, , 10F
04/01 00:28, 10F
→
04/01 00:34, , 11F
04/01 00:34, 11F
→
04/01 00:35, , 12F
04/01 00:35, 12F
======================================================
按下跑到這段
::CreateProcess(NULL, szFileName, NULL, NULL, FALSE, CREATE_NEW_CONSOLE,
NULL, NULL, &si, π);
======================================================
→
04/01 00:35, , 13F
04/01 00:35, 13F
→
04/01 00:36, , 14F
04/01 00:36, 14F
※ 編輯: andy79323 來自: 218.170.234.241 (04/01 00:39)
→
04/01 00:43, , 15F
04/01 00:43, 15F
→
04/01 00:46, , 16F
04/01 00:46, 16F
→
04/01 00:49, , 17F
04/01 00:49, 17F
→
04/01 00:50, , 18F
04/01 00:50, 18F
======================================================
以下為修改過的 , 請幫指正哪邊有改錯 , 謝謝 !
#include <windows.h> // add the windows.h
HANDLE g_hProcess;
DWORD g_arList; // Fill the address you want
int iVal; // Fill the value you want
BOOL WriteMemory(DWORD dwAddr, DWORD dwValue)
{
return ::WriteProcessMemory(g_hProcess, (LPVOID)dwAddr, &dwValue,
sizeof(DWORD), NULL);
}
int main()
{
char szFileName[] = "target.exe";
STARTUPINFO si = {sizeof(si)};
hPROCESS_INFORMATION pi;
::CreateProcess(NULL, szFileName, NULL, NULL, FALSE, CREATE_NEW_CONSOLE,
NULL, NULL, &si, &pi);
::CloseHandle(pi.hThread);
g_hProcess = pi.hProcess;
if(WriteMemory(g_arList, iVal))
printf("Write data Sucess!\n");
::CloseHandle(g_hProcess);
return 0;
}
=========================================
※ 編輯: andy79323 來自: 218.170.234.241 (04/01 01:00)
推
04/01 01:01, , 19F
04/01 01:01, 19F
→
04/01 01:01, , 20F
04/01 01:01, 20F
→
04/01 01:03, , 21F
04/01 01:03, 21F
→
04/01 01:15, , 22F
04/01 01:15, 22F
→
04/01 01:16, , 23F
04/01 01:16, 23F
→
04/01 01:17, , 24F
04/01 01:17, 24F
推
04/01 01:21, , 25F
04/01 01:21, 25F
→
04/01 01:23, , 26F
04/01 01:23, 26F
→
04/01 01:35, , 27F
04/01 01:35, 27F
→
04/01 01:37, , 28F
04/01 01:37, 28F
推
04/01 03:53, , 29F
04/01 03:53, 29F
推
04/01 03:56, , 30F
04/01 03:56, 30F
→
04/01 03:56, , 31F
04/01 03:56, 31F
推
04/01 09:16, , 32F
04/01 09:16, 32F
→
04/01 10:04, , 33F
04/01 10:04, 33F
推
04/01 11:40, , 34F
04/01 11:40, 34F
※ 編輯: andy79323 來自: 218.170.219.70 (04/02 10:50)
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
問題
7
34