**2022年12月18日** **对应游戏版本v1.0.0** 皮蛋初版未完成 **2022年12月21日** **对应游戏版本v1.0.0** 皮蛋初版完成 # 根元素 # 类型名 ``` …… …… ``` # 原版路径 Modules\SandBoxCore\ModuleData\spnpccharacters.xml # 用途 ## 兵种的信息 - 兵种的ID - 兵种的默认分组 - 兵种的等级 - 兵种的名称 - 兵种的文化 - 兵种的脸部码 - 兵种的技能等级 - 该兵种的升级目标兵种 - 兵种的战斗装备和平民装备 # 特点 - 进入主菜单时不载入NPCCharacter角色的数据。只在载入存档的时候读取。 - 但如果存档中某部队中有A兵种,但在xml文件中删除了该兵种的id,游戏读取不到,就会导致存档无法进入。 - 所以,兵种id不可以改变,为了兼容老存档也不可以删除id。 - 下面未出现的元素,是做兵种时通常不出现的元素,NPCCharacter中有很多元素只在特定的情况给特定的角色用。 # 格式示范 ``` ``` # 元素说明 - id - 该兵种的ID - 不可空 - default_group - 该兵种的默认分组 - 可填 1. Infantry 步兵 2. Ranged 远程 3. Cavalry 骑兵 4. HorseArcher 骑射 - 影响部队移动速度。前两者为步行单位,可受到“骑行步兵”效果的加成;后两者为骑乘单位,直接增加部队移动速度。 - 影响特长Perk的判定,比如效果:*当部队中步行单位占比超过50%时……*;此效果即用分组来判断是否是步行单位。 - 影响野外战斗时模拟战斗(坐镇指挥)的战斗力,是骑乘单位时,战斗力乘以1.2。 - level - 该兵种的等级 - 不可空 - 游戏中会根据等级计算得出兵的等阶Tier - 可填 1. 1 零阶,对应原版的农民,在百科全书中显示为无标志。 2. 6 一阶,对应原版的新兵,在百科全书中显示标志是“一个拐”。 3. 11 二阶,对应原版的贵族兵的初始兵,在百科全书中显示标志是“两个拐”。 4. 16 三阶,在百科全书中显示标志是“三个拐”。 5. 21 四阶,在百科全书中显示标志是“三角”。 6. 26 五阶,对应原版的普通兵种顶级,在百科全书中显示标志是“三角加一横线”。 7. 31 六阶,对应原版的贵族兵种顶级,在百科全书中显示标志是“三角加两横线”。 8. 36 七阶,原版没有,并且代码被屏蔽,需要用代码重新开放,在百科全书中显示标志是“五星加一横线”。 - 实际上,1至5会计算为零阶,6至10会计算为二阶,11至15计算为三阶,以此类推。升级不升阶可能会产生Bug。 - 影响模拟战斗(坐镇指挥)的战斗力,等阶是多少,战斗力即多少。 - 升级前和升级后的等级差决定了升级所需经验值的多少。由公式计算得出。 - name - 该兵种的名称。 - 加入火星人的强制读取英语翻译文件的功能后,才可以正常读取英语的翻译文件显示英文,否则英文语言设置下,游戏中显示名称只显示name中的字符。 - 格式 ``` name="{=此处填写翻译的StringID}此处填写英文名称" ``` - occupation - 该兵种的职业。 - 不可空 - 对于兵种,填写 1. Soldier 大部分兵种的职业。士兵。 2. CaravanGuard 商队护卫的兵种。 3. Bandit 强盗的兵种。 - is_basic_troop - 该兵种是否是兵种树的起始。 - 可填参数:"true" - 可空,空则默认为false - 只有正确填写此项时,百科全书中显示的与之相关的兵种才能显示为正确的兵种树状态。 - is_hidden_encyclopedia - 是否在百科全书中隐藏。 - 可填参数:"true" - 可空,空则默认为false - culture - 该兵种的文化。 - 以"Culture.文化id"的格式填写 - 不可空,特殊情况可以考虑用neutral_culture - [见文化xml文档wiki页面](https://dev.azure.com/KnightOfTheArk/KnightOfTheArk/_wiki/wikis/KnightOfTheArk.wiki/93/SPCultures%E6%96%87%E5%8C%96) - 子元素 - 该兵种使用的脸部码。 - 不可空 - 决定了该兵种的肤色、发色、身高、胖瘦、捏脸、发型、胡子、文身或疤痕等外观的随机范围。 - 可填写三种格式 1. 标准的模板id 兵种应使用这种格式。[见脸部码xml文档wiki页面](https://dev.azure.com/KnightOfTheArk/KnightOfTheArk/_wiki/wikis/KnightOfTheArk.wiki/97/BodyProperties%E6%8D%8F%E8%84%B8%E7%A0%81) 2. 单独的模板 通常不使用这种格式。[见脸部码xml文档wiki页面](https://dev.azure.com/KnightOfTheArk/KnightOfTheArk/_wiki/wikis/KnightOfTheArk.wiki/97/BodyProperties%E6%8D%8F%E8%84%B8%E7%A0%81) 3. 单独的一个脸部码 兵种通常不使用这种格式。单独的一个码会使得该兵种长得完全一样。 ``` 格式1: 格式2: 格式3: ``` - 子元素 - 该兵种的技能等级 - 可空 - 通常范围0至300 - 可填技能 - OneHanded 单手 - TwoHanded 双手 - Polearm 长杆 - Bow 弓 - Crossbow 弩 - Throwing 投掷 - Riding 骑术 - Athletics 跑动 - 填写其他角色存在的技能也能读取,但没有效果。特殊的,像希绝大陆模组的程序,制作了读取兵种的医疗Medicine技能等级作为其血量上限的功能。 ``` 格式示范: ``` - 子元素 - 该兵种可以升级到的兵种 - 可空 - 可填写多个 ``` 格式: …… ``` - 子元素 - 该兵种的装备 - 不可空 - 必须有一套战斗装备和一套日常装备;其中,带有"civilian="true"的是日常装备,反之是战斗装备。 - 骑砍2的随机装备并非是按照“一套”为单位进行随机,而是每个槽位slot都进行随机。 - 所以,当某个兵种有五套装备时,他会使用套装A的头盔,套装B的胸甲,套装C的单手剑,套装D的盾牌,和套装E的马匹。 - 如果某个槽位slot出现了空,那么随机时会作为空进行随机。 - 所以,当某个兵种有五套装备,武器槽位二号slot Item1有两套是盾牌,有三套是空时,该兵种随机到装备盾牌的概率为五分之二;随机到不带盾牌,即空的概率为五分之三。以此方法制作概率佩戴盾牌,概率佩戴头盔等设计的兵种。 - 容易产生的报错 - 当没有日常装备,没有读取到时,会崩溃。 - 当日常装备中填写了非日常装备的物品时,会崩溃。(可见Items的wiki文档页面)[https://dev.azure.com/KnightOfTheArk/KnightOfTheArk/_wiki/wikis/KnightOfTheArk.wiki/122/Items%E9%98%B2%E5%85%B7%E6%9C%8D%E8%A3%85] - 当装备槽位slot填写的物品不是该部位的装备时,会崩溃。 - 特殊的,当填写的物品id找不到时,会以空为结果,但不会崩溃。发生该问题后,通常打开百科全书查看该兵种,即可发现该兵种没有佩戴该部位的装备。 - 可填写三种格式。三种格式可以共存。 1. 子元素 - 兵种的战斗装备常用格式。 - 可空。 - 可以有多个EquipmentRoster。 - 每个EquipmentRoster中包含一套装备。 - 士兵进入战场时,每个装备槽位slot,都会从所有在EquipmentRoster中读取到的slot中随机。 - 可填写的槽位slot - Item0 武器栏的第一个武器 - Item1 武器栏的第二个武器 - Item2 武器栏的第三个武器 - Item3 武器栏的第四个武器 - Head 防具栏的头部装备 - Cape 防具栏的肩部装备 - Body 防具栏的胸部装备 - Gloves 防具栏的手部装备 - Leg 防具栏的腿部装备 - Horse 骑乘栏的骑乘装备 - HorseHarness 骑乘栏的骑乘防具装备 2. 子元素 - 兵种的日常装备常用格式。 - 可空 - 填写装备模板的id,[见装备模板xml文档wiki页面](https://dev.azure.com/KnightOfTheArk/KnightOfTheArk/_wiki/wikis/KnightOfTheArk.wiki/89/EquipmentRosters%E8%A3%85%E5%A4%87%E6%A8%A1%E6%9D%BF) 3. 直接填写equipment - 不推荐使用。 - 会将填写的装备应用至所有的套装中的对应槽位slot。 ``` 格式示范: ```