诛仙明文封包(2007年10月27日)

2007年10月27日


1、解除状态,如,取消回城,取消打坐等
内容:2a
包长:2

2、打坐

内容:2e
包长:2

3、选怪

内容:20ffffffd070ffffff8         //d070应该是怪的ID
包长:6

4、走路

-------------------------------------------------------------------------------------------------------------------------------------------
28 80 -》 21 85

内容:70                  //这里应该是开始走路
包长:2

内容:00ffffff9b2ffffffd9413e5d2243ffffffe13fffffffa342ffffff9b2ffffffd9413e5d2243ffffffe13fffffffa342222832132
包长:33

内容:00fffffff8ffffffbaffffffc9417f5d2243ffffffb8ffffffdaffffffa542fffffff8ffffffbaffffffc9417f5d2243ffffffb8ffffffdaffffffa542427b42133
包长:33

内容:00115ffffffba416effffff992243fffffffe7dffffffa842115ffffffba416effffff992243fffffffe7dffffffa8421327a42134
包长:33

内容:70ffffffb966ffffffac41ffffffc3ffffffd12243ffffffe1ffffffd4ffffffaa427546621350ffffffd11
包长:22
------------------------------------------------------------------------------------------------------------------------------------------------
21 85本地小动下,坐标没变
内容:70
包长:2

内容:70e1dffffffa9412cffffffcf2243ffffffa42effffffab425c36f21360ffffff85
包长:22

5、攻击

内容:30
包长:3

6、拣物

一个粗皮
内容:60ffffffe5711ffffffc0ffffffb920
包长:10

内容:603fffffff801ffffffc0ffffffb920
包长:10

看出b920是物品ID   c0可能是物品系统ID    其它那个可能是坐标

7、打开背包
15
2

8、扔粗皮
e021
5

posted on 2007-10-27 18:03 Birdshover 阅读(783) 评论(5)  编辑 收藏 所属分类: 数据WinForm

评论

#1楼 [楼主] 2007-10-31 23:41 BirdsHover      

例如打坐:
DWORD pack = 0x2E;
int packlen = 2;
MyCall(pack ,packlen );

取消打坐
DWORD pack = 0x2A;
int packlen = 2;
MyCall(pack ,packlen );

普通攻击
DWORD pack = 0x030000;
int packlen = 3;
MyCall(pack ,packlen );

捡取物品

得到物品ID,物品系统ID

2b9 c0021c5c
2b9 c002216d

这个时候需要反写。
ID分别反写为
b9 02
5c 1c 02 c0

然后定义个byte数组
byte b[10];
b[0] = 0x06;
b[1] = 0x00;
b[2] = 0x5c; // b[2] - b[5] 是系统ID的反写
b[3] = 0x1c;
b[4] = 0x02
b[5] = 0xc0;
b[6] = 0xb9; // b[6] - b[7] 是ID的反写
b[7] = 0x02;
b[8] = 0x00; //这个时候,没有填写的了,所以填写0
b[9] = 0x00;

然后发这个包就可以了

可以看出,关键是构造这个包。和普通发包一样,指针换成 (DWORD*)b
拣物包长度是10

这样就OK了

当然,真正拣物的时候还是要遍历地面物品的ID和系统ID,然后构造包,然后发包就可以了。不能象上面那样指定,肯定要定义两个函数,一个是反写ID的函数,一个是把字符串分解为byte数组的函数。

使用物品包

byte b[10];
b[0] = 0x28;
b[1] = 0x00;
b[2] = 0x00;
b[3] = 0x01;
b[4] = 反写背包,比如第一格子为00,第二为01,第22格为0x15
b[5] = 0x00;
b[6] = 反写物品ID,比如狗皮膏药ID是 0x745,这里为45
b[7] = 狗皮膏药反写为 0x07;
b[8] = 0x00;
b[9] = 0x00;   回复  引用  查看    

#2楼  2007-11-28 16:17 leehow [未注册用户]

我想问一下 比如我要选则ID为0796的怪 然后 push edi 的内容是 02 0796 8000
我的包是这样的
byte b[6];
b[0] = 0x02;
b[1] = 0x00;
b[2] = 0x86; // b[2] - b[5] 是怪物ID的反写
b[3] = 0x07;
b[4] = 0x00;
b[5] = 0x80;

DWORD pack= (DWORD)b;
int packlen = 6;
MyCall(pack ,packlen );
但是没有反应 请教一下   回复  引用    

#3楼  2007-11-29 20:36 其味无穷 [未注册用户]

@leehow

byte b[6];
b[0] = 0x02;
b[1] = 0x00;
b[2] = 0x86; // b[2] - b[5] 是怪物ID的反写
b[3] = 0x07;
b[4] = 0x00;
b[5] = 0x80;

不是0x96么?怎么写成86了   回复  引用    

#4楼  2007-12-09 18:31 LeeHow [未注册用户]

上次那个问题小失误一下。。。
但是捡东西这个
0006 (1661) C002 02B4 0000

其他的我都知道了 就是1661 这个东西 每一次都会改变 我试过是不是物品的数量 发现不是的 然后看了和坐标的关系 也看不出有什么关系 ...我再去看看

  回复  引用    

#5楼  2007-12-09 19:50 LeeHow [未注册用户]

哦 找到是什么了 遍历的时候偏移为10C得那个东西。。。。   回复  引用    

导航

公告

网名: yurow birdshover
       无术 夕阳轨迹 等
本名: 谢平
籍贯: 江苏溧阳
位置: 上海
职业: C# & 打字
联系方式: 19999351(QQ)
 MSN.gif
有一天,我对你说你是猪,你说:我是猪才怪。于是我便开始叫你猪才怪。终于有一天你忍不住在众人面前大声宣布:我不是猪才怪! 7-25 15:25
<2007年10月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

统计

与我联系

常用链接

留言簿

我管理的小组

我参与的团队

我的标签

随笔分类(79)

文章分类(19)

收藏夹(1)

关注的博客

搜索

积分与排名

最新评论