红警DIY论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1371|回复: 0

几个自动放技能/部署的方法

[复制链接]
发表于 2023-4-27 12:51:48 | 显示全部楼层 |阅读模式
本帖最后由 jgaxmey 于 2023-4-27 16:33 编辑

自动部署或者放技能,斗蛐蛐时会方便一些,或者ai用时发挥一些作用。
先说自动部署。效果是一定数量的敌军进入到自身多少范围内,就会自动部署。本方法主要针对的是百合子这种一次性释放的,如果用于辐射工兵应该也可以,应该可以部署后隔一会再站起来。美国大兵这种就不是很适合了,需要根据本方法的思路进行一定的修改。效果图:

1.先添加个武器,用来部署。武器和弹头注册。代码直接用,没什么需要改的。
[autodw]
;自动部署武器
Damage=800
ROF=40
Range=5
Projectile=autodwp
Speed=100
Warhead=autodwdt


[autodwp]
SubjectToCliffs=no
SubjectToWalls=no
AA=no
AG=yes
SubjectToElevation=no
Inviso=yes


[autodwdt]
Wall=yes
Wood=yes
Verses=10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%
Conventional=no
InfDeath=4
AnimList=null
Sparky=no
IsToy=yes
ForceMission=Deploy


2.效果实现部分。注释“根据需要设置”的行是可以改动的地方,当然得知道是干什么的,否则别改。其他地方不懂就不要改了。单位代码加上AttachEffectTypes=autod
[autod]
Duration=20
HoldDuration=yes
ResetDurationOnReapply=no
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=no
AttachOnceInTechnoType=yes
; 模块:广播AE —— AE生效期间,间歇性向周围的单位附加AE
Broadcast.Types=autodgb
Broadcast.AttachChances=100%
Broadcast.Rate=15
Broadcast.RangeMin=0
Broadcast.RangeMax=20
Broadcast.FullAirspace=no
Broadcast.EliteTypes=autodgb
Broadcast.EliteAttachChances=100%
Broadcast.EliteRate=15
Broadcast.EliteRangeMin=0
Broadcast.EliteRangeMax=20
Broadcast.EliteFullAirspace=no
Broadcast.TriggeredTimes=-1 ;广播触发的次数,次数用完立刻强制结束效果
Broadcast.Powered=no ;建筑需要电力才可以使用
; Broadcast.AffectTypes=none ;根据需要设置
; Broadcast.NotAffectTypes=none ;根据需要设置
;上面两行如果进行设置可以实现只在遇到某些单位时自动部署,比如尤里x只在遇到狗时部署,以及遇到某些单位时不触发自动部署
Broadcast.AffectTechno=yes ;根据需要设置
Broadcast.AffectBuilding=yes ;根据需要设置
Broadcast.AffectInfantry=yes ;根据需要设置
Broadcast.AffectUnit=yes ;根据需要设置
Broadcast.AffectAircraft=yes ;根据需要设置
; 影响特定对象
Broadcast.AffectSelf=no ;是否向自己广播
Broadcast.AffectInAir=yes ;根据需要设置,如果部署不能对空,就改成no
Broadcast.AffectsOwner=no ;是否影响同阵营的
Broadcast.AffectsAllies=no ;是否影响友军
Broadcast.AffectsEnemies=yes ;是否影响敌人
Broadcast.AffectsCivilian=no ;是否影响中立目标
Broadcast.DeactiveWhenCivilian=yes ;启用时,当所属是平民时,或者被狙掉了驾驶员,不会激活效果
Stack.Watch=autodfk
Stack.Level=3 ;这里的数字决定了周围有多少敌军时才自动部署。
Stack.Condition=GE ;条件,EQ=等于,NE=不等于,GT=大于,LT=小于,GE=大于等于,LE=小于等于
Stack.AttachEffects=autod1
Stack.AttachChances=100%
Stack.TriggeredTimes=-1 ;触发多少次后移除自身
Stack.RemoveAll=yes ;触发后移除监视的所有AE

[autodgb]
Duration=30
HoldDuration=no
ResetDurationOnReapply=yes
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=no
AttachOnceInTechnoType=yes
; 模块:广播AE —— AE生效期间,间歇性向周围的单位附加AE
Broadcast.Types=autodfk
Broadcast.AttachChances=100%
Broadcast.Rate=15
Broadcast.RangeMin=0
Broadcast.RangeMax=6 ;这个数字要小于等于部署武器的范围。决定了周围敌人走到什么距离触发部署。
Broadcast.FullAirspace=no
Broadcast.EliteTypes=autodfk
Broadcast.EliteAttachChances=100%
Broadcast.EliteRate=15
Broadcast.EliteRangeMin=0
Broadcast.EliteRangeMax=6 ;和上面标红的作用一样,不过是控制升三级后的范围的。
Broadcast.EliteFullAirspace=no
Broadcast.TriggeredTimes=-1 ;广播触发的次数,次数用完立刻强制结束效果
Broadcast.Powered=no ;建筑需要电力才可以使用
Broadcast.AffectSelf=no ;是否向自己广播
Broadcast.AffectInAir=yes ;影响在空中的单位
Broadcast.AffectsOwner=no ;是否影响同阵营的
Broadcast.AffectsAllies=no ;是否影响友军
Broadcast.AffectsEnemies=yes ;是否影响敌人
Broadcast.AffectsCivilian=no ;是否影响中立目标
Broadcast.DeactiveWhenCivilian=yes ;启用时,当所属是平民时,或者被狙掉了驾驶员,不会激活效果

[autodfk]
Animation=null
Duration=30
HoldDuration=no
ResetDurationOnReapply=no
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=yes
MaxStack=100

