Starsector Nihilism Guidance
首页
Github 项目
首页
Github 项目
  • 首页
  • 第一章 基础及舰船相关
    • 小节 MOD结构
    • 小节 基本舰船
    • 小节 航母、战机与相位舰
    • 小节 武器
    • 小节 战术系统
    • 小节 舰船插件
  • 第二章
    • 小节 战役
    • 小节 势力
    • 小节 星系
    • 小节 描述文本
    • 小节 内置装配
  • 第三章
    • 小节 模拟战
    • 小节 舰船风格
    • 小节 模块船
    • 小节 势力争霸
    • 小节 弹体尾迹
    • 小节 音效相关
  • 第四章 等待设计
    • 小节 1
    • 小节 2
    • 小节 3
    • 小节 4
    • 小节 5
    • 小节 6
  • 第五章 核心代码
    • 小节 ModPlugin
    • 小节 Global
    • 小节 CombatEngine 等待设计
    • 小节 CombatEntity 等待设计
    • 小节 5 等待设计
    • 小节 船插 等待设计
    • 小节 战术系统AI 等待设计
    • 小节 开火/命中 等待设计
  • 第六章 进阶 等待设计
    • 小节 BaseEveryFrameCombatPlugin
    • 小节 BaseCombatLayeredRenderingPlugin
    • 小节 EveryFrameWeaponEffectPlugin
    • 小节 AI
    • 小节 动画设计
    • 小节 6
  • 第七章 等待设计
    • 小节 1
    • 小节 2
    • 小节 3
    • 小节 4
    • 小节 5
    • 小节 6
    • 小节 7
  • 第八章 等待设计
    • 小节 1
    • 小节 2
    • 小节 3
    • 小节 4
    • 小节 5
    • 小节 6
  • 第九章 等待设计
    • 小节 1
    • 小节 2
    • 小节 3
    • 小节 4
    • 小节 5
    • 小节 6

制作火炮、光束与导弹

本节预期阅读时间:~15 分钟。

本节预期操作时间:~20 分钟。

获取贴图

武器的贴图和舰船相比略有不同。

远行星号 的武器表现形式根据槽位不同而分为炮塔和固定槽位,它们各自需要一套贴图。一般来说,固定槽位的武器贴图比炮塔的更细更长。且炮塔武器的重心往往就在贴图中央,而固定槽位武器的重心则往往偏向于图片底部。

而除了武器本身之外,还包括光效、炮管、底座这三个可选补充。绝大多数武器至少有光效或炮管中的一种,而少数武器可能拥有两种,甚至全部三种。

本例将制作一个小型带炮管射弹武器,一个中型带光效光束武器,与一个大型不带炮管也不带光效的导弹武器。所以先准备它们的贴图:

耗时约 45 秒。

命名并将贴图放入正确的位置

武器命名也有规范可言。

武器的基础名称是MOD 前缀名 + 武器 ID,例如本例中一个武器叫都林自动炮(Durin),则它的 ID 应当为GearIn_durin。以此类推,为所有武器命名并分配 ID。

而武器各个贴图则是在基础名称的基础上继续扩写。

首先扩写它是炮塔或固定插槽,如果是炮塔则在后面加上_turret,否则加上_hardpoint。然后扩写它的可选补充,如果是武器本身,则加上_base;如果是炮管,则加上_recoil;如果是光效,则加上_glow;如果是底座,则加上_under。

听上去有些复杂,但是见过例子之后只需要不断地复制粘贴即可。

最后,把这些武器放入graphics/weapons武器贴图文件夹内:

制作武器文件

制作武器文件也与制作舰船文件相比有所不同。编者非常不推荐使用舰船编辑器的武器编辑模式,因为它相较而言难以上手、操作不便。编者推荐寻找一门与目标武器类似的原版武器,然后复制粘贴修改。

制作火炮武器

编者设想的都林自动炮是一种发射高爆弹药的近距离速射武器,类似于轻型突击炮的低配版本,所以直接进入原版储存武器文件的data/weapons文件夹内,将它的lightag.wpn复制到 MOD 中data/weapons文件夹内,文件名改为GearIn_durin.wpn,然后准备修改:

{
	"id":"lightag",  # this id must match what's in the spreadsheet
	"specClass":"projectile",
	"type":"BALLISTIC",
	"size":"SMALL",
	"displayArcRadius":400,
	"turretSprite":"graphics/weapons/light_assault_gun_turret_base.png",
	"turretGunSprite":"graphics/weapons/light_assault_gun_turret_recoil.png",
	"hardpointSprite":"graphics/weapons/light_assault_gun_hardpoint_base.png",
	"hardpointGunSprite":"graphics/weapons/light_assault_gun_hardpoint_recoil.png",	
	"visualRecoil":5.0,  # the gun sprites are only used if this is non-0
	"renderHints":[RENDER_BARREL_BELOW],
	"turretOffsets":[10, 0],
	"turretAngleOffsets":[0],
	"hardpointOffsets":[15, 0],
	"hardpointAngleOffsets":[0],
	"barrelMode":"ALTERNATING", # or LINKED.  whether barrels fire at the same time or alternate.
	"animationType":"MUZZLE_FLASH",  # NONE, GLOW, MUZZLE_FLASH, SMOKE
	"muzzleFlashSpec":{"length":30.0,   # only used if animationType = MUZZLE_FLASH
					   "spread":16.0,
					   "particleSizeMin":8.0,
					   "particleSizeRange":10.0,
					   "particleDuration":0.35,
					   "particleCount":12,
					  "particleColor":[255,155,105,185]},
	"projectileSpecId":"lightag_shot",  # projectile that will be fired
	"fireSoundTwo":"light_assault_gun_fire",	
}

看似一大片英文,但实际上要改的条目不多。

