热点推荐

小喇叭+ 发布

01-16 02:17
01-16 02:04
01-13 17:30
查看: 861|回复: 0

[脚本示例] “传奇2”研究之三人物和地图显示篇

[复制链接]
avatar

签到天数: 350 天

[LV.8]以坛为家I

7651

主题

255

回帖

31万

积分

司徒主管

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

UID
1
司徒币
260203
传世币
3000
元宝
0
在线时间
266 小时

最佳新人灌水之王

QQ
online_admin 发表于 2021-12-9 18:24:00 | 显示全部楼层 |阅读模式
一、人物显示

里面,人物是个关键的东西。
我们看到,人物在里面可以穿不同的衣服,而且可以拿不同的武器。
如果每个武器和衣服都组合的话,恐怕要天文数字的衣服了。
不过传奇不是这样做的。我用程序解开了传奇的图片,根据图片得出的人物绘制的方法。
它的人物是用组合法绘制的。在不同的文件里面存放有不同的人物组件。每个组件都有各种动作时候的样子,里面主要有 站立,奔跑,行走,攻击,倒下,死亡等动作,他们每个动作都有相应的没有衣服,和各种衣服的模型图。
HUM.WIL里面是没有头发和武器的不同衣服的人的模型,看起来特别滑稽。
HAIR.WIL里面是头发,各个方向的,各种颜色的都有。
weapon.wil里面是武器攻击的时候的各个角度的图片。 内容来自dedecms

在显示的时候,把人物的身体,头发,武器组合在一起绘制。

二、地图显示
传奇地图是用一种90度的TILE来组合的。在TILES.WIL中,TILE全部是方形的。而且从地图数据以及坐标分布来看,传奇是用的90度的地图引擎。45度效果完全是用图片做出来的。的物件,比如房子等东西,存放在OBJECT*.wil里面,他们被分成一个一个的长条。好象是方便绘制的。
不过,有些图片上,物件并没有跟背景分开,也就是说物件图片是直接物件和地面画在一起的。也就是猜测吧,它可能是有一个专门记录是否物件是不能遮住人的数据层。如果在物件后面,那么就把人物用ALPHA方式绘制,这样看起来好象是遮挡效果就出来了。不过这种想法还是有破绽, 因为只有自己在房子后面才是ALPHA的,其他人就不是了。
不过可以肯定的是,的地图的绘制是用矩形长条绘制的。大家可以试一下,拿把比较长的武器到一个屋子里面靠左上的墙边面向左站着,就会发现,武器的一部分进了墙了。根据这个,不难看出地图绘制方发。 dedecms.com


附录:
下面是一张表,列出了DATA目录的图象文件的具体内容。

chrsel.wil 开始的人物选择图片。
dnitems.wil 怪物或者人挂了之后掉下的物品的图片。
effect.wil 挖矿,沙巴克大门等动画效果。
hair.wil 人物的头发。
hum.wil 人物的各种衣服的模型。
items.wil 物品的图标。
Magic?.wil 魔法效果图。
magicon.wil 在魔法选择窗里显示的魔法图标。
mmap.wil 在地下洞里显示的小地图。
Mon*.wil 各种怪兽的图片。
npc.wil NPC的图片
object*.wil 建筑,地面以上物体的图片
prguse*.wil 界面,按钮的图片。
SmTiles.wil 地图图片的小图块
tiles.wil 地图图片的大图块
weapon.wil 武器攻击的图片。
 
NPAL.IDX 这个我也没有搞清楚,大概是用来做索引方式的ALPHA效果的数据吧。
 
lig0?.dat 这些,看名字好象是灯的意思。大概是灯光ALPHA的索引数据吧。

帖子地址: 





上一篇:“传奇2”研究之二传奇地图格式
下一篇:如何删减地图和怪物
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【乱回复灌水将给予禁言处理】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则