共轭箱(cobins):一个开源的游戏辅助工具开发平台

什么是共轭箱(cobins)?

共轭箱(cobins),是一个开源的游戏辅助工具和反向工程开发平台,适用于网络游戏(也可应用于单机游戏)辅助工具的开发。平台提供了开发游戏辅助工具的一套免费、完整的开发包(SDK)供您使用。该开发包在试图构建一个优秀的开发模型的基础上,提供了丰富友好的API (应用编程接口)和实用的工具。基于这个平台,你能够更容易更快捷的开发你自己的游戏辅助工具。

共轭箱的代码经过之前多个版本的迭代,架构和设计逐渐走向成熟,目前已经在github上开发其全部源码:

https://github.com/stefangao/Cobins_Windows

下图是共轭箱的组件架构:

什么是游戏辅助工具

现在的网络游戏多是基于互联网的客户∕服务器模式,服务器程序运行在游戏服务器上,游戏的设计者在其中创造一个庞大的游戏空间,各地的玩家可以通过运行在自己电脑上的客户端程序同时登录到游戏中,他们共同进入到这个虚拟游戏空间中,会相逢,会聊天,会结交,会结仇,当他们置身其中,仿佛感到这里就是一个大的社会,大的江湖。

游戏辅助工具的产生实际上是伴随广大玩家的需求产生的。现在的网络游戏充斥着太多的单调重复的游戏情节,例如打怪升级,你有没有计算过打死一个怪至少需要几次鼠标点击?移动位置,选怪,施放技能,加血补气,捡包裹等等都需要你的手工操作。如果是100个怪,1000个怪,10000个怪,你需要做多少次这样的索然无味的重复操作。很多玩家希望把更多的时间投入到游戏本身的情节中,希望游戏给自己带来的更多的快乐更好的体验,而不是把青春都浪费在鼠标键盘上。在这个背景下,游戏辅助工具就应运而生了。

游戏辅助工具按实现原理划分,可分为几类:

  • 模拟鼠标键盘
    这是最早期的游戏辅助工具。一般只需要设置时间间隔,时间一到它就会按照既定的程序点击鼠标或按键。这种工具因为不采集游戏的任何数据,所以可以称之为“瞎子”工具。
  • 采集屏幕颜色
    这种外挂在第一种基础上提高了一步。它可以通过Win32的GUI接口,获取屏幕上的某个点的颜色,从而在一定程度上获得游戏人物的当前状态。例如:可以通过采集血条位置的屏幕颜色,获得人物的当前血量,辅助工具根据当前的血量生成补血的策略。这种辅助工具也有它的缺点,
    (1)没在游戏界面上显示的状态无法获取。
    (2)即便在界面上显示的数据,有时因为屏幕的颜色十分复杂且无规律,也很难获得该状态数据。
    (3)需要游戏窗口前台运行,且不能被其他程序的窗口覆盖。
  • 截获和修改游戏封包
    网络游戏的服务器和客户端是按照一定通信协议、交换封包来达到传递信息的目的。如果能截获游戏封包,分析出封包的结构和含义,就能按照某种需求做相应修改。因为服务器和客户端之间通信的任何数据都是通过封包传递的,理论上,如果能理解每个封包的含义,是可以通过这种方法写出任何辅助工具的,甚至可以自己开发出一个游戏客户端。
  • 读写游戏内存
    通过一些工具,如:Cheat Engine,获得某些游戏数据的地址,通过对地址的读取,就可以获得相应的游戏数据的值。
    这种方法的难点在于获得存储某一数据的基址,基址一般就是程序的全局变量或静态变量的地址。在很多情况下,这些数据要从基址经过很多次偏移才能获得。另外即便是基址,当游戏客户端版本升级时,也可能会发生变化。
  • 其它方法
    除了以上几种方法外,通过对Win32 API加钩,捕获游戏GUI或引擎函数等,也可获得游戏状态和数据。只要不断钻研还有很多方法等待你的发现。
     

共轭箱能帮你做什么?

游戏辅助工具需要控制另外一个进程(游戏程序)的运行,这种特殊性使得开发游戏辅助工具与开发一般的程序不同。同时在游戏辅助工具的开发中常用到的一些技术,如截获网络封包,动态库注入,Hook API, 游戏进程与辅助工具进程的通信和同步,以及游戏辅助工具的状态控制等,对一般的游戏玩家甚至某些开发者都是十分陌生和困难的。共轭箱正是为了解决这一问题,通过它,希望更多的游戏玩家加入到开发游戏辅助工具的队伍里来。

