newtonerdai 发表于 2019-9-2 23:08:54

[up1.5]让爆破兵“学会卧倒”——非自杀式爆破兵

本帖最后由 newtonerdai 于 2019-9-3 22:01 编辑

〇、引言

https://www.hawkaoe.net/bbs/data/attachment/album/201909/02/214357rp8mzbcko85jmt3v.png 爆破兵--普通单位--ID440--基础攻击25--波及半径0.5--攻击间隔5s
https://www.hawkaoe.net/bbs/data/attachment/album/201909/02/214338dcwhpz31pi7z7ypz.png 破坏者--英雄单位--ID706--基础攻击100--波及半径2.5--攻击间隔5s

大家应该都见过这两个单位,他们的攻击方式都是【自杀式攻击】,与敌人同归于尽。
不过我在研究Userpatch 1.5语句时,偶然发现一个语句使得爆破兵竟然可以不用死!


一、核心触发

▶方式一:升级法

新建一个触发 || 效果:显示信息 || 时长99999,数值9,写入up语句——
up-effect 1,3,4,440,0,1
;翻译:将玩家1的4号单位升级为440号单位注:其中,4号单位为步弓手。注:步弓手可以换成任一[类型70]且是[非自杀式攻击]的单位,效果相同。


▶方式二:资源携带能力法(来自@我是谁004 【6楼、7楼】)

新建一个触发 || 效果:显示信息 || 时长99999,数值9,写入up语句——
up-effect 1,0,440,14,1,1
;玩家1单位440(爆破兵)资源携带能力=1

二、效果展示

注:为了方便观察,增加了波及半径(up-effect 1,0,4,22,2,1——设波及半径为2)
注:为了保证存活,增加了生命值(up-effect 1,0,4,0,10000,1——设生命值为10000)

▶效果如下:
①未能一击必杀时,爆破兵会持续攻击,且隐形,无法继续爆炸造成伤害。
②需要每隔5s(即攻击间隔时长),手动停止/指派攻击,刷新攻击目标,才能重新爆炸。
      【注:方法二不需要刷新目标,他会继续自动攻击】
③如果没等5s就手动停止/指派攻击,会爆炸且频率可以达到1s/次,不过没有半点伤害。
④除非被杀死/手动delete/触发摧毁,攻击多少次爆破兵都是不会消失的。






三、原理解释

▶方式一:升级法

我查到了几个相关的帖子。
1、四个圈之前有发现过wk5.7的爆破船无限自爆bug,欧阳龙简单解释了其原因【7楼】。
2、如何将单位弄得像破坏者一样?,这里004也简单解释了自爆攻击硬编码的设定【3楼】。

▶我概括一下:
①up-effect 1,3,4,440,0,1——将步弓升级为爆破兵。硬编码决定了只有爆破兵/船、破坏者的ID拥有攻击自爆自杀设定。升级并不能让步弓ID从4号变成440号,他的本质ID依然是4号,而4号是没有攻击自爆自杀设定的。
②由于爆破兵没有攻击动画,所以如果没能一击必杀,需要继续攻击目标时,他会没有动画可显示,即“隐形”,而伤害一般要在攻击动画结束之后才能发生,结果爆破兵就会一直卡在隐形状态。
③当我们手动停止/令其走动时,爆破兵转为站立/行走动画,回归可攻击一次的状态。


▶方式二:资源携带能力法

(未知,待004大佬解释)




四、应用设想

1、会"卧倒"的爆破专家。你可以把每次攻击后的隐形看作“躲进掩体里”,避开爆炸后,继续布置炸药。

2、隐形单位。一旦脱离战斗状态/失去攻击目标/更新目标就会显形。不过被广泛使用的隐形“狂战士”方法完败。

3、无双小游戏。主角就是炸药桶,来一堆炸一堆,唯独不会炸到自己,巨爽。


【附scx,内有无双体验】{:11_481:}

【改进版scx,鸣谢004大佬】{:11_482:}





cxt 发表于 2019-9-3 00:16:32