英文实际意义
id武器的 ID
type武器的类型,在本例中表示这是实弹类型武器,不变
size武器的型号,在本例中表示这是小型武器,不变
turretSprite、turretGunSprite、hardpointSprite、hardpointGunSprite炮塔主体贴图、炮塔炮管贴图、固定槽位主体贴图、固定槽位炮管贴图,在本例中分别替换为前文贴图的路径
visualRecoil炮管缩退距离,不变
renderHints武器渲染模式,本例中表示这门武器将炮管渲染在主体的下方,不变。
turretOffsets、turretAngleOffsets、hardpointOffsets、hardpointAngleOffsets炮塔开火点、炮塔开火角度、固定槽位开火点、固定槽位开火角度。因为本例的武器是双管自动炮,所以需要进行对应调整——每 2 个开火点数字表示 1 个坐标并对应 1 个开火角度数字。开火点的坐标原点是贴图中心,第一个数字正/负是贴图的上/下,第二个数字正/负是贴图的左/右
barrelMode炮管射击模式,在本例中为交替射击,不变
animationType、muzzleFlashSpec开火烟雾的视觉属性,不变。若您有兴趣可以自行百度翻译。
projectileSpecId武器所发射的弹体 ID,暂时不变,之后调整
fireSoundTwo武器开火音效,不变

上表的内容并不完全,在介绍完毕本章的三门武器之后,将重新总结一份速查表。

总而言之,只需要修改id、各个 sprite、各个 offsets 和 angleOffsets 即可,工作量极小:

{
	"id":"GearIn_durin",  # this id must match what's in the spreadsheet
	"specClass":"projectile",
	"type":"BALLISTIC",
	"size":"SMALL",
	"displayArcRadius":400,
	"turretSprite":"graphics/weapons/GearIn_durin_turret_base.png",
	"turretGunSprite":"graphics/weapons/GearIn_durin_turret_recoil.png",
	"hardpointSprite":"graphics/weapons/GearIn_durin_hardpoint_base.png",
	"hardpointGunSprite":"graphics/weapons/GearIn_durin_hardpoint_recoil.png",	
	"visualRecoil":5.0,  # the gun sprites are only used if this is non-0
	"renderHints":[RENDER_BARREL_BELOW],
	"turretOffsets":[15, 3, 15, -3],
	"turretAngleOffsets":[0, 0],
	"hardpointOffsets":[8, 3, 8, -3],
	"hardpointAngleOffsets":[0, 0],
	"barrelMode":"ALTERNATING", # or LINKED.  whether barrels fire at the same time or alternate.
	"animationType":"MUZZLE_FLASH",  # NONE, GLOW, MUZZLE_FLASH, SMOKE
	"muzzleFlashSpec":{"length":30.0,   # only used if animationType = MUZZLE_FLASH
					   "spread":16.0,
					   "particleSizeMin":8.0,
					   "particleSizeRange":10.0,
					   "particleDuration":0.35,
					   "particleCount":12,
					  "particleColor":[255,155,105,185]},
	"projectileSpecId":"lightag_shot",  # projectile that will be fired
	"fireSoundTwo":"light_assault_gun_fire",	
}

制作光束武器

编者设想的乌里光束是一种造成远距离能量伤害的光束武器,类似于引力子束的能量版本,所以直接将它的gravitonbeam.wpn复制到 MOD 中data/weapons文件夹内,文件名改为GearIn_uri.wpn,然后准备修改:

{
	"specClass":"beam",
	"id":"gravitonbeam",
	"type":"ENERGY",
	"size":"MEDIUM",
	"displayArcRadius":550,
	"turretSprite":"graphics/weapons/graviton_beam_turret_base.png",
	"turretGlowSprite":"graphics/weapons/graviton_beam_turret_glow.png",
	"hardpointSprite":"graphics/weapons/graviton_beam_hardpoint_base.png",
	"hardpointGlowSprite":"graphics/weapons/graviton_beam_hardpoint_glow.png",
	"turretOffsets":[15, 0],
	"turretAngleOffsets":[0],
	"hardpointOffsets":[23, 0],
	"hardpointAngleOffsets":[0],
	"fringeColor":[5,135,175,255],
	"coreColor":[200,225,255,255],
	"glowColor":[25,215,255,255],
	"width":20.0,
	"textureType":ROUGH,
	"textureScrollSpeed":260.0,
	"pixelsPerTexel":5.0,
	"pierceSet":[PROJECTILE_FF,PROJECTILE_NO_FF,PROJECTILE_FIGHTER,MISSILE_FF,MISSILE_NO_FF],
	#"fireSoundOne":"graviton_beam_intro",
	"fireSoundTwo":"graviton_beam_loop",
}

实际上要改的依然不多。

id、各个 sprite、各个 offsets 和 angleOffsets 都已经是上面见过一次的熟面孔了。所以接下来列出的是此前没有出现过的条目。

英文实际意义
turretGlowSprite、hardpointGlowSprite炮塔光效贴图、固定槽位光效贴图
fringeColor光束边缘部分的颜色
coreColor光束核心部分的颜色
glowColor武器开火时光效贴图的颜色
width光束宽度
textureType、textureScrollSpeed、pixelsPerTexel光束的材质相关内容,相对较为进阶。作为初学者,只需要掌握 textureScrollSpeed 和 pixelsPerTexel 分别对应光束材质的滚动速度与拉伸程度即可
pierceSet光束可以穿透的碰撞类型
fireSoundTwo光束的持续时播放的循环音效

上表的内容依然并不完全。

总而言之,只需要修改id、各个 sprite、各个 offsets 和 angleOffsets、以及光束的颜色即可,工作量依然极小:

{
	"specClass":"beam",
	"id":"GearIn_uri",
	"type":"ENERGY",
	"size":"MEDIUM",
	"displayArcRadius":550,
	"turretSprite":"graphics/weapons/GearIn_uri_turret_base.png",
	"turretGlowSprite":"graphics/weapons/GearIn_uri_turret_glow.png",
	"hardpointSprite":"graphics/weapons/GearIn_uri_hardpoint_base.png",
	"hardpointGlowSprite":"graphics/weapons/GearIn_uri_hardpoint_glow.png",
	"turretOffsets":[15, 0],
	"turretAngleOffsets":[0],
	"hardpointOffsets":[23, 0],
	"hardpointAngleOffsets":[0],
	"fringeColor":[135,175,135,255],
	"coreColor":[200,255,225,255],
	"glowColor":[25,255,215,255],
	"width":20.0,
	"textureType":ROUGH,
	"textureScrollSpeed":260.0,
	"pixelsPerTexel":5.0,
	"pierceSet":[PROJECTILE_FF,PROJECTILE_NO_FF,PROJECTILE_FIGHTER,MISSILE_FF,MISSILE_NO_FF],
	#"fireSoundOne":"graviton_beam_intro",
	"fireSoundTwo":"graviton_beam_loop",
}

