红警DIY论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 379|回复: 6

【玩♂具】用两种原理实现ra3超级鱼雷

[复制链接]
发表于 2019-3-26 22:35:47 | 显示全部楼层 |阅读模式
本帖最后由 紫色放逐 于 2019-3-30 23:28 编辑

在一次严重的酗酒之后,我突然来了灵感,笑
效果图:阿库拉-飞艇炸弹法,台风-子机导弹法
平台Ares2.0
代码示范部分只列出重点,常规属性略,自行复制相关单位改

一、飞艇炸弹法,原理:空军(AircraftTypes)发射飞艇炸弹时,炸弹会向前一直平飞并碰撞遇到的单位爆炸。那么我们的做法自然是由潜艇发射子机导弹,子机导弹发射飞艇炸弹(子机导弹怎么发射武器、有何特性 我以前的帖子讲过 不再多说)
[某SUB]

Primary=STLauncher;随便复制一个子机发射器
Spawns=STorp;用于发射飞艇炸弹的子机导弹
SpawnsNumber=1
SpawnRegenRate=120
SpawnReloadRate=0

…略

[STLauncher]
Damage=100
ROF=120
Range=10
Projectile=Torpedo
Speed=25 ;18
Report=SubAttack
Warhead=APSplash
DecloakToFire=no ;发射不显隐
Spawner=yes ;子机发射器标志,本武器不会真正的发射


[STorp]
Fighter=yes ;不加也能发射炸弹抛体,保险起见还是加上
Primary=STBomb;实际发射的鱼雷(飞艇炸弹)

Missile.Custom=yes ;ares自定义导弹的标志,老有新手做子机导弹忘掉这句的,笑
Missile.PauseFrames=0 ;抬升前的延迟 改为0
Missile.TiltFrames=0 ;导弹抬升角度花费的时间 改为0
Missile.PitchInitial=0.5
Missile.PitchFinal=0.5 ;发射时的角度,保证发射成功
Missile.TurnRate=10 ;转向速度,保证发射成功
Missile.RaiseRate=1
Missile.Altitude=800 ;导弹飞行高度,保证发射成功
Missile.Acceleration=0.1 ;加速度极小,保证导弹离开潜艇前就发射鱼雷。
Missile.Damage=0
Missile.EliteDamage=0
Missile.Warhead=HE
Missile.EliteWarhead=HE
Missile.BodyLength=32
Missile.LazyCurve=no
Missile.TakeOffAnim=Inviso;点火动画,设为无
Missile.TrailerAnim=Inviso;尾烟动画,设为无

Image=NOVXL;导弹图像,自己画一个单点vxl或者空白vxl来隐藏,设为无会报错

AuxSound1=dummy;导弹发射的音效,设为无

…略

[STBomb]
Damage=200
Burst=2
ROF=50
Range=255;保证鱼雷立刻发射
Projectile=STBombP
Speed=20
Warhead=V3WH;弹头要有伤害范围 这里直接写了个v3的
Report=SubAttack;鱼雷发射音效
CellRangefinding=yes
OmniFire=yes

[STBombP]
Acceleration=1
Image=SUBT ;外观设为原版鱼雷
Arm=10
Shadow=no
Acceleration=1
Vertical=yes;垂直抛体的标志,飞机类发射会向前直飞、低高度下会发生撞击
DetonationAltitude=20000
Level=yes;鱼雷的标志,实现撞海岸的关键,没想到吧 这句居然对飞艇炸弹有效
SubjectToBuildings=yes;会撞击实体建筑,对船厂用
SolidLevel=2;实体等级,用于攻击判定


由于平飞炸弹对建筑的撞击判定点有些奇怪,必须打到建筑左上角才能发生碰撞,因此要使用ares的实体建筑逻辑
[NAYARD]
SolidHeight=1;实体高度,阻挡超级鱼雷用
SolidLevel=1;实体等级,用于攻击判定

…略

所有船厂都要加

全局代码
[CombatDamage]
AlliedSolidTransparency=yes;使用实体逻辑的抛射体对友军建筑也有效,否则指定攻击己方船厂时无法正常发射

Art部分:
[NOVXL];自己画个单点vxl 用于各种空军无形单位
Voxel=yes
PrimaryFireFLH=0,51,0;aircraft类单位burst间隔极小,配合武器上的burst能做出并排双发效果


