翔鹰帝国网|帝国时代论坛|帝国时代系列|神话时代
 找回密码
 注册翔鹰会员(昵称)
搜索
查看: 16480|回复: 57

[教程] 每秒回復 n 血, 而且不破血

   关闭 [复制链接]

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
发表于 2010-10-2 20:49:45 | 显示全部楼层 |阅读模式
英雄式的原理我不在这里说, 我也不过算是一知半解,
有兴趣的话可以自己研究一下,提示是这与程式的变数种类有关。
A:是單位的血量上限值


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777217+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


相信这结构大家也不会感到陌生, 其实这是经过简化的结构, 最基本的应该是这样:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A

效果0 与效果1 结合了, 因此写成简化版本。

好了, 那为什么我不用简化版本去解释接着下来的东西呢?
那是因为简化版相对地较为不清晰, 相反最基本的结构就清晰得多,


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


好容易便看出, 这是每秒增加 1 血,
对! 中间的那个"-1" 就是这个意义-- 每秒增加1 血。

因此, 假若你想每秒回复2 血, 结构就变写成:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果3:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


再简化成:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777217+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


如果你想每秒回复 10 血, 就应写成:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
(1)效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果3:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果4:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
(5)效果5:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果6:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果7:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果8:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果9:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
(10)效果10:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果11:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


再简化:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777217+A
(1)效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果3:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果4:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
(5)效果5:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果6:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果7:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果8:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
(9)效果9:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果10:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A



在简化过程, 只会将效果0 和效果1 结合, 那为什么效果0 不和其余效果都结合, 那不是更简化么?
举例每秒回复 5 血:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
(1)效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果3:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果4:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
(5)效果5:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果6:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


为什么不简化成这样:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777221+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


或者简化成这样:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-5
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


这是不可行的, 不能够写成以上这样,
因为我跳了原理的部分, 所以也很难给各位解释,
如果你有兴趣, 也可以自行研究, 提示是"系统永远也是由最上读到最下"。


那么如果我打算单位每秒回复200 血, 300 血, 400 血, 甚至更高,
即是要做200 多个, 300多个, 400多个效果!????
这是事实!

但你可能说用AoKTS (触发事件工作室) 就能很方便地复制效果, 做400 多个相同效果也是一分钟以内的事情,
这也是事实! 可是别忘记你的触发事件是循环的, 系统每秒最少运行400 个以上的状况&效果,
想像一下游戏负荷有多大! 所以以上方法就不可行!
所以我們有其他方法去代替這方法。

[ 本帖最后由 nomygf 于 2010-10-3 21:15 编辑 ]

点评

書仔的...  发表于 2012-10-4 19:52

评分

参与人数 1耕战 +150 鹰币 +500 收起 理由
Ikarus + 150 + 500

查看全部评分

回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-2 20:50:07 | 显示全部楼层
一楼提到, 有其他方法取代第一個方法,
而那個方法就是使用一个损坏目标, 便能达到每秒回复 2/4/8/16/32/64 血的效果,
那么这个触发结构是怎样的呢 ?


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-33554434+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:33554432-A


将效果0写成两个效果:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-33554432+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-2
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:33554432-A


上述效果就是每秒回复2 血的触发事件结构。

这个触发事件结构的唯一坏处是, 你必须要使用2 这个值作为最基础
此话什么意思呢? 即是「每秒回复n 点血量」的n 必须是2 的倍数,
也就是n 值只可能会是 2 / 4 / 6 / 8 / 10 / 12 / 14 / 16... 如此类推

==========

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-67108868+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:67108864-A


将效果0写成两个效果:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-67108864+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-4
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:67108864-A


上述效果就是每秒回复4 血的触发事件结构。

这个触发事件结构的唯一坏处是, 你必须要使用4 这个值作为最基础
此话什么意思呢? 即是「每秒回复n 点血量」的n 必须是4 的倍数,
也就是n 值只可能会是 4 / 8 / 12 / 16 / 20 / 24 / 28 / 32... 如此类推

========


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-134217736+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:134217728-A


将效果0写成两个效果:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-134217728+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-8
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:134217728-A


上述效果就是每秒回复8 血的触发事件结构。

这个触发事件结构的唯一坏处是, 你必须要使用8 这个值作为最基础
此话什么意思呢? 即是「每秒回复n 点血量」的n 必须是8 的倍数,
也就是n 值只可能会是 8 / 16 / 24 / 32 / 40 / 48 / 56 / 64... 如此类推

=======


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-268435472+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:268435456-A


将效果0写成两个效果:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-268435456+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:268435456-A


上述效果就是每秒回复16 血的触发事件结构。

这个触发事件结构的唯一坏处是, 你必须要使用16 这个值作为最基础
此话什么意思呢? 即是「每秒回复n 点血量」的n 必须是16 的倍数,
也就是n 值只可能会是 16 / 32 / 48 / 64 / 72 / 88 ... 如此类推

===========


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-536870944+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:536870912-A