制作导弹武器

编者设想的德瓦林 发射架是一种远距离持续发射高爆导弹的武器,类似于暴风 MLRS的高爆版本,所以直接将它的squall.wpn复制到 MOD 中data/weapons文件夹内,文件名改为GearIn_dwalin.wpn,然后准备修改:

{
	"id":"squall",
	"specClass":"projectile",
	"type":"MISSILE",
	"size":"LARGE",
	"turretSprite":"graphics/weapons/squall_turret_base.png",
	"turretUnderSprite":"graphics/weapons/squall_turret_under.png",
	"hardpointSprite":"graphics/weapons/squall_hardpoint_base.png",
	"hardpointUnderSprite":"graphics/weapons/squall_hardpoint_under.png",
	"hardpointOffsets":[26, 9, 26, 5, 26, 1, 26, -3, 26, -7],
	"turretOffsets":[14, 8, 14, 4, 14, 0, 14, -4, 14, -8],
	#"hardpointAngleOffsets":[0, 0],
	#"turretAngleOffsets":[0, 0],
	"hardpointAngleOffsets":[0, 0, 0, 0, 0],
	"turretAngleOffsets":[0, 0, 0, 0, 0],		
	"barrelMode":"ALTERNATING",
	"animationType":"SMOKE",
	"renderHints":[RENDER_LOADED_MISSILES],
	"interruptibleBurst":false,
	"smokeSpec":{"particleSizeMin":10.0,
							 "particleSizeRange":14.0,
							 "cloudParticleCount":3,
							 "cloudDuration":1.5,
							 "cloudRadius":12.0,
							 "blowbackParticleCount":3,
							 "blowbackDuration":0.45,
							 "blowbackLength":20.0,
							 "blowbackSpread":6.0,
							 "particleColor":[190,180,160,95]},
	"projectileSpecId":"squall_rocket",
	"fireSoundTwo":"squall_fire",
}

这次已经几乎完全没有生面孔了。仅有未出现的turretUnderSprite和hardpointUnderSprite是底座贴图,而本武器没有底座,所以在修改时直接删去即可:

{
	"id":"GearIn_dwalin",
	"specClass":"projectile",
	"type":"MISSILE",
	"size":"LARGE",
	"turretSprite":"graphics/weapons/GearIn_dwalin_turret_base.png",

	"hardpointSprite":"graphics/weapons/GearIn_dwalin_hardpoint_base.png",

	"hardpointOffsets":[26, 7, 26, -1],
	"turretOffsets":[14, 6, 14, -2],
	#"hardpointAngleOffsets":[0, 0],
	#"turretAngleOffsets":[0, 0],
	"hardpointAngleOffsets":[0, 0],
	"turretAngleOffsets":[0, 0],		
	"barrelMode":"ALTERNATING",
	"animationType":"SMOKE",
	"renderHints":[RENDER_LOADED_MISSILES],
	"interruptibleBurst":false,
	"smokeSpec":{"particleSizeMin":10.0,
							 "particleSizeRange":14.0,
							 "cloudParticleCount":3,
							 "cloudDuration":1.5,
							 "cloudRadius":12.0,
							 "blowbackParticleCount":3,
							 "blowbackDuration":0.45,
							 "blowbackLength":20.0,
							 "blowbackSpread":6.0,
							 "particleColor":[190,180,160,95]},
	"projectileSpecId":"squall_rocket",
	"fireSoundTwo":"squall_fire",
}

实用武器文件速查表

英文实际意义
id武器的 ID
specClass武器发射弹体亦或是光束,弹体为projectile,光束为beam。导弹也是弹体的一种,因此也是projectile
beamEffect光束本身的每帧特效路径,仅对光束武器有效
type武器的类型,可以是槽位类型中的任何一种,但只有BALLISTIC、ENERGY和MISSILE表现正常
size武器的型号,可以是SMALL、MEDIUM或LARGE
everyFrameEffect武器的每帧特效代码路径
各类 sprite武器在炮塔、固定槽位模式下的各类组件贴图,部分可适当留空
visualRecoil炮管缩退距离,大于 0 时才会加载炮管数据
fringeColor光束边缘部分的颜色,仅对光束武器有效
coreColor光束核心部分的颜色,仅对光束武器有效
glowColor武器开火时光效贴图的颜色
width光束宽度,仅对光束武器有效
renderHints武器渲染模式,可以是RENDER_BARREL_BELOW、RENDER_LOADED_MISSILES、RENDER_LOADED_MISSILES_UNLESS_HIDDEN、RENDER_ADDITIVE、SUSPEND_RECOIL中有逻辑的排列组合,分别是将炮管渲染在主体底部、渲染导弹、非隐藏槽位时渲染导弹、以叠加模式渲染、炮管默认不移动
各类 offsets 和 angleOffsets炮塔开火点、炮塔开火角度、固定槽位开火点、固定槽位开火角度。因为本例的武器是双管自动炮,所以需要进行对应调整——每 2 个开火点数字表示 1 个坐标并对应 1 个开火角度数字。开火点的坐标原点是贴图中心,第一个数字正/负是贴图的上/下,第二个数字正/负是贴图的左/右
barrelMode炮管射击模式,可以是LINKED、ALTERNATING、ALTERNATING_BURST或DUAL,分别是齐射、轮流发射、每炮管波次发射、每次发射 2 发
autocharge设为 true 时,按下左键即可自动完成前摇,否则必须按住左键直到前摇完成为止。仅对非光束武器有效
beamFireOnlyOnFullCharge设为 true 时,光束在渐入阶段不会产生光束也不会造成伤害。仅对光束武器有效
darkCore当光束核心颜色为暗色时,将此项设为 true 将表现地更暗。仅对光束武器有效
animationType武器开火时产生的额外特效,可以是NONE、GLOW、MUZZLE_FLASH、GLOW_AND_FLASH或SMOKE,分别是无特效、流动渲染光效贴图、产生炮口集束粒子、流动渲染光效贴图且产生炮口集束粒子、产生烟雾
muzzleFlashSpec内容过多,自行百度翻译
projectileSpecId武器所发射的弹体 ID,仅对非光束武器有效
textureType光束材质预设或光束材质路径,仅对光束武器有效
textureScrollSpeed光束材质的滚动速率,仅对光束武器有效
pixelsPerTexel光束材质的拉伸程度,仅对光束武器有效
pierceSet光束可以穿透的碰撞类型,仅对光束武器有效
fireSoundOne武器持续发射时循环播放的音效
fireSoundTwo武器开火音效

