Posted on 2007-03-23 18:36
王勇良 阅读(369)
评论(0) 编辑 收藏 引用 所属分类:
Game
游戏修改器的基本工作原理
所谓游戏修改器,主要是通过修改游戏程序的内存数据或存盘文件来修改游戏中的相关数据,使之达到“无敌”等效果。
游戏修改器主要分为两类:单一游戏的修改器和通用游戏修改器。前者只能修改特定的游戏,我接下来要写的就是只针对英雄无敌Ⅲ这款游戏的;而后者则可以修改大多数的游戏,比较著名的有金山游侠、FPE等。
如何访问游戏程序的内存
当我们的修改器运行于Windows时,首先遇到的问题便是如何访问游戏的内存。
一. 首先,在访问游戏的内存前我们还必须获得游戏进程的句柄:
这可以通过ToolHelp函数获取系统中当前运行的所有进程的列表和各进程的ID,经由用户选择之后通过OpenProcess函数来获取游戏进程的句柄。
若您的修改器运行于后台,而前台是游戏的话,也可以使用GetForegroundWindow函数获取游戏窗口的HWND,再使用GetWindowThreadProcessId转换成游戏进程的ID,再使用OpenProcess函数获取游戏进程的句柄。
二. 修改游戏内存:
有了游戏进程的句柄之后,便可以使用Windows提供的ReadProcessMemory和WriteProcessMemory这两个API来读写游戏的内存了。