第一章:单位属性文件修改详解
第一节:坦克及装甲车属性文件修改详解
我们以虎式坦克为例,打开data.pak文件,将虎式坦克的属性文件解压出来,如图:
“1.xml”文件可以用浏览器打开,但是不能编辑。编辑需要用记事本打开。
9
我们先用浏览器打开“1.xml”文件,双击该文件即可(默认用浏览器打开)
我们看到很多代码,下面我就来一一解释这些代码的含义。
MaxHP=”200” ———— 耐久度200,即生命值,越高,单位就越耐打
RepairCost=”1” ———— 修复每点耐久度耗费的资源,数值越高,耗费的资源就越多 Sight=”35” ———— 视野35,数值越大,视野越大。原版数值一般为30-35
SightPower=”1” ———— 这个数值是侦查能力。1即为无法发现战壕的步兵。0则为可以发现战壕步兵。0.1-0.9则是在不同的视野范围内能发现战壕的步兵。 Speed=”13.87” —— 单位的移动动速度,越大越快
Passability=”0.49” —— 单位的越野能力,1为忽略地形影响。数值越小,受地形影响越大 Camouflage=”0” —— 单位的隐蔽能力,数值对应视野,0即为没有隐藏能力。在游戏里,如果单位隐藏时(不开火暴露的前提下),其被发现的距离=对付视野-隐蔽能力
Weight=”57000” —— 单位的重量,对坦克和车辆没有意义,对牵引火炮才有意义。
UninstallRotate=”0” —— 单位的重新部署时间,这个数值对于坦克和自行火炮来说,数值为0时,即没有重新部署时间,该单位从停止到移动或从移动到停止时,没有停顿,炮塔可以转动,副武器可以射击。
UninstallTransport=”0” —— 单位从卡车上卸载的时间,对坦克和车辆没有意义,建议保持0的数值。
(注意:如果是自行防空炮,建议UninstallRotate和UninstallTransport的数值在0.1到1之间,如果都是0的话,自行防空炮在发现飞机后会不受控制的乱跑) RotateSpeed=”40” —— 车体旋转速度,数值越大,旋转速度越快。 TurnRadius=”5” —— 盘旋半径,飞机才有用。
TowingForce=”0” —— 可以理解为拖拽能力,卡车才有用。数值对应单位的重量。 Crew=”5” —— 乘员数量5,这个貌似没有多大意义。
Passangers=”0” —— 部分坦克有搭载步兵的能力,这个数值就是搭载步兵的数量。 TowPoint=”-1” —— 卡车的拖拽点代码,-1即没有。这个对坦克没有意义。
10
EntrancePonit=”-1” —— 步兵上下车点代码,有搭载步兵能力的单位才有意义。
TrackLifetime=”10000” —— 履带轨迹的时间,数值越大,履带痕迹保留的时间越长。
这段对单位没有意义,对建筑才有意义,后面介绍建筑代码才会说到。
这个是单位的指令代码,会在后面专题讲解。
这是单位的声音文件类型。
重头戏来了,这段代码非常关键。这是单位的车体及炮塔设置代码。 第一段是车体代码,第二段是炮塔代码。(如果有几个炮塔,会还多几段)
VerticalRotateSpeed= 这个是垂直选择速度,数值越大速度越慢。一般车体为0。炮塔上的数值其实是炮架的垂直运动速度。因为虎式坦克的炮架没有俯仰运动,所以其值也是0。
11
HorizontalRotateSpeed= 这个是水平旋转速度,一般车体默认为10或60,没有意义。对第二段的炮塔才有意义,同理数值越大,旋转速度越慢。
ModelPart= 这个是车体或炮塔模型代码,不同的单位不同,不需要修改。
GunCarriageParts= 这个是炮架代码,一般为 -249 到 -253 如果没有运动炮架,其值就为-1,也不需要改动。
FirstGun= 这个数值很关键,其含义是之前部件的武器数量。以老虎为例,其车体为第一段,之前没有部件和武器,其值就为0;第二段炮塔,因为前面有一挺车体机枪,所以其值为1.
NumGuns= 这个数值也很关键,其含义是该部件的武器数量。同样以老虎为例,其车体有一挺机枪,所以数值为1,炮塔有主炮及并列机枪,所以该数值为2.
FirstGun和NumGuns的关系其实很明确。FirstGun的数值就是前面部件的NumGuns的总和。
Constraint Min= Max= 该部件水平旋转的范围,单位是弧度,正负值是左右旋转
ConstraintVertical Min= Max= 该部件垂直旋转的范围,单位也是弧度(对于炮塔来说,这其实是炮架的垂直旋转范围),正值是向上偏转。
这段就是武器列表。对应前面的车体及炮塔设置代码里的FirstGun和NumGuns,我们可以看到一共有3段,分别代表三个武器,按顺序对应的是:车体机枪、主炮、并列机枪。 因为第一个部件:车体的NumGuns=”1” 所以,第一个武器为车体机枪。
同理第二个部件:炮塔的FirstGun=”1”所以忽略第一个武器代码,直接到第二个武器代码。
现在解析这段代码:
Priority= 主副武器代码,0为主武器,1为副武器。注意:只有副武器可以在移动时开火。 Ammo= 弹药数量
Direction= 武器初始位置射击朝向,65535为正前方。32767为正后方,其他数值就是侧面不同角度。
ReloadCost= 武器的弹药补给消耗量,数值越大,每发弹药消耗的补给就越多,数值超过补给上限,该武器就无法再补给弹药,一般原版单位改数值都不会超出,某些Mod的特殊武器为了不让玩家再补充弹药会设置得很大。
ShootPoint= 射击点代码,没有必要改,这个和拖拽点,上下车点一样,是在建模时设置好,导出1.xml属性文件时自动生成的。
Recoil= 射击时,炮管是否后座移动代码,0为不移动,1为后座移动。(前提是建模时有设置炮管后座)
RecoilLength= 炮管后座距离,数值越大,后座移动越多。其值也是建模时设置好的,一般不用改。
ModelPart= 该射击点的连接部件代码,-1即没有设置(其实是原作者懒!),图中第二个武器
12