制作武器数据

能复制粘贴就绝不硬写。

制作火炮武器数据

将轻型自动炮的数据复制到 MOD 中weapons_data.csv内,然后修改:

name,id,tier,rarity,base value,range,damage/second,damage/shot,emp,impact,turn rate,OPs,ammo,ammo/sec,reload size,type,energy/shot,energy/second,chargeup,chargedown,burst size,burst delay,min spread,max spread,spread/shot,spread decay/sec,beam speed,proj speed,launch speed,flight time,proj hitpoints,autofireAccBonus,extraArcForAI,hints,tags,groupTag,tech/manufacturer,for weapon tooltip>>,primaryRoleStr,speedStr,trackingStr,turnRateStr,accuracyStr,customPrimary,customPrimaryHL,customAncillary,customAncillaryHL,noDPSInTooltip,number
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Light Machine Gun,lightmg,0,,100,300,,25,,1,50,3,,,,KINETIC,3,,0,0.4,5,0.1,0,5,1,15,,600,,,10,,,PD,"pd6, kinetic3, SR, base_bp",,,,Point Defense,,,,,,,,,,0.5
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Phase Lance,phasebeam,1,,1500,600,1000,,,0,20,10,,,,ENERGY,,1200,0.25,0.5,1,4,,,,,3200,,,,,,,,"energy14, beam10, rare_bp, merc",,,,General,,,,,,,,,,20
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Cyclone Reaper Launcher,cyclone,2,,5000,1200,,4000,,75,20,26,20,,,HIGH_EXPLOSIVE,0,,0,9,2,1,0,0,0,0,,400,100,3.5,500,,,STRIKE,"strike18, rocket14, rare_bp, merc",,,,Torpedo,Fast,None,,,,,,,TRUE,15
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
都林自动炮,GearIn_durin,1,,300,600,,35,,3,40,4,,,,HIGH_EXPLOSIVE,35,,0,0.14,1,,0,5,1,5,,800,,,30,,,,"he6, lowtech_bp, midline_bp, merc",,,,反装甲,,,,,,,,,,3

一门武器最重要的特征同样是要有趣。

在本例中,都林自动炮作为轻型突击炮的低配版本,拥有更低的基础射程和更低的装配消耗。但仅仅如此是无法抵消它 100 射程削弱带来的劣势,所以为它提供了极强的射速增益。射速增益似乎让它加强过头了,所以再次降低单发伤害与幅能产生,来让这门武器变成绝佳的近距离泼水炮,低 DPH 让它不会造成高到过分的伤害。

制作光束武器数据

将引力子束的数据复制到 MOD 中weapons_data.csv内,然后修改:

name,id,tier,rarity,base value,range,damage/second,damage/shot,emp,impact,turn rate,OPs,ammo,ammo/sec,reload size,type,energy/shot,energy/second,chargeup,chargedown,burst size,burst delay,min spread,max spread,spread/shot,spread decay/sec,beam speed,proj speed,launch speed,flight time,proj hitpoints,autofireAccBonus,extraArcForAI,hints,tags,groupTag,tech/manufacturer,for weapon tooltip>>,primaryRoleStr,speedStr,trackingStr,turnRateStr,accuracyStr,customPrimary,customPrimaryHL,customAncillary,customAncillaryHL,noDPSInTooltip,number
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Light Machine Gun,lightmg,0,,100,300,,25,,1,50,3,,,,KINETIC,3,,0,0.4,5,0.1,0,5,1,15,,600,,,10,,,PD,"pd6, kinetic3, SR, base_bp",,,,Point Defense,,,,,,,,,,0.5
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Phase Lance,phasebeam,1,,1500,600,1000,,,0,20,10,,,,ENERGY,,1200,0.25,0.5,1,4,,,,,3200,,,,,,,,"energy14, beam10, rare_bp, merc",,,,General,,,,,,,,,,20
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Cyclone Reaper Launcher,cyclone,2,,5000,1200,,4000,,75,20,26,20,,,HIGH_EXPLOSIVE,0,,0,9,2,1,0,0,0,0,,400,100,3.5,500,,,STRIKE,"strike18, rocket14, rare_bp, merc",,,,Torpedo,Fast,None,,,,,,,TRUE,15
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
都林自动炮,GearIn_durin,1,,300,600,,35,,3,40,4,,,,HIGH_EXPLOSIVE,35,,0,0.14,1,,0,5,1,5,,800,,,30,,,,"he6, lowtech_bp, midline_bp, merc",,,,反装甲,,,,,,,,,,3
乌里光束,GearIn_uri,2,,1500,1000,175,,,,15,9,,,,ENERGY,,200,0.1,0.1,,,,,,,2400,,,,,,,,"beam12, energy11, LR, hightech_bp, midline_bp, merc",,,,压制,,,,,,,,,,21

在本例中,乌里光束作为引力子束的另一个版本,事实上更像两门绑在一起的战术激光炮。它的装配点让它足以支持两倍的 DPS,不过编者打算进一步提高一些,然后用稍高的幅能产生作为相应的代价。最后删除它impact里的数据和额外描述。

制作导弹武器数据

将暴风 MLRS的数据复制到 MOD 中weapons_data.csv内,然后修改:

