游戏外挂制作教程实用课件.ppt
《游戏外挂制作教程实用课件.ppt》由会员分享,可在线阅读,更多相关《游戏外挂制作教程实用课件.ppt(54页珍藏版)》请在三一办公上搜索。
1、游戏外挂制作教程,by 5dai工作室,外挂制作教程,为什么要学制作外挂,为什么要学制作外挂 学习制作外挂,其实是学习一门网络技术,不是仅仅是游戏!我们玩游戏,游戏公司玩我们,你可以忍受游戏的不平衡吗?你可以忍受游戏的BUG吗,你愿意交钱去买外挂(有时后还可能上当受骗)吗?你不愿意自己做外挂自己用吗?你不愿意做几个外挂给你的朋友使用吗?你不愿意体验制作外挂的乐趣吗?你不愿意自己的游戏ID有很多钱,很好的装备,很高的等级吗?看到别人拿着外挂到处惹是生非,你心理平衡吗?所以,我们要自己制作外挂,做自己的外挂!学习制作外挂,不是复杂的事,为什么不花点时间来学习学习呢?学习外挂有3点好处:1、学到一门
2、技术(关于网络)2、可以更好地玩游戏,3、可以利用外挂赚到人民币,制作外挂的可行性,首先,让我们来看一下网络游戏的工作原理:网络游戏是这样工作的:1.由服务器记录保存所有用户资料,所有信息的修改都是服务器完成的2.服务器接受客户机的请求发送必要的信息给客户机,以使玩家正常游戏3.服务器接收客户机的信息反馈,并根据反馈信息,对游戏帐号作相应修改从以上简单的介绍,我们可以看出,网络游戏可以认为是这样工作的:由客户机电脑操作服务器器电脑,对游戏帐号信息进行修改!要操纵本地的电脑是很容易的,因此,要显示所有已经从服务器得到的信息是完全可能的,这就可以做到以下功能: 1、游戏没有黑夜,因为地图在本地,全
3、部显示是完全可以做到的! 2.自动加血是没有问题的,因为血的多少也已经发到本地电脑,完全可以用外挂检测到,并在必要时加血,加血本身只是一个鼠标动作,完全可以交给外挂去做。类似的,自动加魔法,自动加气,自动回城、自动打怪、自动采矿卖钱然后再自动回去采、自动练级等等都可以做到!3.卖东西的过程很经典:你卖东西时,实际就是告诉服务器电脑,你已经将一个东西卖了,真实过程是:你向服务器发送了一个具体物品的封包,如果这个封包正确,服务器就向你的游戏帐号加一定数量的钱,然后再反馈给你一些信息,假如封包不正确,自然就卖不到钱,因此,我们可以利用外挂不断向服务器发送封包,只要正确,那么服务器就认为我们再卖东西,
4、即使我们什么都没有卖,服务器也不断给我们钱,这就是所谓的刷钱。如果封包没有加密,那么这个功能是非常容易实现的,如果封包加密,其实同样可以做到,只是要解密而已,稍微复杂些而已!类似的,就可以实现买东西用假钱(不用钱)。攻击、防御增加,原理都是类似的!以上的讲解,大家应该明白,其实外挂是每个游戏都可能出现的,只要有人想做,那么就没有做不出外挂的游戏!除非这个游戏不能玩!,学制作外挂难吗,外挂的制作,有容易的,也有难的。要制作简单的外挂,自然不难,如果要制作出功能变态的外挂,就比较难一些了,其次和选择制作外挂的工具也很有关系,例如,利用WPE制作外挂就很简单,只要有初中文化就可以制作出相当强大的外挂
5、,如果用VB来编写外挂,也很简单,而且能实现几乎所有的功能,是学习和制作外挂最理想的工具了,VC也一样,难度大一些的是Delphi这样的开发工具,更难的是C语言,最难的就是汇编语言了,几乎可以认为由于太难掌握而不适合开发外挂。本教程主要讲述WPE和VB制作外挂的准备知识、制作方法、制作技巧、实例讲解,由浅如深,逐步介入,学习起来是非常简单的,内容详实、资料丰富。从初学者到高级外挂制作者,都详细考虑了的,能让初学者快速入门,能让高级外挂制作者掌握更多外挂制作的方法和资料!可以说是制作外挂从入门到精通的最好教材!关于外挂制作方面的教材非常少,一般都是只有WPE的简单介绍,关于VB的根本不谈,这是一
6、个普遍现象,使得很多人用WPE按照说明怎么也弄不出来,想用其他软件做又苦于没有一本可以参考的教材,本教材就是在这样的环境下编写的,希望能让跟多的人知道怎样制作外挂,了解这门前沿的知识!,外挂是什么?,现在的网络游戏多是基于Internet上客户服务器模式,服务端程序运行在游戏服务器上,游戏的设计者在其中创造一个庞大的游戏空间,各地的玩家可以通过运行客户端程序同时登录到游戏中。简单地说,网络游戏实际上就是由游戏开发商提供一个游戏环境,而玩家们就是在这个环境中相对自由和开放地进行游戏操作。那么既然在网络游戏中有了服务器这个概念,我们以前传统的修改游戏方法就显得无能为力了。记得我们在单机版的游戏中,
7、随心所欲地通过内存搜索来修改角色的各种属性,这在网络游戏中就没有任何用处了。因为我们在网络游戏中所扮演角色的各种属性及各种重要资料都存放在服务器上,在我们自己机器上(客户端)只是显示角色的状态,所以通过修改客户端内存里有关角色的各种属性是不切实际的。那么是否我们就没有办法在网络游戏中达到我们修改的目的?回答是否。我们知道Internet客户服务器模式的通讯一般采用TCP/IP通信协议,数据交换是通过IP数据包的传输来实现的,一般来说我们客户端向服务器发出某些请求,比如移动、战斗等指令都是通过封包的形式和服务器交换数据。那么我们把本地发出消息称为SEND,意思就是发送数据,服务器收到我们SEND
8、的消息后,会按照既定的程序把有关的信息反馈给客户端,比如,移动的坐标,战斗的类型。那么我们把客户端收到服务器发来的有关消息称为RECV。知道了这个道理,接下来我们要做的工作就是分析客户端和服务器之间往来的数据(也就是封包),这样我们就可以提取到对我们有用的数据进行修改,然后模拟服务器发给客户端,或者模拟客户端发送给服务器,这样就可以实现我们修改游戏的目的了。 目前除了修改游戏封包来实现修改游戏的目的,我们也可以修改客户端的有关程序来达到我们的要求。我们知道目前各个服务器的运算能力是有限的,特别在游戏中,游戏服务器要计算游戏中所有玩家的状况几乎是不可能的,所以有一些运算还是要依靠我们客户端来完成
9、,这样又给了我们修改游戏提供了一些便利。比如我们可以通过将客户端程序脱壳来发现一些程序的判断分支,通过跟踪调试我们可以把一些对我们不利的判断去掉,以此来满足我们修改游戏的需求。,WPE下载,WPE1.3中文版 WPE中文版pro0.7cWPE1.3 英文版 WPE pro 0.7cAsic II 对照查询器(使用WPE会接触到16进制可以使用这个查询)工具的话请大家到网上自己搜索下载吧,非常的多。,WPE介绍,WPE(Winsock Packet Editor)它的中文名称是:网络封包编辑器在大多数的变成工具中winsock已经封装成一个控件,成为网络变成的控件,是非常方便的,利用这个控件,变
10、成工具就可以编写外挂工具,例如使用VB就可以非常容易地编写出很出色的外挂。(顺便打个广告:本教材也有使用VB编写外挂教材,注册后就可以学习,利用VB编写外挂比WPE编写的外挂多出很多优点,例如,可以编写注册功能,使你做的外挂让别人使用时必须注册才能使用,WPE做出来的外挂是任何人得到了外挂就可以使用,不能实现限制使用,并且VB对键盘鼠标的控制,对系统的控制都很出色,VB是visial basic 的意思,就是可视化依据basic语言的编程工具,Basic本身就是基本的的意思,是很简单的语言,但是功能却是非常强大,建议大家学习)现在,WPE有两个版本,分别是:WPE1.3和WPE pro0.7
11、前者是使用与win98操作平台,后者适用与win200和winXP操作系统。都有中文版。,16进制计算方法,16进制和10进制是不同的,进制是人们规定的的,不是一种自然现象,我们只用0-9表示所有数字,那么大于九的怎么表示呢?我们就规定大于9的就进位,高一位的总是比低一位的大,这样我们可以重复使用0-9这10个数字符号表示所有的数字了,这个就是10进制,然而出于某些原因,我们的网络封包不是10进制,而是16进制,与10进制不同,16进制可以用一个符号表示10,是什么呢?就是A,用B表示11,C表示12,一直到用F表示15,那么怎么将16进制转换为我们熟悉的十进制呢?例如如下的一个16进制F2E
12、93(16)其中括号内16表示前面这个是16进制,我们是这样转化的:F=15,2=2,E=14,9=9,3=3所以:F2E93(16)=15 X164 +2 X 163 + 14 X 162 + 9 X 16 + 3结果是很大的,不计算了!呵呵,如果实在不是很懂,可以问我,也可以查阅相关书籍!这里我们强烈建议大家使用win98自带的计算器,他带有进位转换功能,可以帮你计算很复杂的数值,很方便的!关于这个,在工具准备里面有详细图解说明!,打开在选择游戏中选择Internet Exproler程序,点两下(顺便打个广告:本教材也有使用VB编写外挂教材,注册后就可以学习,利用VB编写外挂比WPE编写
13、的外挂多出很多优点,例如,可以编写注册功能,使你做的外挂让别人使用时必须注册才能使用,WPE做出来的外挂是任何人得到了外挂就可以使用,不能实现限制使用,并且VB对键盘鼠标的控制,对系统的控制都很出色,VB是visial basic 的意思,就是可视化依据basic语言的编程工具,Basic本身就是基本的的意思,是很简单的语言,但是功能却是非常强大,建议大家学习)现在,WPE有两个版本,分别是:WPE1.经过前一章的讲解,相信大家对封包有了粗略的了解,这一章是要大家分析封包,其实封包的拦截不是很宽难,难就难在封包的分析上,从习惯上来说,大家都习惯辨认10进制的东西,对16进制,实在是不习惯,没关
14、系,我们会让大家逐渐习惯的!EXE,我们就选择它,他就边成蓝色了!SEND- 0000 0A 09 C1 10 00 00 66 52 44这个意思,那么你再分析就发现完全和我们预料的一样了,这里是IE发送的封包,没有加密的,您可以直接读出来的!区别是不是很小,其中接收部分是完全一样的,但是发送部分有所区别,这个区别是坐标信息!样,难度大一些的是Delphi这样的开发工具,更难的是C语言,最难的就是汇编攻击、防御增加,原理都是类似的!下面的是使用方法,结合封包的16进制讲解!16(10)=10(10)16(10)=10(10)TCP/IP协议简介(2)这里难度稍微大一些,分析时要多加注意了首先
15、,我们注意,第二个封包和第一个封包有相同的地方,怎么看呢?从第二个封包的第三行开始和第一个比较,是不是?这个时候不要看右边的分析了,全是错的!不会看不明白等号了吧?十进制的16等于16进制的10,那么看看 那里有10呢,呵呵,两个封包都有哦,这个就是火球的封包,其中10表示伤害值,如果我们制作一个滤镜,但检测到这个相似的风暴,就自动修改成FF会怎么样呢?如果大家有高中以上文化水平(我想都该没有问题吧?),我想利用函数的方法来讲解加密问题,这样大家容易理解,大家知道函数y=f(x),这里的 x就相当于我们图上的abcdef,而y呢就是123456,箭头就是f,f是映射方式,函数就是某种映射方式,
16、从函数和映射的角度来理解加密是非常好的和正确的,我们为什么要讲这种加密方式呢?因为这种加密方式,不是非常隐蔽,但是非常容易实现,建立一个映射,可以在整个软件中调用,所以,在游戏制作的时候,制作一个映射并不需要太高的技术,而且这个映射可以在任何时候修改,非常容易维护和更新,如果映射规律被破解了,也可以更新游戏来更新映射,达到保密的作用,所以,这种加密方式是游戏里面经常采用的加密方式,更重要的是,这种加密方式对电脑要求低,运算速度快,不会影响游戏速度,所以经常被采用,如果能很好地破解这种加密方式,那么对于游戏里面的一些关键数据,我们就可以非常方便的修改了。看一看密码的特点,全部是字母,而且集中在A
17、到L,在没有任何分析的前提下,我们可以假设这是一个单满映射(关于单满映射的特点及分析方法在后面给出),那么我们得到的是映射的原象,现在要自己建立一个映射来分析,简单的,从字母到字母的映射,看能不能找到一个规律,分析很长,我们建立了从A到A的映射到从A到Z的映射逐个分析,结果都是错的,所以,应该考虑从字母到数字的映射,最后检查出映射是从C到L映射到0-9,分析结果出来了:密码是:13915731275估计是个手机号,经过测试,这个密码是正确的,可以使用!熟悉吧? 先启动这个IE,如果你要进行相同比较,这里个出再卖一个活力的封包,WPE的界面,WPE的主界面如下图,比较法则-相同比较,前面说了相同
18、比较,这节我们详细介绍一下:比较下面两个封包:封包一:封包2:区别是不是很小,其中接收部分是完全一样的,但是发送部分有所区别,这个区别是坐标信息!这个封包来源:星际争霸游戏中连机对战,时,一个士兵移动一步和再移动一步产生的封包,动作是完全相同的,所以,不应该有太大区别!下面给出一个在线游戏的封包对比分析:游戏名称:快打旋风线上版?#123发一个小火球:你可能得到如下封包:SEND- 0000 0A 09 C1 10 00 00 FF 52 44 再发一个小火球,得到的封包可能就变成这样了!SEND- 0000 0A 09 C1 10 00 00 66 52 44 为什么两次不同呢?呵呵,这是游
19、戏了,封包是加密的,不是轻易就可以看出来的了!而且,这里的0A可能有它自己的含义了,不是可以查ASCII表可以查到的了,你需要猜它是什么意思了!我们暂时不分析,到分析游戏封包时再分析,这里主要讲对比!,从封包上看,我们两次动作是一样的,因此,得到的封包也还是大致一样的,很相似,区别只在最后几个上,有这样的分析,实际对我们制作滤镜是很有帮助的!如果我们再收集一点其它信息,实际上我们就可以破译这个封包了,如果我们知道这个小火球打到别人身上,伤害值是16,那么我们就可以知道,16(10)=10(10)不会看不明白等号了吧?十进制的16等于16进制的10,那么看看 那里有10呢,呵呵,两个封包都有哦,
20、这个就是火球的封包,其中10表示伤害值,如果我们制作一个滤镜,但检测到这个相似的风暴,就自动修改成FF会怎么样呢?FF(16)=15 X16 +15=255(10)明白了吗?你的小火球攻击将达到255的伤害,是原来的多少倍哦?比较是很简单的,有比较就容易辨认,请您自己多分析一些实际例子,相信您很快就会学到这种方法的!这里不多举例子了!,TCP/IP协议简介,TCP/IP协议简介:TCP(transport control protocol)中文意思就是:传输控制协议。大家都知道,现在的电脑具有非常多的型号,生产电脑的厂家很多,他们的电脑在各种技术上都不完全相同,甚至都有一套自己的标准和控制方法
21、,电脑进入互联网后,文件传输是必不可少的事件。那么,如何在各种不同标准的电脑之间传输文件呢?这就需要一套大家共同遵守的标准,这个标准就是TCP协议,TCP协议工作原理首先是对需要传输的内容打包,包的大小有其自己处理方法,这个我们不用担心,我们最关心的,就是这个包是什么东西,这个包,就是封包。大家一定在很多地方听说过封包,以为是什么神秘莫测的东西,实际上,Intelnet上的电脑每天都在处理封包,TCP协议就是将这些包一个一个地编上号,然后按照一定的次序向通过IP协议已经建立了连接的另一太电脑把封包发送过去,另一台电脑收到这些有编号的封包后,按照编号把封包组装起来,就得到了需要的文件了!这里大家
22、看到了,TCP协议和IP协议是不同的协议,但是他们协同工作,所以大多数场合下,直接称为TCP/IP协议。顺便讲一下UDP协议,如果在游戏修改中遇到了,也许能用上,UDP(用户数据报协议)是非连接服务,不能保证信息以某种特定的方式到达,事实上,数据可能丢失、被复制、甚至到达序列外的地方,但是它有自己独特的一面,通常用于一些流技术,例如:经由Internet的视频与音频,通过UDP协议传送到计算机中,通过重新编排而用于播放视频或音频。在外挂控制视频或音频方面可以用到!,TCP/IP协议简介(2),通过前面的减少,我们已经知道,TCP协议和IP协议不是相同的协议,IP协议是属于网络层的协议,负责网络
23、连接,主要是寻找地址用,建立连接使用,我们完全可以不管,我们最关心的是TCP协议! 为了说明封包的重要性,这里介绍一下交换技术,交换技术,从这里你可以明白,所有网络游戏都一定回使用封包,交换技术有3种方式:电路交换、分组交换、混合交换。电路交换:是建立连接前先建立一个完整的电路连接,特点是传输速度快,稳定性能好;缺点是:电路有限,能同时提供的服务小,除国家某些基于军事目的的网络可能是这种网络外,我们一般的网络是不会使用这种连接的。分组交换:是报文交换,在接收者和发送者之间不建立实际通路,当发送方发送时,先保存在一个交换局内,然后由交换局传送到下一个交换局,一步一步,知道文件被传送到目的地,这就
24、好比是邮局,我们有封信要传送,我们是发送者,但是我们不直接发到接收者,而是交给邮局,邮局又交给下一个邮局,知道信件到达接收者手里,原理一样,但是有所不同的是:为了防止造成交换局数据堵塞,他们严格限制文件单位大小,这样,一个小包一个小包地发送,每个包都写好了编号、来源、目的地,这样,这些小包就可以一站一站地走向目的地,然后按照编号组装起来,就形成了完整的文件,这里的小包就是我们经常提到的:封包!,这是为了实现良好交换,并满足更多的人同时使用同一条路线的需要而设计的,我们的Intelnet传送文件的一中常见方式,这也就决定了,所有经过网络的文件都是以封包的形式传送的,游戏也概没能外。所以,所有游戏
25、都是以封包形式在服务器端和客户端传送数据的,因此,封包是非常重要的,如果能够对封包进行操作,就可以完成对游戏的修改!功能强大的外挂,就是通过修改封包来完成对游戏的修改的!如果您要学习外挂制作,建议首先从WPE学起,它既简单又容易学习,而且功能很强大,不需要掌握任何编程语言,是学习制作外挂的捷径!,工具准备,全不靠手是不行的,我们需要工具,这里给大家介绍一下怎么利用电脑自带工具和我们准备的工具来减少我们的劳动:准备一个查询器熟练使用计算器 路径:开始程序附件计算器进入如下程序界面:,?,当我们点了进制后发现什么,变成了是吧?这可以为你节省多少时间啊?,WPE的界面,WPE的主界面如下图 sele
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 游戏 外挂 制作 教程 实用 课件
链接地址:https://www.31ppt.com/p-1581980.html