如何在外部程序中使用通过内存扫描程序发现的数据?

zer*_*ord 11 c assembly

所以,一些背景:我正在使用一个名为cheat engine的内存扫描程序来获取非开源视频游戏中的游戏统计数据(例如hp,mana,exp)的实时值,我正在尝试制作机器人.

为了让我的机器人有效地使用这些信息,我需要及时从欺骗引擎(或具有类似功能的任何内存扫描程序)到我的机器人代码.

现在,一个显而易见的方法是将所有信息保存到文件中,然后在我的机器人代码中加载文件,但由于这些数据需要大约每半秒更新一次,这不是一个真正的解决方案.

我真正需要的是一个非常方便的内存扫描程序,它允许您在一些编程语言(最好是java,c或matlab)中使用您发现的信息作为一组变量,或者访问一个中找到的内存地址的方法上述语言

后一种选择应该是可行的,因为作弊引擎提供了内存地址,控制进程ID和数据类型.

kar*_*lip 10

这个问题没有一个简单的答案.据我所知,你对这个领域很新,所以你真正需要的是对这个主题的正确介绍,为此我建议阅读利用在线游戏:欺骗大规模分布式系统.

这是一本很棒的书,它详细地展示了游戏黑客的工作方式,并且它专门讲述了如何构建机器人.

如果要编写应用程序以读取/写入这些内存地址的数据,则需要调查ReadProcessMemory()WriteProcessMemory()等函数.无论您选择何种语言来实现机器人,都需要提供对Windows API的访问权限.这是必需的,因为你必须操纵另一个进程的内存空间.

目前 很多教程在那里,展示了如何做到这一点使用ÇC++,因为它们是首选语言做这种东西.另一种选择是使用宏工具,如果你想要一些简单的东西来为你玩游戏.

现代电脑游戏实施自己的反作弊机制,使像(和我)这样的人更难一点.由于本书介绍了攻击和防御技术,我建议任何对如何利用计算机游戏感兴趣的人.这本书充满了代码示例.

我很抱歉没有提供更多的信息,但过去曾经因为你的好奇心帮助过我而受到批评,我也绝不会比这本书的作者解释如何做这些事情做得更好.