[autod1]
Animation=null
Duration=40
HoldDuration=no
ResetDurationOnReapply=yes
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=no
AttachOnceInTechnoType=yes
DamageSelf.Damage=10
DamageSelf.ROF=160 ;自动部署的间隔,建议设成比部署释放武器的cd大一点点
DamageSelf.Warhead=autodwdt
DamageSelf.WarheadAnim=no
DamageSelf.Decloak=no
DamageSelf.IgnoreArmor=yes
DamageSelf.FirepowerMultiplier=no
DamageSelf.Peaceful=no
DamageSelf.TriggeredTimes=-1
DamageSelf.Powered=no
DamageSelf.DeactiveWhenCivilian=no
接下来说自动放技能。效果是被敌人攻击一定次数自动放技能,其实也可以改成和上面一样根据敌人数目和距离释放,但我的百合子的技能是护盾,如果根据距离来判断,没法正确判断各种射程的敌人开出护盾,比如设置了范围是6,遇见狙击手就不能自动开护盾了。
单位身上加上AttachEffectTypes=bhzauto

[bhzauto]
Duration=20
HoldDuration=yes
ResetDurationOnReapply=no
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=no
AttachOnceInTechnoType=yes
; 模块:广播AE —— AE生效期间,间歇性向周围的单位附加AE
Broadcast.Types=bhzxautogb,autodgb   ;这里要注意一下,单位身上不能同时有两个广播ae,但是一个广播ae可以有两个广播
;所以要想技能自动部署,又能自动放技能,就要向我这样写。如果不需要部署,就去掉,autodgb
Broadcast.AttachChances=100%,100%  ;对应上面,如果上面就一个广播,就去掉,100%
Broadcast.Rate=15
Broadcast.RangeMin=0
Broadcast.RangeMax=20
Broadcast.FullAirspace=yes
Broadcast.EliteTypes=bhzxautogb,autodgb
Broadcast.EliteAttachChances=100%,100% ;这两行同上
Broadcast.EliteRate=15
Broadcast.EliteRangeMin=0
Broadcast.EliteRangeMax=20
Broadcast.EliteFullAirspace=yes
Broadcast.TriggeredTimes=-1
Broadcast.Powered=no
; Broadcast.AffectTypes=none ;根据需要设置
; Broadcast.NotAffectTypes=none ;根据需要设置
Broadcast.AffectTechno=yes ;根据需要设置
Broadcast.AffectBuilding=yes ;根据需要设置
Broadcast.AffectInfantry=yes ;根据需要设置
Broadcast.AffectUnit=yes ;根据需要设置
Broadcast.AffectAircraft=yes ;根据需要设置
; 影响特定对象
Broadcast.AffectSelf=no ;是否向自己广播
Broadcast.AffectInAir=yes ;影响在空中的单位
Broadcast.AffectsOwner=no ;是否影响同阵营的
Broadcast.AffectsAllies=no ;是否影响友军
Broadcast.AffectsEnemies=yes ;是否影响敌人
Broadcast.AffectsCivilian=no ;是否影响中立目标
Broadcast.DeactiveWhenCivilian=yes ;启用时,当所属是平民时,或者被狙掉了驾驶员,不会激活效果
Stack.Watch=autofk
Stack.Level=5 ;写触发技能的被攻击次数。写5效果就是被5个人打瞬间就开,被1个人打5下才开。
Stack.Condition=GE ;条件,EQ=等于,NE=不等于,GT=大于,LT=小于,GE=大于等于,LE=小于等于
Stack.AttachEffects=BHZXXZY2  ;这里写放技能的ae,可以有多个
Stack.AttachChances=100%
Stack.TriggeredTimes=-1
Stack.RemoveAll=yes

[bhzautod]
;这个ae是自动部署的,如果只是自动放技能,不自动部署就不需要这一个ae
Duration=20
HoldDuration=yes
ResetDurationOnReapply=no
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=no
AttachOnceInTechnoType=yes
Stack.Watch=autodfk
Stack.Level=5 ;敌人数
Stack.Condition=GE ;条件,EQ=等于,NE=不等于,GT=大于,LT=小于,GE=大于等于,LE=小于等于
Stack.AttachEffects=autod1
Stack.AttachChances=100%
Stack.TriggeredTimes=-1
Stack.RemoveAll=yes

[bhzxautogb]
Duration=30
HoldDuration=no
ResetDurationOnReapply=yes
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=no
AttachOnceInTechnoType=yes
ExtraFire.Primary=AUTOFKW
ExtraFire.ElitePrimary=AUTOFKW
ExtraFire.Secondary=AUTOFKW
ExtraFire.EliteSecondary=AUTOFKW
ExtraFire.Weapon4=AUTOFKW
ExtraFire.EliteWeapon4=AUTOFKW
ExtraFire.AffectWho=ALL ;作用于谁,ALL\MASTER\STAND

[AUTOFKW]
;这个武器和弹头需要注册
Damage=800
ROF=40
Range=50
Projectile=autofkwp
Speed=100
Warhead=autofkwdt

[autofkwp]
SubjectToCliffs=no
SubjectToWalls=no
AA=yes
AG=yes
SubjectToElevation=no
Inviso=yes

[autofkwdt]
Wall=yes
Wood=yes
Verses=10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%
Conventional=no
InfDeath=4
AnimList=null
Sparky=no
IsToy=yes
AttachEffectTypes=autofk

[autofk]
Animation=null
Duration=300
HoldDuration=no
ResetDurationOnReapply=no
Delay=0
PenetratesIronCurtain=yes
FromTransporter=no
ReceiverOwn=yes
Cumulative=yes
MaxStack=100




本帖子中包含更多资源

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

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-1 11:38 , Processed in 0.048719 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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