共轭箱开发平台构建了一个优秀的开发模型,使得它具有模块化、可复用、可装配和可扩展等特点。它把很多辅助工具常用的一些技术封装后集成到开发平台中,使得开发者不需要再关心这些技术的实现细节,甚至有些技术在共轭箱平台中对开发者是完全透明的,他们只需要把精力放在对游戏本身的分析和辅助工具逻辑的构建中。而不需要花太多时间和精力在辅助工具的技术实现上。

对共轭箱开发人员的要求

共轭箱的代码由C/C++编写,平台所提供的API也是C或C++的接口。所有示例程序使用的开发工具都是Visual Studio 2017,其工程文件只能在Visual Studio中打开,如果VS版本不同,使用前可能需要做相应的转换。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
创建关注者/关注IG帐户的列表,找到2个IG帐户的普通用户,大量关注,喜欢您的Feed中的帖子 版本0.315 - 允许喜欢在您的饲料中的帖子,这是非常有用的,当你跟随很多的用户,并希望让所有人都高兴。 版本0.314 - 允许从生成的用户列表中发送所有未被遵守/未被请求的用户的追踪请求。 版本0.308 - 允许将获取的用户数量限制为第一个返回的用户数量。从我的观察来看,最初的追随者/追随者是在一开始就返回的,因此限制产出对于获得最新的关系是有用的,特别是对于关系数量巨大的账户。如果在输入框中限制值为0,并且是打开扩展弹出窗口时的默认值,则不应用限制。 版本0.305 - 稳定的版本,所有发现的缺陷是固定的,也改变了流程,使结果更快 - 最初显示短信息列表,并获取详细信息在后台运行。当获取详细信息完成后,显示详细信息列表。 版本0.301 - 版本调整为Instagram.com新的API,可能包含错误,并有改进的空间,继续工作。但至少核心功能再次起作用。 版本0.290 - 导入到Excel,更加改进了HTTP 429错误的处理,错误修正和改进,包括指示当承诺的追随者/追随者数量与实际返回的用户数量不一致的情况(可能会发生多个帐户连接的用户)。 版本0.280 - 错误修正,流程优化,性能改进,HTTP 429错误的改进错误处理,添加别名<< YOU>>。 版本0.260 - 增加了在两个instagram帐户之间寻找普通用户的功能。 这是为什么? 你有没有试图找到你关注的Instagram用户,谁不关注你?你有没有想过创建一个你的名单,或者不只是你的追随者和跟随用户?你有没有想过出口这样的名单?我做了,但是我没有找到简单和安全的方式来做到这一点。因此我决定自己实现这样的功能并共享它。因此,使用此扩展程序,您可以将您的追随者和您关注的用户合并到一个列表中,并选择将其导出为CSV文件。实际上,您不仅可以导出您的关注者和关注用户,还可以导出您允许关注的任何公共账户或私人账户。 怎么样? 当您单击扩展图标时,弹出窗口将显示包含用户名的输入框(扩展名试图从URL中提取用户名或者您可以自己输入名称),导出范围(全部,用户关注或用户后面跟着)和“Get Insta Users”按钮。点击这个按钮,你将被带到结果页面,并启动用户的导出过程。这个版本的性能得到了改进,例如8438个用户在838秒内出口。 当程序完成后,页面会显示用户的图片,身份证号码,姓名,身份,跟踪用户的指示,用户是否跟随你的指示,用户账户是否私密,跟随者的数量,跟随账户的数量和员额。显示的页面具有搜索和排序功能。 技术细节。 这个扩展的源代码可以在GitHub上找到,所以你可以验证它不做任何不允许的事情。它将AJAX请求发送到Instagram服务器以检索用户列表及其详细信息。这些请求是代表你发送的。有两个选项: 1)一次通话中返回的用户数量。默认值是100,但是调试这个功能后,我意识到Instagram的服务器并不太重视这个参数,通常在一次调用中返回约20个用户。 2)发出下一个请求之前的延迟,默认值为1000毫秒。如果没有延迟,为了获取长长的用户列表,Instagram可以返回HTTP代码429(请求太多,几分钟后尝试)。目前这种情况还没有得到处理,唯一的办法是拖延。 访问http://instascraper.weebly.com获取更多信息。 支持语言:English (United States)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

峻峰飞阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值