炮塔设置
在铁锈战争中,炮塔是单位攻击系统的核心组件。本章节将详细介绍如何配置炮塔,包括位置、旋转、攻击参数等。
炮塔基本配置
炮塔通过[turret_#]部分来定义,其中#是炮塔的编号:
[turret_#] 炮塔设置
[turret_1]
x:0
y:0
projectile:main_bullet
turnSpeed:2
size:10
barrelX:0
barrelY:15
炮塔基本属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| x, y | 炮塔在单位上的位置 | x:0, y:0 |
| projectile | 使用的抛射体 | projectile:main_bullet |
| turnSpeed | 炮塔旋转速度 | turnSpeed:2 |
| size | 炮塔大小 | size:10 |
| barrelX, barrelY | 炮管出口位置 | barrelX:0, barrelY:15 |
炮塔位置和链接
可以设置炮塔的位置和链接关系:
位置和链接属性
[turret_1]
x:0
y:0
height:5
copyFrom:2
attachedTo:3
slave:true
位置和链接属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| height | 炮塔高度 | height:5 |
| copyFrom | 复制指定炮塔的所有值 | copyFrom:2 |
| attachedTo | 链接到另一个炮塔 | attachedTo:3 |
| slave | 锁定此炮塔的方向 | slave:true |
炮塔攻击设置
可以配置炮塔的攻击参数:
攻击属性
[turret_1]
canShoot:true
canAttackFlyingUnits:true
canAttackLandUnits:true
canAttackUnderwaterUnits:false
canAttackNotTouchingWaterUnits:true
攻击属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| canShoot | 是否可以开火 | canShoot:true |
| canAttackFlyingUnits | 是否可以攻击空中单位 | canAttackFlyingUnits:true |
| canAttackLandUnits | 是否可以攻击地面单位 | canAttackLandUnits:true |
| canAttackUnderwaterUnits | 是否可以攻击水下单位 | canAttackUnderwaterUnits:false |
| canAttackNotTouchingWaterUnits | 是否可以攻击非接触水单位 | canAttackNotTouchingWaterUnits:true |
炮塔目标限制
可以设置炮塔只能攻击特定标签的单位:
标签限制
[turret_1]
canOnlyAttackUnitsWithTags:infantry,vehicle
canOnlyAttackUnitsWithoutTags:building,structure
目标限制属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| canOnlyAttackUnitsWithTags | 只能攻击具有指定标签的单位 | canOnlyAttackUnitsWithTags:infantry,vehicle |
| canOnlyAttackUnitsWithoutTags | 不能攻击具有指定标签的单位 | canOnlyAttackUnitsWithoutTags:building,structure |
炮塔旋转控制
可以控制炮塔的旋转行为:
旋转控制属性
[turret_1]
idleDir:90
idleDirReversing:180
shouldResetTurret:false
idleSweepAngle:45
idleSweepDelay:120
旋转控制属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| idleDir | 闲置时朝向角 | idleDir:90 |
| idleDirReversing | 闲置时朝向角反转 | idleDirReversing:180 |
| shouldResetTurret | 为空闲自动归位 | shouldResetTurret:false |
| idleSweepAngle | 为空闲扫描朝向角 | idleSweepAngle:45 |
| idleSweepDelay | 为空闲扫描间隔 | idleSweepDelay:120 |
炮塔射击控制
可以控制炮塔的射击行为:
射击控制属性
[turret_1]
delay:60
warmup:10
warmupCallDownRate:0.6
warmupNoReset:true
warmupShootDelayTransfer:17
射击控制属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| delay | 开火间隔 | delay:60 |
| warmup | 预热 | warmup:10 |
| warmupCallDownRate | 预热下降速度 | warmupCallDownRate:0.6 |
| warmupNoReset | 预热不重置 | warmupNoReset:true |
| warmupShootDelayTransfer | 开火间隔过渡 | warmupShootDelayTransfer:17 |
炮塔能量和资源
可以设置炮塔的能量和资源消耗:
能量和资源属性
[turret_1]
energyUsage:1
resourceUsage:credits=5,energy=1
能量和资源属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| energyUsage | 能量需求 | energyUsage:1 |
| resourceUsage | 资源需求 | resourceUsage:credits=5,energy=1 |
炮塔范围限制
可以设置炮塔的攻击范围限制:
范围限制属性
[turret_1]
limitingRange:200
limitingAngle:60
limitingMinRange:30
canAttackMaxAngle:90
范围限制属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| limitingRange | 限制范围 | limitingRange:200 |
| limitingAngle | 限制朝向角 | limitingAngle:60 |
| limitingMinRange | 最小距离 | limitingMinRange:30 |
| canAttackMaxAngle | 可攻击最大朝向角 | canAttackMaxAngle:90 |
炮塔拦截系统
可以设置炮塔的拦截能力:
拦截属性
[turret_1]
interceptProjectiles_withTags:nuke
interceptProjectiles_andTargetingGroundUnderDistance:500
interceptProjectiles_andUnderDistance:1600
interceptProjectiles_andOverHeight:50
laserDefenceEnergyUse:1
拦截属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| interceptProjectiles_withTags | 拦截抛射体需有标签 | interceptProjectiles_withTags:nuke |
| interceptProjectiles_andTargetingGroundUnderDistance | 拦截抛射体检索范围 | interceptProjectiles_andTargetingGroundUnderDistance:500 |
| interceptProjectiles_andUnderDistance | 拦截抛射体攻击范围 | interceptProjectiles_andUnderDistance:1600 |
| interceptProjectiles_andOverHeight | 拦截抛射体高度 | interceptProjectiles_andOverHeight:50 |
| laserDefenceEnergyUse | 激光防御能量需求 | laserDefenceEnergyUse:1 |
炮塔图形和效果
可以设置炮塔的图形和效果:
图形和效果属性
[turret_1]
invisible:false
image:custom_turret.png
image_applyTeamColors:true
chargeEffectImage:charge_effect.png
shoot_sound:tank_firing
shoot_flame:smoke
shoot_light:#FF0000
图形和效果属性说明
| 属性 | 说明 | 示例 |
|---|---|---|
| invisible | 隐藏炮塔图像 | invisible:false |
| image | 图像 | image:custom_turret.png |
| image_applyTeamColors | 图像应用队伍颜色 | image_applyTeamColors:true |
| chargeEffectImage | 充能效果图像 | chargeEffectImage:charge_effect.png |
| shoot_sound | 开火音效 | shoot_sound:tank_firing |
| shoot_flame | 开火动画 | shoot_flame:smoke |
| shoot_light | 开火闪光 | shoot_light:#FF0000 |
完整炮塔示例
主炮塔
[turret_1]
x:0
y:0
projectile:main_shell
turnSpeed:1.5
size:20
barrelX:0
barrelY:25
barrelHeight:5
idleDir:0
limitingMinRange:40
delay:90
energyUsage:2
resourceUsage:credits=10,energy=2
shoot_sound:cannon_firing
shoot_flame:large
shoot_light:#FF4500
[projectile_1]
directDamage:150
life:120
speed:5
image:projectiles/large_shell.png
drawType:1
color:#FF4500
areaDamage:80
areaRadius:50
副炮塔
[turret_2]
x:15
y:-10
projectile:secondary_bullet
turnSpeed:3
size:10
barrelX:0
barrelY:10
attachedTo:1
slave:true
delay:30
shoot_sound:gun_fire
shoot_flame:small
shoot_light:#FFFF00
[projectile_2]
directDamage:30
life:60
speed:10
image:projectiles/bullet.png
drawType:1
color:#FFFF00
防空炮塔
[turret_3]
x:0
y:0
projectile:anti_air_missile
turnSpeed:5
size:10
barrelX:0
barrelY:15
canAttackFlyingUnits:true
canAttackLandUnits:false
delay:45
interceptProjectiles_withTags:nuke
interceptProjectiles_andUnderDistance:2000
laserDefenceEnergyUse:1
shoot_sound:missile_fire
shoot_flame:smoke
shoot_light:#00FF00
[projectile_3]
directDamage:50
life:120
speed:8
targetGround:false
autoTargetingOnDeadTarget:true
image:projectiles/missile.png
drawType:2
color:#00FF00
注意事项
- 合理设置炮塔位置,避免相互遮挡
- 平衡不同炮塔的攻击能力
- 为特殊炮塔设置适当的资源消耗
- 测试炮塔在不同情况下的表现
- 考虑炮塔的旋转速度和攻击间隔的匹配