- 博客(33)
- 收藏
- 关注

原创 外挂辅助技术研究教程
001-分析角色HP,MP值基址.txt002-分析角色金钱基址.txt003-分析角色气功加点基址.txt004-编写代码读取游戏数据-注入DLL.txt005-编写Win32控制台程序 注入带窗口的DLL,.txt006-完善注入DLL的代码+给项目瘦身.txt007-读取游戏中的人物信息+输出调试信息.txt008-人物信息数据的封装.基址与偏移管理单元库.txt
2015-02-03 13:23:18
4011
2
原创 分析出售物品封包结构
学习目标: 分析出售物品封包结构 作业: BOOL SellGoodsForName(char* szpGoodsName,DWORD ndNum);//购买物品发包缓冲区 偏移+2 //4字节 0x840094 仓库存取指令 0x00800092 商店买卖指令+06 //4字节 1表示购买 2表示出售+0A //26 0F 1B 2
2015-02-09 15:17:48
1088
原创 外挂技术移动物品到仓库代码编写
学习目标: 移动物品函数封装 作业: 提取仓库列表基址的特征码,添回仓库列表基址更新代码。 BOOL MoveGoodToDepot(char*szpGoodsName);//把背包里的指定物品 移动到仓库里边#define Base_DepotList 0x31C9A24 //仓库列表基址 dd [ [0x31C9A24
2015-02-05 16:02:41
1413
原创 传说中的外挂技术-CALL是什么?游戏外挂中的找CALL
CALL是什么?CALL是汇编中的一个指令,CPU执行这条指令会执行2个动作 一:压入EIP入栈 二:跳转到后面的地址. 跟RETN指令配合就实现了汇编中子程序的作用,通常我们常说的写CALL就是 调用游戏中已经存在的功能子程序.比如说viod myadd (int a, int b){int c=a+b;}这是一个简单的子程序,当我们用程序语言调用那
2015-02-05 15:56:43
7748
原创 外挂技术-回城补给设计与补给条件测试
学习目标 回城补给设计 相关数据准备 作业: 寻路到FindToWay(x,y); 相关数据准备 //检测是否需要补给 IsRequireSupply(); // //回城补给相关 BOOL IsRequireSupply(); //检测是否需要回城补给 BOOL IsLowHpSupply;//低于ndHp
2015-02-05 09:26:31
949
原创 外挂技术-编写代码判断背包是否已满
学习目标: 编写函数统计背包MP药品数量 DWORD GetAllMpGoodsNum(); 编写函数判断 背包是否装满 BOOL IsFullBackPack();//背包满 返回TRUE 未满返回FALSE 作业: 当金创药 总数<10 回城补给 100金创药(小);DWORD TBACKPACK_LIST::GetAllMpGoods
2015-02-05 09:23:08
1367
1
原创 外挂辅助技术-统计背包HP药品数量代码编写
郁金香老师这一课讲的是编写函数统计背包HP药品数量 DWORD GetAllHpGoodsNum(); 作业:DWORD GetAllMpGoodsNum(); 为自动补给 HP药品作准备 DWORD GetHpGoodsNum() 金创药(小) 金创药(中) 金创药(大) 金创药(特) 秘制金创药 药仙金创药 DWORD GetHpGoodsNumFor
2015-02-05 09:18:18
695
原创 外挂辅助编写-分析动作数组与攻击捡物功能
目标:1、分析动作数组2、分析攻击与打坐思路: 通过选中对象逆向回溯出动作数组 通过动作对象访问逆向回溯到攻击CALL附近 封包断点bp WSASend225F5050225F5298225F54E0//背包对象 怪物对象 动作对象 玩家对象0061BD29 |. BE 40E71C03 MOV ESI,Clie
2015-02-04 15:32:23
1132
原创 外挂技术-调试游戏久了为何异常的原因
外挂辅助研究中常遇到的问题1、游戏异常的原因2、用C++代码模拟游戏中异常冲突 为何游戏运行时间短不出问题 但一运行久了就出现未知异常错误! 很多时候这是由于多线程访问共享数据造成的。 // MultiThreadDlg.h : 头文件//#pragma once// CMultiThreadDlg 对话框class CM
2015-02-04 15:28:05
1634
原创 外挂辅助技术-计算怪物与玩家的距离
外挂辅助中自动打怪常用到的:1、计算怪物与玩家距离2、自动检测是否需要选怪3、优先选近怪dd [45E4A88+4*0]+008 //对象类型分类编号 0X2E 0x31是玩家 0x55 动作对象+314 //选中状态,是否显示了血条+320 //怪物名字+380 //死亡状态 死亡为1 未死亡为0+768 //+5b4 //怪物血量+5B8 //怪
2015-02-04 15:22:24
1729
1
原创 外挂辅助技术-更新任务列表分析
学习目标: 更新任务列表的相关数据 点击任务选项卡CALL ->初始化任务列表CALL->写入动作 FB 36//全部任务mov ecx,169E6508 MOV EDX,DWORD PTR DS:[ECX] MOV EDX,DWORD PTR DS:[EDX+0x4]PUSH 0x0PUSH
2015-02-04 10:38:13
855
原创 逆向分析打开NPC 对话菜单
学习目标: 分析NPC对话CALL 分析思路: 1、打开NPC对话时 一般会访问NPC对象数据,可以用CE尝试找出对NPC对象访问的代码,然后回溯。 2、打开NPC对话时 可能会与服务器通讯。那么可以尝试发包函数处下断点回溯。#define BaseAllObjList 0x31E6640//所有对象数组 dd [031C
2015-02-04 10:18:48
3604
原创 外挂辅助技术-寻路CALL测试
学习目标: 之分析寻路CALL 测试 1、通过目的地坐标回溯逆向分析> 2、通过发包函数回溯 FLDZFILD 地址 FSTP 地址 思路: FindWay(参数1,参数2,参数3,...)//里边肯定有一个是指向坐标//1006AEDFC 895D B4 MOV DWORD PT
2015-02-04 10:10:59
4560
原创 外挂辅助技术-分析游戏寻路相关数据准备
学习目标: 分析寻路CALL相关数据 分析寻路CALL思路 1、通过目的地坐标回溯逆向分析> 2、通过发包函数回溯 分析: 寻路一般是一个循环走路的过程,大致有如下架构 作业: 根据本课收集的数据尝试寻路分析//走路状态 0和1 //11,33//寻路状态dd
2015-02-04 10:09:23
2203
原创 D3D9黑屏优化大幅降低CPU占用率代码
#define BaseBlackScreenMainHook //BaseBlackScreenMainThreadHook #define BaseBlackScreenD3D9Hook //主线程HOOK 黑屏优化00528EDF 8BC0 MOV EAX,EAX00528EE1 90 NOP00528EC
2015-02-03 16:35:03
10800
原创 外挂辅助技术研究-逆向分析任务等级需求并测试
学习目标: 任务等级相关数据 作业: 分析更新任务相关CALL 或者是代码void printfMissionList() { DWORD ndStart; DWORD ndEnd; char *szpCurMissionName;//任务名 BYTE nbLevel;//
2015-02-03 16:18:30
1526
原创 外挂辅助技术-编写代码遍历任务列表
学习目标: 编写代码遍历任务列表//当前执行中的所有任务[[[0XF598C0]+2A4]+4C4]=edi[[[0XF598C0]+2A4]+4C8]//所有可执行任务 edi[[[0XF598C0]+2A4]+4D4]=edi[[[0XF598C0]+2A4]+4D8] [[[0XF598C0]+2A4]+4C4]+8dc [0x2F
2015-02-03 14:59:25
1369
原创 外挂技术-逆向解密存放物品CALL缓冲区结构
学习目标: 分析解密存放物品CALL缓冲区结构 一、分析物品存放功能:一次存放N个物品+12 //8byte 来源于 物品对象+4C +1A //存放的物品数量+2A //12字节 可能是物品ID+32 //8byte 来源于 物品对象+4C +3A //物品数量上限 2字节+43 //物品在背包里的下标//存放指令 //买出
2015-02-03 14:54:27
1231
原创 外挂辅助技术分析任务对象基址及封装任务更新函数
基础要求:1、会一点C语言 2、懂一点汇编 学习目标: 动态定位基址 编写相关函数 编写特征码定位函数ScanFeatureCode//1把特征码转换成全大写//2读取游戏字节数组数据//3转换成十六进制字串//4十六进制 字串比较 找到则返回地址 未找到返回0DWORD ScanFeatureCode(H
2015-02-03 13:48:39
1494
原创 外挂辅助技术-分析任务等级需求并测试
学习目标: 任务等级相关数据 作业: 分析更新任务相关CALL 或者是代码void printfMissionList() { DWORD ndStart; DWORD ndEnd; char *szpCurMissionName;//任务名 BYTE nbLevel;//
2015-02-03 13:37:09
1187
原创 外挂辅助技术研究-完善选怪功能
1、分析选中怪物,NPC,玩家功能1、取消之前选中对象[[31CE73C]+14b8]==ID2、选中当前对象dd [031CE740+4*0] //对象列表 玩家 背包 动作 人物对象[31CE73C] //玩家对象地址+0c //此数组的下标+0018 //玩家名字+14b8 0xFFFF //未选中怪物+2D0C //选中状态dd [
2015-02-03 09:01:01
735
原创 外挂辅助技术研究-打开指定NPC对话
1、打开指定NPC对话功能 DWORD GetNpcObjForName(char* szpNpcName);DWORD OpenNpcTalkForName(char* szpNpcName);//获取指定NPC对象push 0push 0push 0x401mov ecx,2DF25598 //NPC对象地址mov eax,[ecx]
2015-02-02 16:43:52
2925
原创 外挂辅助技术研究-分析选怪功能
目标:1、分析选怪功能选怪变量=数据 //怪物对象ID //怪物对象地址0049F902 - 89 45 F0 - mov [ebp-10],eax0049F905 - 53 - push ebx0049F906 - 56 - push esi 0049F907 - 57 - push edi0049F908 - 50 - push eax00
2015-02-02 16:42:26
742
原创 外挂技术研究-封装完善动作使用CALL-重复包含头文件
目标:1、封装UseAction(char* szpActionName)2、避免头文件重复包含3、#ifndef宏BOOL TActionList::UseAction(char* szpActionName)#include "StructGame.h"TBACKPACK_LIST tBackPackList;//背包数组TMonsterLi
2015-02-02 16:40:40
680
原创 外挂技术研究-封装动作数组功能
目标:1、封装动作对象2、封装动作对象列表3、封装使用对象功能函数作业:BOOL TActionList::UseAction(char* szpActionName)//背包对象 怪物对象 动作对象 玩家对象0061BD29 |. BE 40E71C03 MOV ESI,Client.031CE740dd [031CE740+0ee3
2015-02-02 16:39:27
737
原创 外挂辅助技术研究-分析动作数组与攻击捡物功能
目标:1、分析动作数组2、分析攻击与打坐思路: 通过选中对象逆向回溯出动作数组 通过动作对象访问逆向回溯到攻击CALL附近 封包断点bp WSASend225F5050225F5298225F54E0//背包对象 怪物对象 动作对象 玩家对象0061BD29 |. BE 40E71C03 MO
2015-02-02 16:37:59
872
原创 外挂辅助技术研究-分析怪物列表
目标:1、分析怪物列表2、分析怪物对象属性 分析思路: 从怪物明显的属性入手,名字,血量30235690+5BC //怪物EAX=3023569830235698+5B4 //怪物血量dd [45E4A88+4*0]+314 //是否活着 死亡为0+320 //怪物名字+5b4 //怪物血量+5B8 //怪物等级+1018 //X
2015-02-02 11:40:59
3136
原创 新手要正确看待外挂学习与数据分析
曾经有一个同学问:“数据分析难不难?”这个问题还真不好回答。不同的游戏,数据难度不同,不同的人找同一个数据的方法也不同。 那么如何正确的看待数据分析,如何快速的找到一个游戏数据,除了需要良好的反汇编基础,同时也需要有一定的发散思维。书本和教程中学到的都是基础,只是一种引导菜鸟入门的东西,并不是说我把一款或几款教程学会了就天下无敌了。在学习的过程中要寻找自己擅长的地方,实战要多从这些方面
2015-02-02 11:23:16
1474
1
原创 外挂辅助技术研究-封装背包对象列表+读物背包物品信息
目标:1、封装好背包列表数据2、读取背包物品信息dd [31A8B3C]+410+4*ecx //ecx表示背包列表 下标0..35+5C //物品名字+0F1 //物品功能描述+244 //物品数量#define Base_BackPackList 0x31A8B3C //背包列表基址dd [31A8B3C]+410+4*ecxtyped
2015-02-02 10:24:03
912
原创 人物信息数据的封装.基址与偏移管理单元库
目标:1、结构化人物属性数据2、静态链接库*.lib3、添加基址管理单元4、添加偏移管理单元5、本教程中变量命名约定//人物属性2F860F0 +00 //人物名字 地址+34 //1BYTE 空间 表示等级+35 //1BYTE 表示 几转+36 //char*人物名声:+80 //HP+84 //Mp+88 //愤怒值
2015-02-01 20:58:19
793
原创 外挂技术研究系列-分析人物属性数据和偏移
分析目标:1、分析人物角色 金钱基址; //-----人物属性结构----------typedef struct _ST_人物属性{ UNIT 当前HP值;// 4字节 +8 UINT 当前MP值;// UNIT HP值上限;// UINT MP值上限;// UINT 人物等级;// UINT 人物金钱;//
2015-02-01 20:37:57
1091
原创 外挂技术研究系列-分析人物的HPMP
分析目标:1、分析人物角色血值HP; 用CE工具直接 搜出基址//-----人物属性结构----------typedef struct _ST_人物属性{ UNIT 当前HP值;// 4字节 +8 UINT 当前MP值;// UNIT HP值上限;// UINT MP值上限;// UINT 人物等级;//
2015-02-01 20:33:57
841
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人