全面战争模组中文站全面战争模组中文站
搜索/

搜索教程

输入标题,直接打开已发布教程。

输入教程标题开始搜索。

教程目录

制作兵种:战车与火炮

创建时间:2026年9月3日最后更新:2026年9月6日

战车和火炮是在普通单位基础上继续组合出来的载具系统。除了land_units_tables和main_units_tables,它们还会连接战场器械、载具实体、牵引坐骑、乘员和武器;只复制一张land_units_tables记录通常远远不够。

本篇用震旦巨炮wh3_main_cth_art_grand_cannon_0说明火炮,用基斯里夫轻装战争雪橇wh3_main_ksl_veh_light_war_sled_0说明多人战车。模型、动画、挂点和特效资产的制作不在 RPFM 范围内。

两个案例分别适合什么情况

震旦巨炮用来说明“炮身 + 牵引物 + 乘员 + 远程武器”,轻装战争雪橇用来说明“一个载具挂接多名乘员”。它们是两种结构示例,不是战车与火炮的统一模板。无牵引火炮、单体战争机器、怪兽载具、飞行载具和只由乘员开火的战车,都可能省略某些分支或从不同字段取得武器。

自行查找时,先搜索最接近的原版单位 Key,打开land_units_tables并检查Engine、Articulated Record、Mount和主要武器;再搜索该单位在land_units_to_battle_personalities_junctions_tables中的全部乘员。沿每个非空 Key 使用转到定义,并用查找引用判断器械、实体、坐骑和武器是否被其他单位共享。

原版记录从依赖项 → 游戏文件查看,不从Assembly Kit 文件复制、导入或建立制作引用。本文截图展示的是Game-RO:只读模板;真正修改要在自己的 Pack 中进行。缓存若含其他 Mod,跳转后也要核对文件来源,不能只看到相同 Key 就认定是原版。

本篇接在《制作兵种:基础单位》之后:先按所选载具模板建立自己的main_units_tables、land_units_tables和基础连接,再处理下述分支。需要复制时,点击原版表的行号选中完整行,复制到自己 Pack 内同种、同版本的新建表单。整份导入时必须先将自己的data__改为独立文件名,例如twcn_vehicle,再删除不需要的行;不要把筛选隐藏当成删除。只复制需要独立修改的记录,不改的资产与行为可以继续引用原版。

载具的数据链

land_units_tables
    ├─ Engine → battlefield_engines_tables
    │            ├─ Battle Entity → battle_entities_tables(器械)
    │            ├─ Missile Weapon → missile_weapons_tables
    │            └─ Model → warscape_animated_tables
    │                         └─ warscape_animated_lod_tables
    ├─ Articulated Record → land_unit_articulated_vehicles_tables
    │                         └─ Articulated Entity → battle_entities_tables
    ├─ Mount → mounts_tables(牵引物)
    └─ Key → land_units_to_battle_personalities_junctions_tables(乘员)

不同模板会省略其中某些分支,也可能用额外连接表补充武器或乘员。复制与你目标最接近的原版战车或火炮,并沿引用逐层核对,比从空表手填可靠得多。

本篇常用表单

表单 作用
battlefield_engines_tables 定义载具/火炮模型、动作、武器、实体、乘员行为和毁坏资产。
land_unit_articulated_vehicles_tables 定义牵引物与器械的铰接关系和节点索引。
battle_entities_tables 分别定义器械、铰接体、牵引物和乘员实体。
mounts_tables 定义拉车的马、牛、熊等牵引物。
land_units_to_battle_personalities_junctions_tables 把多个乘员放到各自挂点。
battle_personalities_tables 定义乘员动作、外观和实体。
battle_entity_stats_tables 为特定乘员配置独立武器。
warscape_animated_tables、warscape_animated_lod_tables 连接旧式器械模型层级;是否使用取决于模板。
missile_weapons_tables、projectiles_tables 配置火炮或战车远程攻击。
unit_missile_weapon_junctions_tables 给单位附加额外远程武器或覆盖统计时使用。
effect_bonus_value_missile_weapon_junctions_tables 通过效果启用替换武器时,连接该效果与武器。不是普通弹药切换表。

配置 Battlefield Engine

本例震旦巨炮的land_units.Engine指向wh3_main_cth_art_grand_cannon。对应battlefield_engines_tables包含:

列 作用
Engine Type 器械及乘员布局类型。
Model 器械模型记录。
Gun Animation Table 开火等器械动作。
Missile Weapon 火炮使用的远程武器。
Battle Entity 器械自身的速度、质量、碰撞和生命数据。
Draught Attachment Point 牵引物挂接位置。
Rider Attachment Point 乘员挂点前缀或位置。
Tech Folder 模板使用的技术/挂点数据目录。
Destroyed Model、Destruction Animation 被摧毁后的模型和动画。
Riders Shoot Behaviour 多乘员的射击行为。

