能力值:
( LV2,RANK:10 )
|
-
-
2 楼
图片怎么动态跟踪?求教
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
跟踪处理这个图片数据的程序,以发现处理方法...不是跟踪图片
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
截屏,取一段屏幕数据存为bin(根据经验尝试..2位,4位,8位,24位,32位等等),截取一段像素值内存搜索,下断点。。定位代码位置。。。后面还有很多事情
xx photoshop、 去水印时用过找个方法。。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
不错的方法...
不过我的显卡已经调不到8位色了,用32位色截出的,通过软件转为8位色的,图片数据肯定和原始数据生成的有差别,所以....
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
宽 高 ^ ^
1B 00 00 00 17 00 00 00 06 0A 81 60 04 81 80 8E 00 00 00 00 08 60 80 95 07 00 90 00 00 00
^为每行长度,06,8e-80,0d,0c,8e-80
这样数下来正好等于17,和图片格式一类似,如果长度<7F,表示后面里有压缩数据...如果>7F,长度等于原BYTE-80,后面为原数...
数据中的规律仍在查找中...
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
又成功解析出该格式的图片.
附一张解析出来的图片(本来为BMP格式,上传时不允许,才转成GIF格式的:
这种图片看起来很不错,但有没有想到其中只用了16种颜色...我真佩服作者,用16种颜色就能把图片做得这么逼真...
由于只用了16种颜色,所以一个字节可以表示源码的两个字节,所以解析后图片流中不可能出现大于0x10的数据...
每行的第一个BYTE确实为本行的长度nSizeLine,不过有些说法...
(1) 如果nSizeLine>0x7f,则表示本行为源码,行长度为nSizeLine&0x7F,其后的每个BYTE中的4位为源码...
(2) 如果nSizeLine<=0x7f,则表示本行内0多,其后的数据中有标志位的...如果标志位nflags > 0x7f,表示其后为源码,解析方法同(1),如果nflags<0x7f,表示有nflags个0...
例子,图片宽1B:(数据均为16进制表示法):
06 0A 81 60 04 81 80//06为本行的长度
00 00 00 00 00 00 00 00 00 00 06 00 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00
//0A个00, 81 60为什么为变成06,81表示其后有一个源码,60解析成两位06 00由于只有一个有效的源码,所以00舍掉,04个00, 81 80,同理,解析为1个08
0C 05 81 60 01 8E 85 55 84 82 85 58 55//0C为本行的长度
00 00 00 00 00 06 00 08 05 05 05 08 04 08 02 08 05 05 08 05 05 00 00 00 00 00 00
//5个00,1个06,1个0,0E个源码...
8E 00 00 00 00 08 60 80 95 07 00 90 00 00 00//本行的长度为8e & 0x7f = 0E
00 00 00 00 00 00 00 00 00 08 06 00 08 00 09 05 00 07 00 00 09 00 00 00 00 00 00
//全是源码,均是一变二
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
学习.....
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
这么复杂的规律lz都找得到,强啊。
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
我现在只找到每个精灵动作的分解图片,图片前还有一大段的数据,估计是定义这个精灵结构的,如向左走,由哪几个图片构成...向右...发弹...静态连续动作等等.这些规律才不好找呢...
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
图片虽然只用了0x10种颜色,但调色板长度是0x80.为什么呢?因为这个游戏是用颜色来区分玩家的.根据玩家选择的颜色来定位调色板的初始索引值.如:
color n
兰 0
红 1
黄 2
...
青 7
pPal += n * 0x10;
这样就用一个调色板实现了8种部队色的变化...作者很强...
|
|
|