将效果0写成两个效果:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-536870912+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-32
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:536870912-A


上述效果就是每秒回复32 血的触发事件结构。

这个触发事件结构的唯一坏处是, 你必须要使用32 这个值作为最基础
此话什么意思呢? 即是「每秒回复n 点血量」的n 必须是32 的倍数,
也就是n 值只可能会是 32 / 64 / 96 / 128 / 160 / 192 ... 如此类推

============


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1073741887+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:1073741823-A


将效果0写成两个效果:

效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1073741823+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-64
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:1073741823-A


上述效果就是每秒回复64 血的触发事件结构。

这个触发事件结构的唯一坏处是, 你必须要使用64 这个值作为最基础
此话什么意思呢? 即是「每秒回复n 点血量」的n 必须是64 的倍数,
也就是n 值只可能会是 64 / 128 / 192 ... 如此类推

===========


如果我要每秒回复128 点血量, 最簡單的触发结构就会是:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1073741823+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-64
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-64
效果3:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:1073741823-A


再简化:


效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1073741887+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-64
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:1073741823-A


以上就是用"64" 为基础值的例子, 但是若果你说要做每秒回复1280 点血量,
那便要做20 个摧毁目标(1280/64=20)


还剩下一个问题, 假设我要每秒回复97 (32+64+1) 点血量, 那我的结构可以这样做吗?


触发事件0:
效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1073741823+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-64
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:1073741824-A



触发事件1:
效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-536870912+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-32
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:536870912-A



触发事件2:
效果0:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-16777216+A
效果1:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:-1
效果2:损坏目标|设置单位:相关单位|设置区域:相关区域|参数:16777216-A


按照上述做法, 可以达到每秒回复97 血量吗?
答案是不能够的, 你只能够从三款方法中选择其中一款用在单位上,
如果在同一单位上, 使用多于一款的方法, 当中只有基础值最大的那个会生效。



还有更大的基础值么? 例如 256? 512?
應該沒有了, 因為假若 16777216*256, 數值已經超出浮點數所能儲存的範圍,
所以應該沒有更大的基礎值了。


最后, 如果你想自己研究原理的话, 我自己用java 写了一个非常很单的程式, 是将integer 转成float,
相信你应该对你有帮助。 (我只是java 初学者, 写得不太好的话请笑纳: D )