找到巨炮的 Battlefield Engine 与毁坏模型记录

筛选结果可能命中引用同一实体的其他器械。图中要取的是wh3_main_cth_art_grand_cannon这一行,而不是上方的wh3_cp1_cth_art_grand_cannon。同样叫巨炮、模型也相同,不代表武器一致。

横向查看巨炮器械的远程武器、模型和战斗实体

继续查看同一行:本例Missile Weapon = wh3_main_cth_grand_cannon_ball,Model = cth_grand_cannon,Battle Entity = wh3_main_cth_art_grand_cannon。这里是实际炮身的远程武器入口。上方另一条器械记录使用带flame的武器,正好说明为什么不能只看模型或搜索结果第一行。

只想复用原版巨炮资产时,可以继续引用原版 Engine;要改火炮武器、实体或毁坏表现而不影响原版,就复制 Engine 并改成自己的 Key,再让land_units.Engine指向它。

例如把复制行的Key改为twcn_tutorial_cth_grand_cannon_engine,将其中Missile Weapon接到自己已完成的远程武器,再把新单位的Engine改为这个新器械 Key。模型、动作和毁坏资产若没有改动,保留原引用即可;不要把每个路径都机械改成新名字,否则会指向不存在的文件。

其他载具的Engine Type、模型连接和武器入口可能不同。应从目标模板自己的Engine跳转,不要把巨炮 Engine 用作所有火炮或战车的起点。

当前原版器械记录使用的Engine Type有Generic_2_Crew、Generic_3_Crew、Generic_No_Crew_Fixed、Generic_No_Crew_Rotate四种内部布局预设;本例巨炮为Generic_3_Crew。选择预设后仍要有匹配的动作、技术目录和实际乘员配置,改名字中的数字不会自动生成正确的乘员。保留巨炮结构时,以下值可以直接沿用:

字段 巨炮原版值
gun_animation_table wm_grand_cannon_01_cannon
draught_attachment_point ap_draughtposition
rider_attachment_point ap_crewposition
tech_folder warmachines/engines/cth_grand_cannon/tech/
riders_shoot_behaviour all_riders_shooting
scale 1

riders_shoot_behaviour当前还有only_riders_supporting_shoot_moving,用于只让支持移动射击的乘员参与对应射击行为的预设。是否具备这种支持取决于乘员与动作,不能靠切换字符串给任何驾驶员增加射击能力。初次复用巨炮时保留all_riders_shooting。

配置铰接载具和牵引物

震旦巨炮使用:

Articulated Record = wh3_main_cth_art_grand_cannon_articulation
Mount              = wh3_main_cth_mnt_oxen_draught_artillery

land_unit_articulated_vehicles_tables中的节点索引决定牵引物和器械如何连接;mounts_tables再连接牵引物动作、实体和外观。

找到巨炮的铰接结构记录

这些索引和挂点来自实际资产。照抄不同结构的模板,即使诊断无报错,也可能出现车体折叠、牵引物错位或转向异常。

复用相同的牵引和车体资产时,可以保留这两条原版引用。要独立修改铰接实体或牵引物实体时,分别复制对应记录、改成自己的 Key,再把Articulated Record或Mount接回去;不要把battle_entities_tables里的实体 Key 直接填进期待mounts_tables记录的Mount列。

配置多人乘员

轻装战争雪橇在land_units_to_battle_personalities_junctions_tables中有 5 条乘员记录,分别使用:

ap_crewposition_0
ap_crewposition_1
ap_crewposition_2
ap_crewposition_3
ap_crewposition_4

每条记录都连接一个battle_personalities_tables乘员。需要独立武器的射手,再通过battle_personalities.Battle Entity Stats连接battle_entity_stats_tables。

同一战车连接多名不同乘员

把这五条完整记录复制到自己的连接表,将每条Land Unit改成新雪橇的陆战单位 Key。保留对应的Battle Personality、Attach和挂点组合;同一原版乘员可被多个新单位引用,不必为“复制兵种”而强行重做全部外观。若自己改变乘员布局,才按目标资产逐条重配。

乘员定义中只有四名射手连接独立武器数据

沿五条Battle Personality查到battle_personalities_tables,本例rider_1使用驾驶动作,Battle Entity Stats为空;rider_2至rider_5都连接wh3_main_ksl_veh_war_sled_rider。因此“五名乘员”不等于“五把独立射击武器”。图中横向滚动到了实体与武器配置部分,左侧行号仍可对应这五条记录。

五条连接应逐项保持下面的配对,免去在表中来回寻找:

riders_attachment_point battle_personality 角色
ap_crewposition_0 wh3_main_ksl_veh_war_sled_rider_1 驾驶员,独立武器统计为空。
ap_crewposition_1 wh3_main_ksl_veh_war_sled_rider_2 射手。
ap_crewposition_2 wh3_main_ksl_veh_war_sled_rider_3 射手。
ap_crewposition_3 wh3_main_ksl_veh_war_sled_rider_4 射手。
ap_crewposition_4 wh3_main_ksl_veh_war_sled_rider_5 射手。

五行的attach均为autonomous_rider,engine_articulation_index = -1、jettison_rider = true。复制后只给land_unit统一换成自己的新雪橇 Key;确实修改乘员时,再把相应行的battle_personality换成新定义。

在 battle_entity_stats_tables 中查看独立乘员使用的近战和远程武器

图中:① Key供battle_personalities_tables.Battle Entity Stats引用;② Primary Melee Weapon是该乘员的近战武器;③ Primary Missile Weapon是该乘员自己的远程武器。空值表示这条记录没有从该字段获得武器,不代表整辆载具一定没有相应攻击。

本例四名射手共享wh3_main_ksl_sled_rifle。若只想改变新雪橇的射手武器,需要在自己的 Pack 中复制这条battle_entity_stats_tables记录并改名、接入新武器,再复制需要修改的四条乘员定义,让它们的Battle Entity Stats指向新统计,最后把新单位的四条乘员连接改为这些新定义。少接任何一层,都可能继续用原版武器;直接覆盖共享的原版统计又会影响其他引用者。

不要把五个乘员都填到同一个挂点,也不要因为某个模板有五名乘员,就假设另一个车体也有同样数量和位置。

挂点数量和名称来自实际载具资产。搜索目标模板单位 Key 能找到原版乘员记录,但只有在 AE 或游戏中观察模型,才能确认自定义资产是否仍提供相同挂点。

火炮和战车武器

  • Engine 自己开火:通常看battlefield_engines_tables.Missile Weapon。
  • 单位主体或牵引物攻击:可能看land_units_tables.Primary Melee Weapon或Primary Missile Weapon。
  • 独立乘员开火:可能看battle_entity_stats_tables。
  • 由效果启用的升级武器:检查unit_missile_weapon_junctions_tables及effect_bonus_value_missile_weapon_junctions_tables。

在 unit_missile_weapon_junctions_tables 中查看额外远程武器与单位的连接

图中另选“黑狮车垒(战争车垒-地狱喷射连环炮)”的升级武器连接作为补充案例,不是巨炮或雪橇的必填分支:

字段 填写和检查要点
Id 唯一主键,类型是 64 位整数。新连接需要未占用的数值,不能加文字前缀;Missile Weapon不是联合主键。
Missile Weapon 要启用的替换武器 Key,连接missile_weapons_tables。
Unit 接收武器的main_units_tables.Unit,不要误填仅存在于陆战单位表的新 Key。
Battle Entity Stats Override 可选:只替换指定battle_entity_stats_tables配置所使用的远程武器,而不是单位内全部相关远程武器。这个原版案例为空,不要凭空填写。

还要沿替换武器 Key 查找effect_bonus_value_missile_weapon_junctions_tables中的启用效果,确认它怎样由科技、人物技能、特性或其他来源授予目标。只增加武器连接并不等于战斗中必然出现切换按钮。普通手动弹药切换使用的是上一章的missile_weapons_to_projectiles_tables等结构。

不要因为表名包含“单位远程武器”就把所有火炮武器都塞进这里;器械或乘员已经使用预期武器、也不需要效果驱动替换时,就不必新增这张表。

找到“哪个部件在攻击”后,再按《制作兵种:远程单位》把武器链接入当前单位;需要理解远程武器、投射物、爆炸、破片、穿透和多弹药的全部字段时,继续阅读《远程武器详解》。把新炮弹只填到land_units.Primary Missile Weapon,而实际开火的是 Engine,修改就不会生效。

模型连接的边界

旧式器械模板可能通过warscape_animated_tables和warscape_animated_lod_tables连接模型;较新的字段还可能直接引用.wsmodel、毁坏模型、.anim和.meta路径。RPFM 可以导入文件并修改路径,但不能自动制作这些资产,也不能保证新模型的骨架、节点和挂点与模板一致。

游戏内检查

  1. 器械、牵引物和每名乘员是否都出现且位置正确。
  2. 前进、倒车、转向和急停时铰接是否自然。
  3. 乘员是否在正确挂点播放待机、装填、射击、近战和死亡动作。
  4. 火炮开火时是否使用预期武器、弹药、枪口和特效。
  5. 载具被毁后,模型、动画、残骸和乘员状态是否正确。
  6. 弃炮、脱离战车或乘员死亡等特殊状态是否会卡住单位。

载具类最容易出现“表单无错、进游戏才错”的问题。每改一层就进行一次短战场测试,比全部做完后再排查更容易定位。

图片查看
100%

滚轮或按钮缩放 · 拖动或滑动查看 · Esc 关闭