二、子机导弹法,原理:
平飞:当子机导弹PitchFinal为0,且导弹Altitude高于11,导弹会平行于发射者和目标的连线持续飞行而不会命中。(mk的激光扫射用过这种原理,他说是灌了两瓶伏特加后突然试出来的)
撞击:导弹携带一个AE动画,AE动画刷武器,该武器为附近的目标施加AE2,AE2动画带伤害杀死导弹本体
撞岸:使用Ares的海陆单位变形逻辑,导弹上岸后变为另一单位用AE动画挂伤害自杀

[某SUB2]
Primary=STLauncher;随便复制一个子机发射器
Spawns=STorp2;鱼雷
SpawnsNumber=1
SpawnRegenRate=120
SpawnReloadRate=0

…略

[STLauncher]
Damage=100
ROF=120
Range=10
Projectile=Torpedo
Speed=25 ;18
Report=SubAttack
Warhead=APSplash
DecloakToFire=no ;发射不显隐
Spawner=yes ;子机发射器标志,本武器不会真正的发射




[STorp2]

Missile.Custom=yes
Missile.PauseFrames=0 ;抬升前的延迟 改为0
Missile.TiltFrames=0 ;导弹抬升角度花费的时间 改为0
Missile.PitchInitial=0
Missile.PitchFinal=0;使导弹持续平飞
Missile.TurnRate=10 ;转向速度,保证发射成功
Missile.RaiseRate=1
Missile.Altitude=800 ;导弹飞行高度,和PitchFinal配合使导弹持续平飞
Missile.Acceleration=3
Missile.Damage=200
Missile.EliteDamage=250
Missile.Warhead=V3WH
Missile.EliteWarhead=V3WH
Missile.BodyLength=0;设为0,保证爆炸动画在导弹位置播放
Missile.LazyCurve=no
Missile.TakeOffAnim=Inviso;点火动画,设为无
Missile.TrailerAnim=Inviso;尾烟动画,设为无

Armor=special_ST;自定义护甲

Image=SUBT ;外观设定为鱼雷

AttachEffect.Animation=STFuse;用于传播触发撞击用的动画
AttachEffect.Duration=30
AttachEffect.PenetratesIronCurtain=yes;能对铁幕单位施加

Convert.Land=STorp2C;上岸变形,用于撞岸

OpenTopped=yes
Passengers=1
SizeLimit=1
InitialPayload.Types=STFuseI;初始乘客逻辑组,用于撞击船厂,后说
InitialPayload.Nums=1
NoManualUnload=yes
NoManualEnter=yes
Survivor.RookiePassengerChance=0
Survivor.VeteranPassengerChance=0
Survivor.ElitePassengerChance=0



AuxSound1=SubAttack;导弹发射的音效,改为鱼雷发射音效
略…

[STFuseW];动画STFuse携带的武器,需要在ares武器注册列表注册
Damage=1
Burst=1
ROF=1
Range=0.5
Projectile=InvisibleHigh
Speed=20
Warhead=STFuseWH
Report=dummy
CellRangefinding=yes
OmniFire=yes

[STFuseWH]
CellSpread=0.5
PercentAtMax=1
Verses=3%,3%,3%,3%,3%,3%,3%,3%,3%,3%,3%
Versus.special_ST=0%
AttachEffect.Animation=STorpDie;用于杀死导弹的动画
AttachEffect.Duration=75;写长一点,否则撞击不稳定
AttachEffect.PenetratesIronCurtain=yes能对铁幕单位施加
Sonar.Duration=60;由于隐形单位(潜艇)会隐藏AE动画,所以需要用声纳逻辑强制显隐

;AttachEffect.ForceDecloak=yes;不要用这句显隐,效果不稳定

[STDieWH]
CellSpread=0.5
PercentAtMax=1
Verses=0%,0%,0%,0%,0%,0%,0%,0%,0%,0%,0%
Versus.special_ST=100%
DamageAirThreshold=-1;保证能伤害到空中单位


[STorp2C];上岸后变为此单位
Crashable=no;爆炸而不坠毁
Insignificant=yes;死亡不报警

AttachEffect.Animation=STorpDie;用于自杀的动画
AttachEffect.Duration=15

Image=NOVXL;单点vxl隐藏图像
Strength=1;保证立刻去世
Armor=special_ST;自定义护甲