[ 本帖最后由 nomygf 于 2010-12-27 00:13 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册翔鹰会员(昵称)

x
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-2 22:53:44 | 显示全部楼层
剛剛發現我所發現的 64 基礎值回血方法有誤,
花了接近兩小時研究, 總算能夠修正到
但是... 現在很累了 {27}
回复

使用道具 举报

229

主题

14

精华

11万

积分

圣徒

耕战
20973
鹰币
90383
天龙币
0
回帖
9213

特级翔鹰勋章一级嘉禾勋章一级帝国勋章雄鹰勋章第六届火箭筒杯最佳战役第七届火箭筒杯最佳战役

附庸关系0
发表于 2010-10-2 22:59:05 | 显示全部楼层
我等了一晚上
ΙΚΑΡΟΣ ΣΕ ΟΡΑΙ
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-2 23:08:31 | 显示全部楼层
突然間想到...
現在那有人用觸發事件去達成「每秒回復 n 血, 而且不破血」,
256僧侶治療距離 + 適當的治療僧侶速度 就能夠達成效果了,
研究成果白費 {23}
回复

使用道具 举报

229

主题

14

精华

11万

积分

圣徒

耕战
20973
鹰币
90383
天龙币
0
回帖
9213

特级翔鹰勋章一级嘉禾勋章一级帝国勋章雄鹰勋章第六届火箭筒杯最佳战役第七届火箭筒杯最佳战役

附庸关系0
发表于 2010-10-2 23:16:07 | 显示全部楼层
原帖由 nomygf 于 2010-10-2 23:08 发表
突然間想到...
現在那有人用觸發事件去達成「每秒回復 n 血, 而且不破血」,
256僧侶治療距離 + 適當的治療僧侶速度 就能夠達成效果了,
研究成果白費 {23}

那个不行的,会引起读档间隔性跳出。很严重,不推荐使用
ΙΚΑΡΟΣ ΣΕ ΟΡΑΙ
回复

使用道具 举报

78

主题

13

精华

2万

积分

圣徒

耕战
2683
鹰币
182
天龙币
0
回帖
1957

二级皇家勋章一级嘉禾勋章二级帝国勋章十字军勋章雄鹰勋章活跃者使者勋章

附庸关系0
发表于 2010-10-2 23:19:39 | 显示全部楼层
好吧…洗着澡想起来僧侣可以自由控制,上来一看作者已经提出了…更悲剧的是KK还说不稳定…5555
回复

使用道具 举报

229

主题

14

精华

11万

积分

圣徒

耕战
20973
鹰币
90383
天龙币
0
回帖
9213

特级翔鹰勋章一级嘉禾勋章一级帝国勋章雄鹰勋章第六届火箭筒杯最佳战役第七届火箭筒杯最佳战役

附庸关系0
发表于 2010-10-2 23:23:18 | 显示全部楼层
碎玉2就因为这个。搞的我哭了好几天
ΙΚΑΡΟΣ ΣΕ ΟΡΑΙ
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-2 23:24:17 | 显示全部楼层

回复 7楼 的帖子

KK 是說僧侶這個方法不穩定 {25}
回复

使用道具 举报

229

主题

14

精华

11万

积分

圣徒

耕战
20973
鹰币
90383
天龙币
0
回帖
9213

特级翔鹰勋章一级嘉禾勋章一级帝国勋章雄鹰勋章第六届火箭筒杯最佳战役第七届火箭筒杯最佳战役

附庸关系0
发表于 2010-10-2 23:28:40 | 显示全部楼层
原帖由 nomygf 于 2010-10-2 23:24 发表
KK 是說僧侶這個方法不穩定 {25}

我想他就是说僧侣吧……
ΙΚΑΡΟΣ ΣΕ ΟΡΑΙ
回复

使用道具 举报

78

主题

13

精华

2万

积分

圣徒

耕战
2683
鹰币
182
天龙币
0
回帖
1957

二级皇家勋章一级嘉禾勋章二级帝国勋章十字军勋章雄鹰勋章活跃者使者勋章

附庸关系0
发表于 2010-10-3 05:33:44 | 显示全部楼层
是啊…
回复

使用道具 举报

0

主题

0

精华

12

积分

流徒

耕战
0
鹰币
10
天龙币
0
回帖
3
附庸关系0
发表于 2010-10-3 11:31:43 | 显示全部楼层
复杂,看不懂,有没有这样的图来玩玩?英雄本身回血是怎么回事?
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-3 13:52:15 | 显示全部楼层
這不算什麼複雜的東西, 純粹是說一說 16777216 / 536810912 / 1073741823 的用法,
看懂黑色字的話, 綠色跟紅色就可以不理會。
回复

使用道具 举报

1

主题

0

精华

415

积分

子爵

耕战
61
鹰币
218
天龙币
0
回帖
8
附庸关系0
发表于 2010-10-3 14:59:09 | 显示全部楼层
其實為什麼要256僧侶- -"
僧侶用同盟的, 和不研製圖學不就可以了嗎
再不然讓玩家看到也沒差..

而且不明白為什麼會「引起读档间隔性跳出」
回复

使用道具 举报

25

主题

3

精华

3万

积分

征服者

耕战
5725
鹰币
148758
天龙币
0
回帖
1069

翔鹰建站十周年纪念章一级嘉禾勋章三级帝国勋章

附庸关系0
发表于 2010-10-3 15:13:24 | 显示全部楼层
我还一直以为英雄回血效果最快也只能每秒加一血。。。。看完此帖长见识了。。。{43}

32基础和64基础的加血效果应该很少有机会在战役中应用,毕竟回血超人一直都不流行。。。{40}
回复

使用道具 举报

46

主题

0

精华

1046

积分

伯爵

耕战
116
鹰币
295
天龙币
0
回帖
186
附庸关系0
发表于 2010-10-3 19:34:14 | 显示全部楼层
似乎正好是倍数啊{19}
16777217的43倍是不是就可以回43血了啊{19}
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-3 20:04:37 | 显示全部楼层

回复 16楼 的帖子

哈哈, 我竟然沒有發現這點,
我晚點再研究一下, 然後再給你答覆
回复

使用道具 举报

1374

主题

13

精华

4万

积分

教皇

耕战
4669
鹰币
18923
天龙币
0
回帖
13525

特级皇家勋章一级翔鹰勋章特级嘉禾勋章特级帝国勋章鹰之王者雄鹰勋章蛟龙勋章第七届火箭筒杯优秀战役第七届火箭筒杯最佳新人

附庸关系1
发表于 2010-10-3 20:25:50 | 显示全部楼层
-16777217 A
A是啥……
没加减乘除没括号看不懂
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-3 20:33:33 | 显示全部楼层

回复 17楼 的帖子

找到了其他"基礎值"了, 待回編輯...
謝謝你的想法!


To #18
該死的翻譯器將所有加減符號去掉了,
等會連帶修改
回复

使用道具 举报

9

主题

4

精华

8163

积分

国王

耕战
1184
鹰币
144
天龙币
0
回帖
288

特级嘉禾勋章十字军勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-10-3 20:57:14 | 显示全部楼层
完成了, 這個成果我很滿意 {32}
回复

使用道具 举报

本版积分规则

排行榜|小黑屋|翔鹰帝国

GMT+8, 2024-4-27 23:47 , Processed in 0.247186 second(s), 223 queries , File On.

Powered by Hawk Studio  QS Security Corp.® Licensed

Copyright © 2001-2023, Hawkaoe.net All Rights Reserved

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