新桶可以做一个以新桶(破坏者)为主角的战役了

焚风之爱莉琰 发表于 2019-9-3 10:40:45

进来之前我还以为是把破坏者的尸体单位改成破坏者,原来是这个。不过相比于前者,这个方法的特点是多一个隐形的时间,以及多次爆炸前后实际上是id相同的同一个单位

newtonerdai 发表于 2019-9-3 12:52:02

焚风之爱莉琰 发表于 2019-9-3 10:40
进来之前我还以为是把破坏者的尸体单位改成破坏者,原来是这个。不过相比于前者,这个方法的特点是多一个隐 ...

尸体单位设为普通单位,会不断有“唔wer”的生产提示音,游戏体验有点差。

不过升级为破坏者这种方式,那个隐形状态太恶心了,必须手动控制,或者用定时的循环指派,还必须要跟攻击间隔5秒吻合,快了一点都只爆炸没伤害。

newtonerdai 发表于 2019-9-3 13:56:29

cxt 发表于 2019-9-3 00:16
新桶可以做一个以新桶(破坏者)为主角的战役了

没错,不会自爆而死的破坏者,可以作为RPG角色使用。

技能可以是:
①喷火桶——抛射物=676号,帧延迟=0,射程=5,基础攻击变为1点,持续1秒,波及范围=0.5
②投掷炸药——抛射物=676号,射程=5,676号体积=3*3,死亡单位为440(爆破兵),单位440生命值=0(一出生就爆炸),单位440基础攻击=5
③霸王爆——自爆而不死,360°范围杀伤。
④定时炸弹——由投石车升级(强制攻击能力),投掷物=767(黑炮弹),射程=5,767号体积=20*20,单位767死亡单位=677(闪烁火球),设677死亡时间为3秒,其死亡单位为440,设440号生命值=0
⑤探路火把——由投石车升级,投掷物=516号(小箭-带火),射程=10,主角攻击力变为0,516号体积=100*100,516号死亡单位为112号视野单位,112号7s后消失。

我是谁004 发表于 2019-9-3 20:12:07

实际上有不用升级而直接改原单位的方法,那就是资源携带能力设置为1{:165:}

newtonerdai 发表于 2019-9-3 21:47:10

本帖最后由 newtonerdai 于 2019-9-3 21:48 编辑

我是谁004 发表于 2019-9-3 20:12
实际上有不用升级而直接改原单位的方法,那就是资源携带能力设置为1 ...




up-effect 1,0,440,14,1,1
;玩家1单位440(爆破兵)资源携带能力=1




还是会自动继续攻击的!

为什么呀?!原理是什么?!
姜还是老的辣啊{:11_482:}

@焚风之爱莉琰 @cxt

我是谁004 发表于 2019-9-4 15:15:03

newtonerdai 发表于 2019-9-3 21:47





如果仔细读过userpatch的文档的话,有这段话:
New ATTR_HERO_STATUS flag: 32: self-destruct (ATTR_RESOURCE_CARRY must be 1 or 2; if ATTR_RESOURCE_CARRY is 1, hard-coded ids 440, 527, 528, 706 will test this flag).
意思是想让单位自杀式攻击,除了英雄模式的二进制位32外,还需要设置其携带能力为1或2。而且如果设置为1,那么原版的四个单位(爆破舰与破坏者)也需要判断英雄模式32位。
再一个,大概因为440单位会主动攻击,所以会不断爆炸吧。

枫叶の飘零 发表于 2019-9-4 15:59:18

炸药桶要重出江湖了

条顿武士 发表于 2019-9-4 21:09:23

听说有人要开炸药筒插件!?

newtonerdai 发表于 2019-9-4 21:28:38

条顿武士 发表于 2019-9-4 21:09
听说有人要开炸药筒插件!?

炸药桶没开,潜水TT倒是炸出来一只{:5_432:}
页: [1]
查看完整版本: [up1.5]让爆破兵“学会卧倒”——非自杀式爆破兵