课程安排,暂定,有可能会实时修改
编程语言,VC++6.0 工具主要为(OD1.1,CE5.4)
预计平均3天左右更新一课
大家好,我是郁金香老师:QQ150330575
欢迎大家参加梅州技术 VC++外挂编程VIP培训班。
在接下来的一段时间将由我和大家一起学习游戏外挂的分析,制作。
课程分四个大章节
初级篇,中级篇,进阶篇,高级篇
初级篇内容:编写一个完整的,简单的外挂
C++的数据类型:Byte,Word,DWORD,int,float
API函数的调mouse_event,GetWindowRect,SetCursorPos,FindWindow,SendMessage)
CE5.4工具的使用方法
中级篇内容:调试工具的使用技巧,功能CALL的概念
调试工具OD1.1的使用技巧(如硬件断点,条件断点,内存断点。
常用汇编指令与对应高级语言的转换。
游戏功能CALL概念
找第一个功能CALL
外挂框架的构建(通用)
进阶篇内容:分析游戏内部数据,分析常用功能CALL
游戏数据实践找各种功能CALL(如打怪,选怪,物品使用,技能栏之类)及相应的代码编写
高级篇内容:编写完整外挂
完成一个相对完整的外挂,实现 自动挂机,打怪,存放物品之类的功能
1 入门篇.以《QQ连连看为例》
1.1、一个最简单的外挂
1.1.1、游戏数据分析(SPY++)
1.1.1、游戏窗口数据分析(SPY++)
a、取得窗口相对坐标
b、读出游戏窗口信息GetWindowRect
c、移动鼠标指针SetCursorPos
1.1.2 用VC++写个最简单的外挂(实现游戏开局)
a、鼠拟鼠标单击mouse_event
b、鼠标指针移动还原
c、集成到startgame函数里
1.2、用CE查找棋盘数据
1.2.1、数据类型:Bit,Byte,Word,Dword
、用CE查找坐位号;
1.2.2、用CE查出4个棋盘基址;
1.3、用模拟技术编制外挂
1.3.1 模拟鼠标点击实现 交换棋子
1.3.2 把所有功能集成封装到 函数里
1.3.3 利用棋盘数据 ,模拟实现下棋功能
1.3.4 编写完整外挂,界面美化
1.4、游戏加速.去掉对动画效果.非HOOK
1.4.1:用OD找出 动画延时代码
1.4.2:写代码去掉延时,实现游戏加速
2 中级篇 以热血江湖为例
2.1、分析前的准备..CALL简介:
2.1.1、CALL调用示例分析.远程代码注入器
2.1.2、调试工具OD简介,血值,魔力值,坐标偏移;
2.1.3、游戏基址概念;
2.1.4、常用汇编指令详解
2.1.5、内联汇编编程实例
2.2、游戏分析利器OD(OllyDbg)
2.2.1、分析角色基址
2.2.2、找打坐CALL
2.2.3、读出角色当前血值
2.2.4、远程注入代码,调用打坐CALL;
2.2.5、实例分析:找技能栏对象数组基址+偏移:
2.2.6: 拦截F1-F8功能CALL
2.3、外挂框架构建
2.3.1、DLL动态链接库构建,与调用
2.3.2、API与回调函数
2.3.3、DLL中构建窗口
2.4、用OD分析游戏功能CALL.《热血江湖》为例:主要是找CALL
2.4.1、选怪CALL
2.4.2、找游戏物品背包的基址+偏移
2.4.3、 吃红药(补血)CALL
2.4.4、 吃蓝(补魔)CALL
2.4.5、 技能CALL1
2.4.6、技能CALL2
2.4.7、所有技能CALL
2.4.8、捡物CALL
2.4.9、所有动作CALL
3、进阶篇
主要讲功能CALL的参数分析
汇编浮点指令/浮点运行/浮点数整数转换/汇编里的指针
3.1、喊话功能
3.2、走路
3.3、 怪物过滤
3.3.1、怪物属性分析
3.3.2、怪物列表关键代码分析
3.3.3、怪物列表基址+大小
3.3.4、怪物列表编写代码
3.3.5、怪物过滤
3.4、 物品过滤
3.4.1、物品属性分析
3.4.2、物品列表关键代码分析
3.4.3、找出物品列表基址+偏移
3.4.4、物品过滤(编程读出物品列表数据)
3.5、 组队相关
3.5.1、 玩家列表
3.5.2、 组队功能
3.5.3、 离队功能
3.6、购物/售物
3.6.1、与NPC对话框
3.6.2、打开购物/售物对话框
3.6.3、购物功能
3.6.4、售物功能
3.7、 摆摊.开店
a、开店CALL参数分析
b、写代码测试
4、高级篇
4.1、编写完整的外挂
4.2、游戏更新后的外挂更新
4.3、脚本功能
4.4、游戏多开实现
4.5、盗号的实现
1