name,id,tier,rarity,base value,range,damage/second,damage/shot,emp,impact,turn rate,OPs,ammo,ammo/sec,reload size,type,energy/shot,energy/second,chargeup,chargedown,burst size,burst delay,min spread,max spread,spread/shot,spread decay/sec,beam speed,proj speed,launch speed,flight time,proj hitpoints,autofireAccBonus,extraArcForAI,hints,tags,groupTag,tech/manufacturer,for weapon tooltip>>,primaryRoleStr,speedStr,trackingStr,turnRateStr,accuracyStr,customPrimary,customPrimaryHL,customAncillary,customAncillaryHL,noDPSInTooltip,number
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Light Machine Gun,lightmg,0,,100,300,,25,,1,50,3,,,,KINETIC,3,,0,0.4,5,0.1,0,5,1,15,,600,,,10,,,PD,"pd6, kinetic3, SR, base_bp",,,,Point Defense,,,,,,,,,,0.5
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Phase Lance,phasebeam,1,,1500,600,1000,,,0,20,10,,,,ENERGY,,1200,0.25,0.5,1,4,,,,,3200,,,,,,,,"energy14, beam10, rare_bp, merc",,,,General,,,,,,,,,,20
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
#Cyclone Reaper Launcher,cyclone,2,,5000,1200,,4000,,75,20,26,20,,,HIGH_EXPLOSIVE,0,,0,9,2,1,0,0,0,0,,400,100,3.5,500,,,STRIKE,"strike18, rocket14, rare_bp, merc",,,,Torpedo,Fast,None,,,,,,,TRUE,15
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
都林自动炮,GearIn_durin,1,,300,600,,35,,3,40,4,,,,HIGH_EXPLOSIVE,35,,0,0.14,1,,0,5,1,5,,800,,,30,,,,"he6, lowtech_bp, GearIn_bp",,,,反装甲,,,,,,,,,,3
乌里光束,GearIn_uri,2,,1500,1000,175,,,,15,9,,,,ENERGY,,200,0.1,0.1,,,,,,,2400,,,,,,,,"beam12, energy11, LR, GearIn_bp",,,,压制,,,,,,,,,,21
德瓦林 发射架,GearIn_dwalin,2,,4000,2500,,600,,15,20,20,100,,,HIGH_EXPLOSIVE,0,,0,10,10,0.5,0,0,0,0,,600,100,4.75,300,,,"DO_NOT_AIM, CONSERVE_3, STRIKE, USE_VS_FRIGATES, MISSILE_SPREAD","missile19, strike15, GearIn_bp",,,,压制,非常快,特殊,,,瞄准后失去制导能力。,,,,,16.2

因为需要在发射次数与总效果之间考虑,所以大型导弹并不那么好设计,要设计得有趣就更难了。在本例中,德瓦林 发射架作为高爆暴风,需要提高 DPH 来取得对装甲的有效打击效果,然后降低一些单波次发射量和总备弹量来与修改过的贴图匹配。EMP 因为意义不明被移除,这有助于提高设计的纯粹性。

提前准备

将新船的tag中诸如xx_bp的内容修改为前缀名_bp,在本例中为GearIn_bp。日后将会有用。

除非它是您不希望大量出现的武器或它是内置武器——在这种情况下,您可以将tag中的内容清空。

实用武器数据速查表

不在本表上的数据均为无意义数据(如 for weapon tooltip>>)或不重要数据(如 number)。

英文实际意义
name武器名称
id武器 ID
tier科技等级,正常范围是 0~3,大于 3 将导致不会市场上正常出现。科技等级越大则越稀有且购买所需关系越高。
rarity稀有度,数字越小越罕见,大于 1 时被视为 1,小于 0 时被视为 0
base value武器的成本价
range对于非导弹武器而言是武器的射程,对于导弹武器而言是 AI 理解中的武器射程
damage/second每秒伤害,仅对光束武器有效
damage/shot单发伤害,仅对非光束武器有效
emp对于非光束武器而言是单发 EMP,对于光束武器而言是每秒 EMP
impact对于非光束武器而言几乎无作用,对于光束武器而言是可以偏转、固定目标的偏转力
turn rate武器转速,单位是 圈/分钟
OPs装配点数需求
ammo弹药限制,留空则为无限弹药
ammo/sec每秒弹药恢复量,留空则为无法恢复弹药
reload size每秒弹药恢复量不为空时,每波次恢复多少枚弹药
type伤害类型,可以是KINETIC、ENERGY、HIGH_EXPLOSIVE或FRAGMENTATION,分别是动能、能量、高爆和破片。还可以是OTHER但极度不建议使用
energy/shot每发产生幅能,仅对非光束武器有效
energy/second每秒产生幅能,仅对光束武器有效
chargeup对于非光束武器而言是开火前摇,对于光束武器而言是光束从不存在渐入为存在的时间
chargedown对于非光束武器而言是开火后摇,对于光束武器而言是光束从存在渐出为不存在的时间
burst size对于非光束武器而言是每波发射弹数,对于光束光束而言,填写了此数据后武器变为爆发光束,是爆发光束的爆发时长
burst delay对于非光束武器而言是波内每发射弹的间隔时间,对于光束光束而言,填写了此数据后武器变为爆发光束,是爆发光束的冷却时长
min spread最小弹道散布,单位是 度,仅对非光束武器有效
max spread最大弹道散布,单位是 度,仅对非光束武器有效
spread/shot每发射一次所导致的弹道散布增加量,单位是 度,仅对非光束武器有效
spread decay/sec武器停火时弹道散布的衰减,单位是 度/秒,仅对非光束武器有效
beam speed光束飞行速率,仅对光束武器有效
proj speed弹体飞行速率或导弹最大速率,仅对非光束武器有效
launch speed导弹初速,仅对导弹武器有效
flight time导弹飞行时间,仅对导弹武器有效。导弹武器的真实射程是 导弹速度 * 导弹飞行时间,而不是前文的range
proj hitpoints弹体血量,仅对非光束武器有效,且仅对导弹武器有作用
autofireAccBonus自动开火的精确度补正,非常建议为空
extraArcForAI开火判断 AI 的角度补正,非常建议为空
hints进阶内容,不可随意编纂,后文详细解释
tags进阶内容,可随意编纂,后文详细解释
groupTag如果本项不为空,则本项相同的武器将优先编入同一组,且优先在本组不编入其它武器
tech/manufacturer科技类型,原版包括诸如 核心纪元、主宰纪元 等,可随意填写
primaryRoleStr武器类型,文字描述
speedStr导弹飞行速度,文字描述,非导弹武器建议留空
trackingStr导弹跟踪能力,文字描述,非导弹武器建议留空
turnRateStr武器转速速度,文字描述,无特别要求建议留空
accuracyStr武器精准度,文字描述,无特别要求建议留空
customPrimary首要说明文本,在相对上方的框内
customPrimaryHL首要说明文本的高亮部分,多个高亮文本用`
customAncillary次要说明文本,在相对下方的框内
customAncillaryHL次要说明文本的高亮部分,多个高亮文本用`
noDPSInTooltip设为 true 时,武器数据界面不会显示 DPS,仅适合不可恢复弹药且弹药量较少的武器

