打开客户端下的INI文件夹,我们可以看到一些INI文件,如:3DEffect.ini、3DEffectInfo.ini、3dtexture.ini、Mantle.ini、MountMotion.ini,现在我们一起来学习这些文件的配置。
1、3dmotion.ini 是用来调用客户端的动作资源
内容:
0001000100=c3/0001/000/100.c3 坐标表示动作编号,右边表示该动作的存储路径
0001000101=c3/0001/000/101.c3
0001000110=c3/0001/000/110.c3
0001000111=c3/0001/000/111.c3
说明:
其中前四位代表的是角色的编号;
中间三位代表的是角色所拿的武器编号;
后三位代表的是角色的动作编号;
这部分的编号规则全部是由策划在初期的时候制定下来的。
2、与模型和贴图有关系的INI说明
在《魔域》中有许多INI是与3dobj.ini以及3dtexture.ini相关的,它们之间的关系如下:
3dobj.ini 表示各模型的编号,以及这个编号所对应的模型的存储路径;
3dtexture.ini 表示各模型的贴图的编号,以及这个编号所对应的具体贴图的存储路径;
armor.ini 具体说明人物以及怪物调用模型和贴图的ini,分别指向3dobj.ini和3dtexture.ini;
3dobj.ini
001000000=c3/mesh/001000000.c3 动作编号以及该动作的存储路径
001000001=c3/mesh/001000001.c3
001000002=c3/mesh/001000002.c3
001000003=c3/mesh/001000003.c3
3dtexture.ini
001000000=c3/texture/001000000.dds 贴图的编号以及该贴图的存储路径
001000001=c3/texture/001000001.dds
001000002=c3/texture/001000002.dds
001000003=c3/texture/001000003.dds
armor.ini
[Armor001130000] 表示的是角色和这个角色所穿的衣服,其中001是角色的编号(对应于数据库中lookface的前三位),130000表示的衣服的编号。
Mesh=001000001 模型 指向3dobj.ini中的模型编号
Texture=001000001 贴图 指向3dtexture.ini中的贴图编号
这样就可以完成一个角色模型和贴图的调用,其他的譬如武器、头盔都是类似如此。
3、和怪物有关的INI说明
怪物的动作、模型和贴图与人物一样都是在3dmotion.ini和armor.ini中记录,使用方法也完全一样,只是文件的存放路径不一样而已,这里主要介绍Monster.ini ,Monster.ini是用来记录怪物其他数据的。
Monster.ini
[食尸兽] 怪物的名字
SizeAdd=1 怪物所占的位置大小,影响到玩家攻击怪物的时候,玩家与怪物之间的距离
ZoomPercent=100 怪物与模型的比例,100为100%大小
MaxLife=100 怪物的最大生命值
Level=1 怪物的等级
Defy=1 是否使用等级藐视
Defence=1 该怪物的物理防御
MDefence=1 该怪物的魔法防御
由以上可以看出,这些是怪物在客户端所需要记录的一些数据,影响客户端的表现,但是必须和服务端数据库cq_monstertype里的数据保持同步。
4、与NPC相关的INI说明
在游戏中,我们可以看到我们的NPC是带有动作的,这部分的动作调用都需要由npc.ini这个文件来配置。NPC的动作配置方法和人物、怪物一样都是在3dmotion.ini中记录,NPC的模型和贴图是通过3DSimpleObj.ini来配置的,配置方法和人物怪物模型的贴图的armor.ini方法基本上一样。
3DSimpleObj.ini
[ObjIDType1] 编号
PartAmount=1 由一个模型组成
Part0=900000000 模型 指向3Dobj.ini
Texture0=900000000 帖图 指向3dtexture.ini
npc.ini
[NpcType1] NPC的编号
Name=托特斯 NPC的名称
SimpleObjID=1 指向3dsimpleObj.ini
StandByMotion=0900000100 站立动作,指向3dmotion.ini
BlazeMotion=0900000101 鼠标激发动作1,指向3dmotion.ini
BlazeMotion1=0900000320 鼠标激发动作2,指向3dmotion.ini
BlazeMotion2=0900000330 鼠标激发动作3,指向3dmotion.ini
RestMotion=0900000101 休闲小动作,指向3dmotion.ini
Effect=none NPC所带的特效(支持none为无特效)
其中需要说明的是鼠标激发动作,就是鼠标点击该NPC的时候,NPC发生的动作,这个具体可以根据策划的要求来增加,需要几个就可以做几个。
5、与地图配置相关INI说明
学习过地图的朋友在进入游戏以后一定考虑如何在地图上做一些飘动雪花、蒲公英等等之类的特殊效果,《魔域》中也有这样的效果,来看看地图配置的ini文件。
Gamemap.ini
[Map1000] 地图编号
File=map/map/grassland.DMap 地图Dmap文件的存储路径
Alpha=255 Alpha通道设置(改变地图透明度)
Red=255 红色量(调整可以改变地图的整体颜色)
Green=255 绿色量(调整可以改变地图的整体颜色)
Blue=255 蓝色量(调整可以改变地图的整体颜色)
Name=亚伯拉草原 地图名称
Snow=0 是否下雪
Firebug=0 是否有荧火虫
Dragon=0 是否有龙
Dandelion=1 是否有蒲公英
Music=music/1000.mp3 背景音乐的存储路径
其中的alpha,red,green,blue整体为调整地图的光暗、对比、色调等等,当alpha=0时地图为全透明,red=0的时候,地区缺乏红色素,三色量全为0的时候为黑色。
6、 光效相关INI简单介绍
3DEffectObj.ini 3D特效模型,指定了3D效果编号所代表的模型路径。
3DEffect.ini配置3D效果,指定动画效果
[FootPrint-L] 动画效果名
Amount=1 帧数为1(在模型中已经有多帧贴图,这里是程序帧)
EffectId0=403 c3模型在3DEffectObj.ini中的编号
TextureId0=471 对应的贴图在3DTexture.ini中编号
Delay=0 播放延迟时间(单位毫秒)
LoopTime=1 动画循环次数
FrameInterval=66 动画播放每帧之间的时间间隔(单位毫秒) (比3D帧播放完毕多一点点)
LoopInterval=0 动画循环之间的时间间隔(毫秒)
OffsetX=0 动画播放时相对dingwei点的x偏移象素(正右为正)
OffsetY=0 动画播放时相对dingwei点的y偏移象素(正下为正)
[blister02] 动画效果名
Amount=2 帧数为2
EffectId0=114 c3模型在3DEffectObj.ini中的编号
TextureId0=114 对应的贴图在3DTexture.ini中编号
EffectId1=115 c3模型在3DEffectObj.ini中的编号
TextureId1=115 对应的贴图在3DTexture.ini中编号
Delay=750 播放延迟时间(单位毫秒)
LoopTime=999999 动画循环次数
FrameInterval=33 动画播放每帧之间的时间间隔(单位毫秒)
LoopInterval=0 动画循环次数之间的时间间隔(毫秒)
OffsetX=0 动画播放时相对dingwei点的x偏移象素
OffsetY=0 动画播放时相对dingwei点的y偏移象素
Action3Deffect.ini 动作3D动画特效
401.410.006=Flash4101 左边编号为(人物武器动作)右边是对应的特效名