- UID
- 117262
- 阅读权限
- 100
- 注册时间
- 2012-1-11
- 最后登录
- 2021-8-5
- 在线时间
- 262 小时
征服者
- 耕战
- 4218
- 鹰币
- 10575
- 天龙币
- 0
- 回帖
- 501
|
本帖最后由 bluetoxic 于 2016-7-31 11:52 编辑
其他兵种或者村民甚至建筑单位 依次例 举一反三
以波斯的投石车举例 即Persian Palintonon 在DATA文件夹找到文件:protoAge4.xml 使用记事本或者写字板打开,利用菜单里的查找,找到波斯的投石车
在相关字段里找到对应的动画文件:CivPersian\Units\Siege\Palintonon\Palintonon.xml
Palintonon.xml这个文件的作用就是描述波斯投石车需要调用到的外观显示文件和相应的动画文件
按照路径找到这个文件先 art\CivPersian\Units\Siege\Palintonon\Palintonon.xml 依然使用记事本或者写字板打开 找到主字头animfile (所有单位的动画文件主字头都是它)
再往下可以找到若干子字头,诸如attachment, submodel和component(主字头和子字头之间是包含与被包含的关系)
我们来看字头component,位于这个字头的字段包含具体的单位外观显示
第一个通常都是默认装备(初始装备),对波斯投石车来说是PalintononL0
PalintononL0位于子字头submodel下 我们还能找到其他几个submodel 它们是PalintononL1 PalintononL3 PalintononL4
我现在想把投石车车体改成PalintononL3 可以这样(注意:此处的component字头位于文件下方,不是submodel的子字头component)
方法一:
- <component>
- Model
- <logic type="TraitLevel">
- <l60 visualtype="Body">
- <submodelref ref="PalintononL3"/>
- </l60>
- </logic>
- </component>
复制代码
方法二:当然,你也可以使用HTML的注释语句 将不启用的装备注释掉(代码里只有l60未被注释 所以将会被启用)
- <component>
- Model
- <logic type="TraitLevel">
- <!-- <l0 visualtype="Body">
- <submodelref ref="PalintononL0"/>
- </l0>
- <l10 visualtype="Body">
- <submodelref ref="PalintononL1"/>
- </l10>
- <l30 visualtype="Body">
- <submodelref ref="PalintononL2"/>
- </l30> -->
- <l60 visualtype="Body">
- <submodelref ref="PalintononL3"/>
- </l60>
- <!-- <l90 visualtype="Body">
- <submodelref ref="PalintononL4"/>
- </l90>
- --> </logic>
- </component>
复制代码
好了,我们出了投石车车体 还想改石头怎么办
现在我们看看子字头attachment,这个字头一般会包含兵种模型里的独立模型(比如武器啦 盾牌啦 头盔啦 马啦)
对波斯投石车来说,是ROCK 对,是石头 就是投石车扔出去的石块,说明投石车车体和石头是独立的两个模型
用来描述石头模型的字段是
- <attachment>
- Rock
- <include>Equipment\Generic\Projectile_Boulders.xml</include>
- </attachment>
复制代码 好 我们按照调用到的路径:Equipment\Generic\Projectile_Boulders.xml
打开文件Projectile_Boulders.xml
有没有发现这个文件的结构和投石车模型的文件结构很相似呢
第一个出现的l0就是初始的石头模型 我们还可以找到l10 l11 l30 l31 l60 l61 l90这些还未被启用的石头模型
那么我现在想改成l90的石头模型,就得这么做
找到并复制 <l90 visualtype="Shield">...(省略)...</l90> 之间的字段
然后我们回到Palintonon.xml,用字段
- <component>
- Model
- <logic type="TraitLevel">
- <l90 visualtype="Shield">...</l90>
- </logic>
- </component>
复制代码 替换掉
- <include>Equipment\Generic\Projectile_Boulders.xml</include>
复制代码
然后再把Projectile_Boulders.xml里最下面的动画描述字段(单位长时间不操作的空闲动画)
复制到Palintonon.xml里
现在attachment字头下的字段应该是这样
- <attachment>
- Rock
- <component>
- Model
- <logic type="TraitLevel">
- <l90 visualtype="Shield">
- <logic type="Variation">
- <v1>
- <assetreference type="GrannyModel">
- <file>Equipment\Generic\Projectiles\Rocks\Rock_L90_V1</file>
- </assetreference>
- </v1>
- <v2>
- <assetreference type="GrannyModel">
- <file>Equipment\Generic\Projectiles\Rocks\Rock_L90_V2</file>
- </assetreference>
- </v2>
- <v3>
- <assetreference type="GrannyModel">
- <file>Equipment\Generic\Projectiles\Rocks\Rock_L90_V3</file>
- </assetreference>
- </v3>
- </logic>
- <attach type="ParticleSystem" a="Effects\Projectiles\SlingRockPebbles.particle" frombone="" tobone="" syncanims="0"/>
- <attach type="ParticleSystem" a="Effects\Projectiles\SlingRockStreakL1.particle" frombone="" tobone="" syncanims="0"/>
- </l90>
- </logic>
- </component>
- <anim>
- Idle
- <assetreference type="GrannyAnim">
- <file>CivGreek\Units\Equipment\Projectiles\CatRocks\Idle</file>
- </assetreference>
- <component>Model</component>
- </anim>
- <anim>
- Bored
- <assetreference type="GrannyAnim">
- <file>CivGreek\Units\Equipment\Projectiles\CatRocks\Bored</file>
- </assetreference>
- <component>Model</component>
- </anim>
- </attachment>
复制代码 好 至此 波斯投石车的装备模型已经改变
P.S
- 有些玩家还想改飞行中的石块模型 可以参照修改<ProjectileProtoUnit>Proj_CatRock</ProjectileProtoUnit>
Proj_CatRock 是石块的飞行动画文件 如果你改动的是通用的石块模型文件 将会对其他文明(不仅是波斯)的投石车模型同样生效,如果你只想针对波斯的投石车生效,你可以自己创建.XML文件 自定义Projectile的UnitType,然后让Palintonon.xml的相关描述按照路径调用你的自定义XML文件
- l0 l10 l30 l60 l90 分别对应装备级别 普通 精良 稀有 史诗 传说
- 不同精锐程度的兵种怎么显示不同的装备 举例:埃及的斧兵,在文件夹ART—CivEgyptian—Units里找到Axeman.xml 打开后你会在文件下方看到Champion开头的字段 把本教程套用进去 你的Champion级精锐斧兵将会获得相应装备外观
|
评分
-
查看全部评分
|