武器测试

使用控制台的Addweapon [您的武器 ID]来获取它,或在各类战役里使用它。

为新船安装新的武器。

新弹体与新导弹

在拥有了新武器之后,您可能会对某些射弹武器依然使用原版弹体这一事实并不满意。套用原版弹体虽然简单,但这意味着它的大小、颜色等并不够自定义。

制作非导弹弹体

能复制粘贴就绝不硬写。

编者认为都林自动炮的弹体颜色应当设定为红色,但其它方面不会和轻型突击炮的弹体相比有太多差距。将light_ag_shot.proj复制到data/weapons/proj这个弹体目录下,然后将文件名改为GearIn_durin_shot.proj,开始修改:

{
	"id":"lightag_shot",
	"specClass":"projectile",
	"spawnType":"BALLISTIC",
	"collisionClass":"PROJECTILE_FF",
	"collisionClassByFighter":"PROJECTILE_FIGHTER",
	"length":30.0,
	"hitGlowRadius":40,
	"width":5.0,
	"fadeTime":0.2,
	#"fringeColor":[255,125,125,255],
	#"coreColor":[255,200,200,150],
	"fringeColor":[255,200,70,235],
	"coreColor":[255,200,200,180],	
	"textureScrollSpeed":64.0,
	"pixelsPerTexel":5.0,
	"bulletSprite":"graphics/missiles/shell_large_yellow.png"
}

实用非导弹弹体文件速查表

英文实际意义
id弹体的 ID
specClass弹体类型,projectile是正常射弹,missile是导弹。导弹、鱼雷、惯性炸弹都算missile
spawnType生成类型,对于projectile而言仅允许BALLISTIC和BALLISTIC_AS_BEAM,其它类型会产生各类意料之外的 BUG
onHitEffect弹体的命中特效代码路径,不填默认为无特效
onFireEffect弹体的开火特效代码路径,不填默认为无特效
collisionClass弹体的碰撞类型,除去某些不合理的设置之外,BALLISTIC类型的弹体可以是PROJECTILE_FF或PROJECTILE_NO_FF,前者有友伤,后者没有。BALLISTIC_AS_BEAM类型的弹体可以是RAY或RAY_FIGHTER,但都有友伤。全部碰撞类型会在后文列出
collisionClassByFighter若这个弹体是由战机发射的,则它使用这个碰撞类型。一般来说根据类型而分别使用PROJECTILE_FIGHTER或RAY_FIGHTER来与舰船发射的弹体做区分
length弹体长度
width弹体宽度
hitGlowRadius弹体命中时的光效范围
glowRadius弹体飞行时的光效范围,在本例中不填,默认为 0
coreColor弹体核心部分的颜色
fringeColor弹体边缘部分的颜色
glowColor弹体光效颜色
bulletSprite弹体贴图位置
textureType弹体材质,若不填则下方两个数据不被读取
textureScrollSpeed弹体材质滚动速率
pixelsPerTexel弹体材质拉伸程度
behaviorSpec弹体的行为设置,一般来说用来制作高射炮型溅射

据此修改它的弹体 ID 和颜色:

{
	"id":"GearIn_durin_shot",
	"specClass":"projectile",
	"spawnType":"BALLISTIC",
	"collisionClass":"PROJECTILE_FF",
	"collisionClassByFighter":"PROJECTILE_FIGHTER",
	"length":30.0,
	"hitGlowRadius":40,
	"width":5.0,
	"fadeTime":0.2,
	#"fringeColor":[255,125,125,255],
	#"coreColor":[255,200,200,150],
	"fringeColor":[255,70,70,235],
	"coreColor":[255,200,200,180],	
	"textureScrollSpeed":64.0,
	"pixelsPerTexel":5.0,
	"bulletSprite":"graphics/missiles/shell_large_yellow.png"
}

然后在此前的GearIn_durin.wpn里调用它:

{
	"id":"GearIn_durin",  # this id must match what's in the spreadsheet
	"specClass":"projectile",
	"type":"BALLISTIC",
	"size":"SMALL",
	"displayArcRadius":400,
	"turretSprite":"graphics/weapons/GearIn_durin_turret_base.png",
	"turretGunSprite":"graphics/weapons/GearIn_durin_turret_recoil.png",
	"hardpointSprite":"graphics/weapons/GearIn_durin_hardpoint_base.png",
	"hardpointGunSprite":"graphics/weapons/GearIn_durin_hardpoint_recoil.png",	
	"visualRecoil":5.0,  # the gun sprites are only used if this is non-0
	"renderHints":[RENDER_BARREL_BELOW],
	"turretOffsets":[15, 3, 15, -3],
	"turretAngleOffsets":[0, 0],
	"hardpointOffsets":[8, 3, 8, -3],
	"hardpointAngleOffsets":[0, 0],
	"barrelMode":"ALTERNATING", # or LINKED.  whether barrels fire at the same time or alternate.
	"animationType":"MUZZLE_FLASH",  # NONE, GLOW, MUZZLE_FLASH, SMOKE
	"muzzleFlashSpec":{"length":30.0,   # only used if animationType = MUZZLE_FLASH
					   "spread":16.0,
					   "particleSizeMin":8.0,
					   "particleSizeRange":10.0,
					   "particleDuration":0.35,
					   "particleCount":12,
					  "particleColor":[255,155,105,185]},
	"projectileSpecId":"GearIn_durin_shot",  # projectile that will be fired
	"fireSoundTwo":"light_assault_gun_fire",	
}

其它简单调整也是如此。

制作导弹弹体

能复制粘贴就绝不硬写。

务必为新导弹武器制作新导弹弹体

如果一个导弹武器直接调用原版弹体,那么对它 CSV 设置的flight time、proj hitpoints可能被此原版所属的武器数据覆盖。

为避免意料之外的 BUG,请务必为新导弹武器制作新导弹弹体。

编者认为德瓦林 发射架的弹体过小,且颜色并不合适,但其它方面不会和暴风 MLRS的弹体相比有太多差距。将squall_rocket.proj复制到data/weapons/proj这个弹体目录下,然后将文件名改为GearIn_dwalin_rocket.proj,开始修改:

