查看: 14862|回复: 19

【原创】GM的自我修养----地图编辑(一)理论篇

[复制链接]

签到天数: 66 天

[LV.6]☆裁决☆

发表于 2013-4-3 01:03:29 | 显示全部楼层 |阅读模式
此系列文章分为3篇:理论篇,实战篇,转换篇。献给愿意花时间,动脑子去做服的GM

此系列文章讨论的地图范围仅限于热血传奇(以下简称传奇2)的地图,本人能力有限,其他传奇的新格式不在讨论范围内。在观看本文之前,需要理解16进制的计算,以及明白数据存放是高位在后,低位在前的原理。

----------------------------------------分割线------------------------------------------

传奇2的地图文件是一个索引文件,并不包含有图像信息。登录器通过这个map文件,找到指向的wil文件中的图像,并在屏幕中显示出来。

这些map文件的格式大体上有两种:12字节地图和14字节地图。
怎么区分呢?一个简单但不绝对准确的区分方法,用乐都地图编辑器打开后不报错的是12字节地图,要报错的是14字节地图。待会再讨论正确的方法。

下载一个绿色版UltraEdit工具,以下简称UE
UE打开一张地图,以比奇省0.map为例子:
1111.jpg

我用蓝底选中的52个字节部分,习惯上称为“文件头”,包含了地图大小及地图描述,后面的是数据,传奇2的地图数据记录的是每个坐标点的具体信息。文件头开头的4个字节:BC 02 BC 02,这是地图的大小,第一组BC 02是横向大小,第二组是纵向大小。
怎么计算呢?前面我说过,数据存储是按照高位在后,低位在前,所以第一组应该是02BC,用Windows自带的计算器,可以算出16进制的2BC=10进制的700,所以比奇省地图就是一张700*700的地图,拥有49000个坐标点。在UE的右下角可以看到这张地图大小为5880052字节,那么(5880052-52)÷490000=12,所以0.map12字节地图。
至于文件头的后面48个字节嘛,是一些描述性信息,没什么用,我们直接无视了。

和地图相关的素材,相信大家都有所了解,这里还是提一下:
Tiles 大地砖,最底层
SmTiles 小地砖,中间层
Objects 地面物体,表层

Map文件里面其实就是对上面的文件的索引,从里面得到地图的图像数据。12字节地图占了所有地图的90%以上,那么它的每个字节有什么作用呢?网上查得资料:

1字节:Tiles里图片的序号,Tiles里第一张图序号是0,那么代码为0+1=1。低位代码。
2字节:Tiles里图片的序号,Tiles里第一张图序号是5,那么代码为5+1=1。高位代码。最高位+8表示为不可移动的标记。
3字节:smTiles里图片的序号,smTiles里第一张图序号是0,那么代码为0+1=1。低位代码。
4字节:smTiles里图片的序号,smTiles里第一张图序号是5,那么代码为5+1=1。高位代码。最高位+8表示为不可移动的标记。
5字节:obj里图片的序号,obj里第一张图序号是0,那么代码为0+1=1。低位代码。
6字节:obj里图片的序号,obj里第一张图序号是5,那么代码为5+1=1。高位代码。最高位+8表示为不可移动的标记。
7字节:门动画
8字节:门开关标识
9字节:动画效果
10字节:动画速度
11字节:obj的序号,实际计算是,比如obj11,那么代码就为11-1=10
12字节:常亮点光源亮度值

对于14字节地图,只是在12字节地图的基础上添加了对tiles,smtiles的编号:
13字节:tiles的序号,实际计算是,比如tiles5,那么代码就为5-1=4
14字节:smtiles的序号,实际计算是,比如smtiles5,那么代码就为5-1=4

对于以上说明现在不需要去深究,知道个大概即可,如果有误的话,实战篇会更正并对其他字节作用做详细说明。
可以看出,tilessmtiles含有移动标记,那么高位最多为8F,所以最多支持,“(8FFF16=3686310张图片,即Tiles.wilsmTiles.wil,Objects.wil里最多存放36863张有效图片。


注意:
1.    新版WZL客户端所用的地图和老版WIL客户端是一致的,无任何区别。
2.    map文件的存储方式是按列存储的。

看到这有没有学会地图的计算呢?那么我出个题,一张500*50014字节地图共有多少字节呢,文件头开始4位应该怎么写?

该用户从未签到

发表于 2013-4-3 09:01:17 | 显示全部楼层
新人看不懂,正在学习中

该用户从未签到

发表于 2013-4-3 19:24:28 | 显示全部楼层
强人啊 呵呵

签到天数: 388 天

[LV.9]㊣黄金裁决㊣

发表于 2013-4-3 20:27:38 | 显示全部楼层
研究的很深入很细致 肯耐下心来去研究的不多了 支持一下

该用户从未签到

发表于 2013-4-9 19:39:11 | 显示全部楼层
完全看不懂!

签到天数: 125 天

[LV.7]★怒斩★

发表于 2013-4-10 16:05:03 | 显示全部楼层
发完了吗,有附件吗

该用户从未签到

发表于 2013-4-18 21:53:44 | 显示全部楼层
高手啊!敬礼!顶起!

签到天数: 577 天

[LV.9]㊣黄金裁决㊣

发表于 2013-4-24 17:38:05 | 显示全部楼层
有深度。。。。

签到天数: 32 天

[LV.5]☆炼狱☆

发表于 2014-1-14 18:24:38 | 显示全部楼层
可能这篇,只有我能懂,知己不多

该用户从未签到

发表于 2014-4-11 20:16:24 | 显示全部楼层
是不是看懂这篇文章就能自己修改tiles了?
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

关闭

站长推荐上一条 /1 下一条

光柱封号特效定制

联系QQ1985466803

地图等其它素材定制

联系QQ179331053

售后技术-下载失效

联系QQ2505099556

加入QQ新群

加入Q群230572444

补丁破解-补丁优化

联系QQ179331053
快速回复 返回顶部 返回列表