以编程方式读取 Adob​​e 游戏变量/与游戏/游戏机器人交互

Posted

技术标签:

【中文标题】以编程方式读取 Adob​​e 游戏变量/与游戏/游戏机器人交互【英文标题】:Programmatically read Adobe game variables / interact with the game / game bot 【发布时间】:2013-02-22 07:42:58 【问题描述】:

基本上,我正在尝试读取游戏的聊天记录并捕捉用户的操作。

这是我将解释情况的图像:

1:我在聊天中发了一条消息

2:我尝试使用 Cheat-Engine 在游戏内存中找到它

3:通过检查找到它的每个地址,我最终找到了这个,其中包含似乎是 html 格式的聊天.. 那部分只是聊天的底部。 (如果我向上滚动,我会看到其余部分)

所以,我问自己如何读取游戏变量来与游戏交互。

我想要实现的另一件事是捕捉用户的操作,以便我可以在 winform 中显示一些信息。

我刚刚阅读了有关数据包嗅探的文章,这对我正在尝试做的事情来说似乎很有趣。

我尝试使用 WireShark 读取进出此应用的数据包。游戏中的每个动作都发送了一些数据包,但我无法阅读它们,因为它们只是一堆奇怪的字符。我尝试使用在 WireShark 论坛上获得的一些方法来解密它们,但没有成功。我在问自己,即使我可以在 Wireshark 中看到它们,我将如何以编程方式做到这一点..

当然有一个很好的方法可以做到这一点,因为我们经常在这个游戏中看到机器人。 考虑到“在团队中”玩的机器人数量,我很确定它们不使用点击,但它们会在后台运行一些发送请求的东西。

你如何制作这样一个能自动与玩家战斗、交谈、互动的机器人?

这个游戏是 Dofus,由 Adob​​e Air 提供支持。

我通常使用 c++ 和 c# 进行编程,但我想知道最好的方法是什么。

我需要朝正确的方向踢

【问题讨论】:

【参考方案1】:

也许在您的 c# 项目中尝试使用 tcp/ip 列表器控件(或在 c# 中使用 tcplistner 类)并使用适当的端口来捕获请求(和响应)。发送的信息可能会被压缩,因此您可能需要尝试一些标准算法。

Did you try reverse engineer the AIR app ?

【讨论】:

谢谢弗朗索瓦!我目前正在进一步研究捕获/发送数据包到游戏。 逆向工程无法工作,因为它是基于服务器的游戏,客户端使用 Flash 渲染游戏。 哦,我明白了。我现在正在使用 SharpPcap 库来读取/发送数据包。到目前为止,我能够获得从游戏发送/发送到游戏的数据包:D 困难的部分是确定数据包的“功能”部分的含义,因为只有十六进制代码。无论如何,我正在测试:P

以上是关于以编程方式读取 Adob​​e 游戏变量/与游戏/游戏机器人交互的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式知道 Adob​​e Reader 已完成文件加载?

将 Adob​​e Flash Builder 游戏转换为 Air?

使用 Node.js(和 NPM 包“psd”)解析 Adob​​e PSD 文件,以编程方式替换图像层,然后保存/渲染为 PNG

适用于 Android 的 Adob​​e 原生扩展以播放声音

上传 Adob​​e Air APK 300MB

游戏(例如遗忘)任务是如何建模的? [关闭]