{
	"id":"squall_rocket",
	"specClass":"missile",
	#"missileType":"ROCKET",
	"missileType":"MISSILE_TWO_STAGE_SECOND_UNGUIDED",
	"sprite":"graphics/missiles/missile_squall.png",
	"size":[6,20],	
	"center":[3,10],
	"collisionRadius":15,
	"collisionClass":"MISSILE_NO_FF",
	"explosionColor":[200,200,255,235],  # purely visual, will get a white additively blended core on top of this color
	"explosionRadius":85, # purely visual
	"flameoutTime":1, # total time from flameout to full fadeout
	"noEngineGlowTime":0.5, # time spent without the engine glow being rendered
	"fadeTime":0.5, # fadeout duration	
	"engineSpec":{"turnAcc":360,
				  "turnRate":180,
				  "acc":1000,
				  "dec":0},
	"engineSlots":[{"id":"ES1",
					"loc":[-9, 0],
				    "style":"CUSTOM",
					"styleSpec":{
						"mode":"QUAD_STRIP", # PARTICLES or QUAD_STRIP, determines which params are used
						"engineColor":[200,200,255,255],
						"contrailDuration":.5,
						"contrailWidthMult":2,
						"contrailWidthAddedFractionAtEnd":2,  # can be negative. makes trail spread out/narrow at the end
						"contrailMinSeg":5, # min segment length, in pixels
						"contrailMaxSpeedMult":.0f,
						"contrailAngularVelocityMult":0.5f,
						"contrailSpawnDistMult":0f, # how far away from engine it starts
						"contrailColor":[75,75,75,150],
						"type":"SMOKE" # GLOW or SMOKE; additive or regular blend mode
					},
				    "width":8.0,
				    "length":50.0,
				    "angle":180.0}]
}

实用非导弹弹体文件速查表

不在本表上的数据均为上文提及过且无歧义的数据。

英文实际意义
missileType导弹类型,常见的导弹类型有MISSILE、ROCKET、BOMB、HEATSEEKER、MIRV、PHASE_CHARGE、PHASE_MINE、MISSILE_TWO_STAGE_SECOND_UNGUIDED和MOTE。此外存在一些罕见的类型,比如耀斑。需要时自行寻找并复制
sprite导弹贴图。注意,非导弹的bulletSprite在此处不起效
size导弹的大小,前一个数字为宽,后一个为高。如果和贴图大小不同则会进行拉伸
center导弹的中心位置,影响碰撞判定,数值一般各设置为导弹大小的一半
collisionRadius导弹的碰撞圈大小,与舰船的黄圈性质相同
collisionClass导弹的碰撞类型,除去某些不合理的设置之外,可以是MISSILE_FF或MISSILE_NO_FF,前者有友伤,后者没有。
explosionColor导弹爆炸产生的光效颜色
explosionRadius导弹爆炸产生的光效大小,不影响伤害溅射范围
explosionSpec导弹爆炸的溅射伤害设置。不填默认为无伤害溅射
armingTime导弹的引信时间,在引信时间到达之前不会爆炸。不填默认为 0
flameoutTime导弹超出距离后需要的熄火时间。导弹在熄火过程中可以造成伤害
noEngineGlowTime导弹熄火后自爆需要的时间。导弹熄火后不造成伤害
fadeTime导弹自爆光效消失的时间。
useHitGlowWhenDestroyed如果设为 true,则导弹自爆或被拦截时不会产生导弹型爆炸特效,而是产生非导弹型命中光效。不填默认为否
noDebrisWhenDestroyed如果设为 true,则导弹自爆或被拦截时不会产生残骸碎片。不填默认为否
useHitGlowWhenDealingDamage如果设为 true,则爆炸时不会产生导弹型爆炸特效,而是产生非导弹型命中光效。不填默认为否
noCollisionWhileFading如果设为 true,则引擎熄火后不再有撞击判定。不填默认为否
renderTargetIndicator如果设为 false,则导弹被敌方发射时下方不会出现红色棱形指示标。不填默认为是
engineSpec导弹的机动性设置,在本例顺序分别是转向加速度、最大转向速度、加速度和减速度
engineSlots导弹的引擎设置,一个导弹可以有多个引擎,它们的id必须不同。引擎的styleSpec属性与后文介绍的引擎风格相似。

据此修改它的弹体 ID、贴图和爆炸颜色等属性:

{
	"id":"GearIn_dwalin_rocket",
	"specClass":"missile",
	#"missileType":"ROCKET",
	"missileType":"MISSILE_TWO_STAGE_SECOND_UNGUIDED",
	"sprite":"graphics/missiles/GearIn_dwalin_rocket.png",
	"size":[6,20],	
	"center":[3,10],
	"collisionRadius":15,
	"collisionClass":"MISSILE_NO_FF",
	"explosionColor":[255,200,200,235],  # purely visual, will get a white additively blended core on top of this color
	"explosionRadius":85, # purely visual
	"flameoutTime":1, # total time from flameout to full fadeout
	"noEngineGlowTime":0.5, # time spent without the engine glow being rendered
	"fadeTime":0.5, # fadeout duration	
	"engineSpec":{"turnAcc":360,
				  "turnRate":180,
				  "acc":1000,
				  "dec":0},
	"engineSlots":[{"id":"ES1",
					"loc":[-9, 0],
				    "style":"CUSTOM",
					"styleSpec":{
						"mode":"QUAD_STRIP", # PARTICLES or QUAD_STRIP, determines which params are used
						"engineColor":[255,200,200,255],
						"contrailDuration":.5,
						"contrailWidthMult":2,
						"contrailWidthAddedFractionAtEnd":2,  # can be negative. makes trail spread out/narrow at the end
						"contrailMinSeg":5, # min segment length, in pixels
						"contrailMaxSpeedMult":.0f,
						"contrailAngularVelocityMult":0.5f,
						"contrailSpawnDistMult":0f, # how far away from engine it starts
						"contrailColor":[75,75,75,150],
						"type":"SMOKE" # GLOW or SMOKE; additive or regular blend mode
					},
				    "width":8.0,
				    "length":50.0,
				    "angle":180.0}]
}

临时赶工做一份导弹弹体图片:

