昨晚我带CheatEngine去兜风,在我目前玩的游戏中找到了一个结构。游戏有4个字符,每个字符都有“生命值”和“法力”,这两个字符都是4个字节(int)。有什么方法可以扫描应用程序找到第一次出现的情况吗?
我发现玩家1的健康状态位于2DC2E72C,我将把它缩短为"72C“,因为其他玩家的健康在那之后非常精确。
在使用了我信任的microsoft计算器之后,我发现每个玩家之间的健康值是240字节。玩家的法力值为4字节,位于生命值之后,因此其结构如下:
所以我的问题是,我能在应用程序内存中搜索这个模式吗?模式将沿着这样的线: 2x4字节,240字节,2x4字节,240字节.
发布于 2014-02-13 07:09:06
如果有包含内存内容的文本文件,则可以使用正则表达式搜索所需的模式。Boost有一个很好的正则表达式库。
发布于 2014-02-13 07:12:49
我认为不会有一种managed
的方法来做到这一点。
但是,CheatEngine是一个开放源码程序,它也是这样做的。
http://www.cheatengine.org/
也许您可以查看源代码,并找出您需要使用C#实现相同的API调用。
更新:我知道了,您已经提到了CheatEngine,第一次忽略了它。我在CodeProject http://www.codeproject.com/Articles/15680/How-to-write-a-Memory-Scanner-using-C上找到了这篇文章
看起来很简单
发布于 2014-02-13 07:23:31
如果我没记错的话,当时有一个叫做FreeCheese的作弊程序。它的工作方式是这样的:
步骤6很棘手,因为您需要进行类型/大小检查,以确保您能够实际应用新值。
快乐的欺骗:)
https://stackoverflow.com/questions/21747401
复制相似问题