游戏机器人的开发工具及开发步骤.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
这个系列文章,是没有事先打草稿的,纯属信手写来,所以,其中的条理性可能不太好,我会在以后的整理中将稿子再好好整理。我们接着上一次的内容,说一说游戏机器人的开发工具和开发步骤。 游戏机器人的开发包括两个重要方面,它们是:封包分析和加解密。当然,这是一种相当宽泛的说法,非常不严密。具体地来说,在封包分析中,又包括:封包结构的确立,封包数据内容的解密,封包校验码的生成,封包序号码的生成等。而程序加解密中除了游戏主执行程序文件本身的脱壳之外,还主要包括使用静态分析和动态追踪两种方法解决以下主要问题:用户名及密码的解密,封包校验码的生成等。现在市面上出现的网游,在封包内容上已经很少不进行加密了,当然,加密的方案不尽相同,有的是对游戏中的所有封包内容进行加密,而有的只针对于敏感的封包内容进行加密,比如登录封包,战斗封包和移动封包等。 所以,游戏机器人的开发工具,除了程序语言工具之外,还应该有封包分析,加/解密,数值换算等配套工具。总的来说,游戏机器人的开发工具主要包括: 1.至少一种程序语言工具,支持socket网络编程即可,如:VC,VB,DEPHI等。现在市面上出现的游戏机器人,也多以这三种语言为主要开发工具(PEiD软件可以帮助查看程序使用的是何种开发工具编译的,并可对程序所加的壳进行识别,下载地址:/tools/unpack/File%20analysers/peid/PEiD.zip (下载地址来自看雪网站))。笔者使用的是Delphi7.0,其中的TClientSocket组件??或 Indy控件组中的TIdTCPClient均可用来进行游戏机器人开发,其中TClientSocket在Delphi7.0的默认安装中是没有的,必须手动安装,安装方法是:Component - Install Packages - Add - ...\Program Files\Borland\Delphi7\Bin\dclsockets70.bpl。 2.至少一种用于截包的工具软件。截包工具分为两类,一种是截获流经网卡的数据包,一种是截获指定应用程序的包。 两种截包工具的工作原理不一样,前者是底层的,通过网卡驱动层来获取所有流经网卡的数据,而后者则是通过替换SOCK函数的方式先于应用程序获得网络数据包转而进行自己的处理。对于前者,代表性的工具有:sniffer pro ,commview等;而对于后者,代表性的工具有:wpe等。这几种工具必威体育精装版版都可以很方便地从里找到。笔者在使用时,是两种配合着使用的,但主要的还是使用commview。在使用commview之前,我使用sniffer pro的,但发现了commview之后,就彻底抛弃了sniffer pro,只能用一句来形容:commview太棒了。关于commiew的具体使用方法和技巧,我会在下一节的封包分析一文中进行详细阐述。 3.反汇编及调试工具。很多人都知道,不加密的网络游戏时代已经运去,现在如果有哪一款网络游戏不加密,那么在很短的时间内,该游戏的外挂就会满天飞。 网络游戏的加密可以分很多不同的层次,有网络数据包级别上的加密,有客户端游戏数据文件上的加密(比如物品文件),有客户端执行程序上的加密和加壳等等,凡此种种,不一而足,解密的方法也变得越来越复杂。从总体的策略上来说,解密方法有两大类:静态分析和动态调试。静态分析指使用特定的软件将游戏可执行主程序反汇编成汇编代码后,对汇编代码进行静态分析和比较。动态调试是指特定的软件对游戏可执行主程序进行动态的跟踪调试,跟踪数据的变化规律和程序的执行流程。静态分析常用的软件主要有IDA pro等,而动态调试常用的软件主要有softice和ollydbg等。需要指出的是,在进行解密时,静态分析和动态调试两种方法是交叉使用的,是互为补充的。这两种软件的具体使用方法,我会在后续的章节中予以介绍。 4.其它在程序查/脱壳,封包分析和数据计算等方面中的常用工具。这些工具包括:查/脱壳工具,m2m异或计算工具,ascii码换算工具,windows自带的计算器(科学型方式下主要用于进制转换)。 在/tools/unpacker.htm中有一些查/脱壳工具,但这里的脱壳工具主要是针对于加壳时使用的是程序加壳的方式而不是手动加壳的方式,针对于手动加壳的情况必须使用的手动脱壳的方式。在“加解密”这方面的书籍中,我向大家推荐看雪论坛出的“加密与解密(第2版)”,它可以使有汇编功底的游戏机器人初学者在较短时间内深入核心。 如今的网络游戏,由于数据交互的频率和流量非常大,所以,出于效率和游戏流畅感方面的考虑,不太可能采用非常复杂的封包加密算法,很多情况下,封包用的是异或加密,即:让原来的封包数据与某个数值进行异或后产生加密的数据,至于这个参与异或的数值具体是多少就有待基于经验

文档评论(0)

qtrt148 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档