然后把它放入graphics/missiles目录,这个目录约定俗成用来存放各类弹体。

然后在此前的GearIn_dwalin.wpn里调用它:

{
	"id":"GearIn_dwalin",
	"specClass":"projectile",
	"type":"MISSILE",
	"size":"LARGE",
	"turretSprite":"graphics/weapons/GearIn_dwalin_turret_base.png",

	"hardpointSprite":"graphics/weapons/GearIn_dwalin_hardpoint_base.png",

	"hardpointOffsets":[26, 7, 26, -1],
	"turretOffsets":[14, 6, 14, -2],
	#"hardpointAngleOffsets":[0, 0],
	#"turretAngleOffsets":[0, 0],
	"hardpointAngleOffsets":[0, 0],
	"turretAngleOffsets":[0, 0],		
	"barrelMode":"ALTERNATING",
	"animationType":"SMOKE",
	"renderHints":[RENDER_LOADED_MISSILES],
	"interruptibleBurst":false,
	"smokeSpec":{"particleSizeMin":10.0,
							 "particleSizeRange":14.0,
							 "cloudParticleCount":3,
							 "cloudDuration":1.5,
							 "cloudRadius":12.0, # 原文件在此处错打成了 ; 号,但似乎依然有效
							 "blowbackParticleCount":3,
							 "blowbackDuration":0.45,
							 "blowbackLength":20.0,
							 "blowbackSpread":6.0,
							 "particleColor":[190,180,160,95]},
	"projectileSpecId":"GearIn_dwalin_rocket",
	"fireSoundTwo":"squall_fire",
}

命中特效?开火特效?每帧插件?

弹体的命中特效将不可避免地涉及基础代码。由于命中特效对于一个基本弹体而言不是必要的,因此在后文进阶部分再涉及。

实用武器 Hints 速查表

不在本表上的数据均为与武器本身性能无关的 Hints。

英文实际意义
ANTI_FTR让 AI 认为这种武器主要用于对抗战机
AUTOZOOM使视点自动与目标对齐,极度不建议使用
BOMB仅对导弹武器有效,让 AI 尽可能频繁且无脑地使用此武器
CONSERVE_1仅对弹药有限的武器有效,让 AI 倾向于至少保留 1 轮发射量以供不时之需
CONSERVE_2仅对弹药有限的武器有效,让 AI 倾向于至少保留 2 轮发射量以供不时之需
CONSERVE_3仅对弹药有限的武器有效,让 AI 倾向于至少保留 3 轮发射量以供不时之需
CONSERVE_4仅对弹药有限的武器有效,让 AI 倾向于至少保留 4 轮发射量以供不时之需
CONSERVE_5仅对弹药有限的武器有效,让 AI 倾向于至少保留 5 轮发射量以供不时之需
CONSERVE_FOR_ANTI_ARMOR让 AI 认为这种武器主要用于对抗装甲,效果较为极端
DIRECT_AIM仅对未自定义过导弹 AI 的导弹武器有效,让导弹的 AI 在靠近目标时不乱晃
DO_NOT_AIM让 AI 认为这种武器是强全向追踪的,无视射角开火
GUIDED_POOR让 AI 认为这种武器带有轻微制导能力,比射角略大也可开火
DO_NOT_CONSERVE仅对弹药有限的武器有效,让 AI 不保留任何弹药完全倾泻
EXTRA_RANGE_ON_FIGHTER让 AI 认为这种武器被安装在战机上时有 500 额外射程(仅影响 AI,不代表射程真的增加)
FIRE_WHEN_INEFFICIENT让 AI 认为这种武器可以不分场合地使用,例如离子束
HEATSEEKER仅对未自定义过导弹 AI 的导弹武器有效,让导弹的 AI 追踪目标舰船的正后方(而不是引擎)
MISSILE_SPREAD仅对未自定义过导弹 AI 的导弹武器有效,让导弹的 AI 在即将命中目标时倾向于分散
NO_TURN_RATE_BOOST_WHEN_IDLE武器在不开火时转速大幅提高,带有此 Hint 的武器在不开火时不会提高转速
PD武器将自动且优先瞄准导弹,且被游戏机制理解为点防御武器
PD_ALSO必须与PD共同使用,将瞄准舰船的权重提高到瞄准导弹之上
PD_ONLY必须与PD共同使用,除非手动操作否则不瞄准舰船。但当与ANTI_FTR共同使用时,则依然会自动瞄准战机
SYSTEM让这个武器不出现在数据库中,且无法在战后被打捞
SHOW_IN_CODEX必须与SYSTEM共同使用,让这个武器出现在数据库中
STRIKE让 AI 认为这种武器是一种极长冷却、大伤害的武器,应该被谨慎考虑使用,且不建议对护卫舰使用。面对它的舰船也会认为这种武器有极大威胁
DANGERUS与STRIKE互斥,相当于STRIKE的仅后一句
USE_VS_FRIGATES必须与STRIKE共同使用,取消不建议对护卫舰使用

实用武器 tags 速查表

不在本表上的数据均为与武器本身性能无关的 tags(如 rare_bp),关于这些 tags 详见后文。

英文实际意义
kinetic*当进行自动装配时,优先使用 * 所处的位置较高的武器。例如 kinetic2 总是会替代 kinetic1
he*当进行自动装配时,优先使用 * 所处的位置较高的武器。例如 he2 总是会替代 he1
energy*当进行自动装配时,优先使用 * 所处的位置较高的武器。例如 energy2 总是会替代 energy1
以上 3 条只应当包含 1 条
missile*与上面三个类似,常规型导弹
strike*与上面四个类似,打击型导弹
rocket*与上面五个类似,无制导火箭
utility*与上面六个类似,奇奇怪怪的导弹武器
以上 4 条只应当包含 1 条,且只应当给导弹武器使用
pd*与上面七个类似,点防御武器
beam*与上面八个类似,光束武器
SR当一艘舰船使用了带有 SR 的武器,那么自动装配会倾向于给它装满带有 SR 的武器
LR当一艘舰船使用了带有 LR 的武器,那么自动装配会倾向于给它装满带有 LR 的武器
以上 2 条互斥
Edit this page
Last Updated:
Contributors: 1847905557
Prev
小节 航母、战机与相位舰
Next
小节 战术系统