;MaxDebris=2;死亡碎片移除
AuxSound1=dummy;发射音效设为无
略…

和飞艇炸弹型类似,建筑的AE动画会在左上角播放而不是中心
解决方法:在导弹中装一初始乘客,乘客自动攻击船厂,开火动画挂伤害杀死导弹

[STFuseI];导弹内装的乘客,建议直接复制火箭飞行兵
CloseRange=yes;近战寻敌,提高稳定性
AttackFriendlies=yes;自动攻击友军
NavalTargeting=5
LandTargeting=1

Image=INVISO;防止开火序列干扰
Primary=STFuseW2
[STFuseW2]
Damage=1
Burst=1
ROF=1
Range=1;推荐值
Projectile=InvisibleHigh
Speed=20
Warhead=STFuse2WH
Report=dummy
CellRangefinding=yes
OmniFire=yes
Anim=STorpDie;用于杀死导弹

[STFuse2WH]
CellSpread=0.5
PercentAtMax=1
Verses=0%,0%,0%,0%,0%,0%,3%,3%,3%,0%,0%;只打建筑


[NAYARD]
Primary=VirtualThreat

ThreatPosed=1;单位自动攻击建筑,需要该建筑有武器且威胁值大于0
略…
[VirtualThreat]
Damage=1
Range=0;射程为0,造建筑时不会出现范围指示圈
NeverUse=yes;武器不会被真正的使用
Projectile=InvisibleAll
Warhead=SA
Speed=100

所有的船厂都要加

ares新增注册表
[ArmorTypes]
special_ST=0%
[WeaponTypes]
1=STFuseW

Art部分:
[STFuse]
Rate=900
Image=INVISO
Weapon=STFuseW
Damage=1

[STorpDie]
Rate=900
Image=INVISO
Damage=100
Warhead=STDieWH


飞艇炸弹法的优点:
1简单稳定
2易实现并排双发
缺点:
1鱼雷速度无法调节(飞艇炸弹平飞时,修改武器上的速度和抛体上的加速度都无效)
2打击建筑需要对船厂和实体逻辑全局判定做修改,有一定局限性


子机导弹法的优点:
1可以调节飞行速度
2可以自由设定撞击范围
3可以撞礁石(原版鱼雷都做不到哦)

缺点:
1速度不宜过快 否则不稳定
2需要给船厂加武器,有一定局限性
3不易实现并排双发,子机发射器上写个burst=2就能左右开火,但是两导弹之间有一定发射延迟

两种方法共同缺陷,占用子机导弹位,不支持小角度转向

提示1:最后可以用ares部署变形逻辑切掉子机发射器,实现常规鱼雷和超级鱼雷的切换。
提示2:子机导弹法中 潜艇的的开火坐标F值最好大于128 否则可能炸到自己
提示3:新增的单位,步兵,导弹,弹头,动画记得注册。


鸣谢:图中教具阿库拉潜艇的vxl来自Dennis大佬

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2019-3-27 09:00:35 | 显示全部楼层
借楼问一下能否实现贴地子机上下坡
 楼主| 发表于 2019-3-27 14:12:22 | 显示全部楼层
膜术师协会 发表于 2019-3-27 09:00
借楼问一下能否实现贴地子机上下坡

不清楚 没研究过呢
发表于 2019-3-27 19:22:54 这篇帖子是使用手机发表的! | 显示全部楼层
如果用飞艇炸弹法不加level的话模拟狙击枪应该也不错……
 楼主| 发表于 2019-3-28 12:38:39 | 显示全部楼层
神盾滑稽舰 发表于 2019-3-27 19:22
如果用飞艇炸弹法不加level的话模拟狙击枪应该也不错……

可以配合ProjectileRange限定一下射程
发表于 2019-3-29 03:33:16 | 显示全部楼层
把子机的行动模式改成战车,就可以上下坡了
发表于 2019-3-31 19:33:55 | 显示全部楼层
紫色放逐 发表于 2019-3-28 12:38
可以配合ProjectileRange限定一下射程

八百里开外一枪干掉鬼子的机枪手
就像某农药里的后羿的三技能(滑稽)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|Archiver|手机版|管理员邮箱|红警DIY官方论坛

GMT+8, 2019-4-22 10:46 , Processed in 0.133746 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表