佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 1998|回复: 13

关于BM:P的重实现

[复制链接]
  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10806

    社区QQ达人

    发表于 2020-4-4 23:35:35 | 显示全部楼层 |阅读模式
    BM:P是用了重设战队位置的命令。
    但是BM:P会造成移动战队后卡0.1秒的问题。如果多个BM:P连续使用,这个滞后时间会更明显。
    而且,用BM:P移动的单位在落地后踩雷的动画也会瞬间播放完,看起来不舒服。
    因此我写了这个函数来规避上面两个问题。

    ---------------------------------------------------------------------------------------------------------------------------------
    **FU(RepositionStackX1toX2):P21/10/?y3; [类似BM:P但可以正常速度显示魔法动画]
    ---------------------------------------------------------------------------------------------------------------------------------
    !?FU(RepositionStackX1toX2)&x1>=0/x1<=41/x2>=1/x2<=185;
    {
    * x1=ID, x2=Grid, x3=1到达且存活/0未到达或死亡
    !!SN:W^X_Reposition_Stack_Active^/1;
    !!BMx1:S?y10 F?y11;
    !!VRy12:Sy11&2;[fly]
    !!VRy13:Sy11|2;
    !!BMx1:S999 Fy13;[加速加飞]

    !!UN:C6916156/4/?y70; [游戏速度]读取
    !!SN:W^X_Game_Speed^/y70; [游戏速度]保存
    !!UN:C6916156/4/10; [游戏速度]设置

    !!BMx1:G72/?y5/d;
    !!UN:C6919200/4/?y1;
    !!VRy2:Sx1 *1352 +21708 +y1;
    !!SN&y5>0:E4473392/2/y2/72;
    !!SN:E4478576/2/y2/x2/1;
    !!VRx3:Sv1;

    !!UN:C6916156/4/y70; [游戏速度]还原

    !!BMx1:Sy10 Fy11;[还原]
    !!SN:W^X_Reposition_Stack_Active^/0;

    !?MR1;[RepositionStackX1toX2进行时让魔法动画慢下来]
    {
    !!SN:W^X_Reposition_Stack_Active^/?y1;
    !!FU&y1=0:E;
    !!SN:W^X_Game_Speed^/?y70; [游戏速度]
    !!UN:C6916156/4/y70; [游戏速度]
    }
    }

    评分

    1

    查看全部评分

  • TA的每日心情
    开心
    2023-1-11 02:54
  • 签到天数: 113 天

    连续签到: 1 天

    [LV.6]地狱战马

    101

    回帖

    7421

    金币

    1

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1849
    发表于 2020-4-5 08:05:37 | 显示全部楼层
    支持,回去慢慢学习。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-7-25 11:25
  • 签到天数: 1229 天

    连续签到: 1 天

    [LV.10]圣龙

    414

    回帖

    404

    金币

    0

    精华

    7级 Admirable Legendary Hero

    Rank: 7Rank: 7Rank: 7

    积分
    24781

    社区QQ达人

    发表于 2020-4-5 09:44:30 | 显示全部楼层
    将宝物加强Mod1.1,就是封神宝物的单独mod,加到最新版本的era上,经常报英雄下标超界,也不知道怎么处理

    点评

    下标是什么?HE编号? 请安装最新的era2.9.12,2.9的有几个版本HE-1有问题。  详情 回复 发表于 2020-4-5 10:48
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-9-12 15:30
  • 签到天数: 93 天

    连续签到: 1 天

    [LV.6]地狱战马

    31

    回帖

    9941

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1374
    发表于 2020-4-5 10:48:07 | 显示全部楼层
    楼主可以解释下

    !!BMx1:G72/?y5/d;
    !!UN:C6919200/4/?y1;
    !!VRy2:Sx1 *1352 +21708 +y1;
    !!SN&y5>0:E4473392/2/y2/72;
    !!SN:E4478576/2/y2/x2/1;
    !!VRx3:Sv1;

    这段代码做了什么事吗?
    特别是:
    !!VRy2:Sx1 *1352 +21708 +y1; 是计算什么?
    !!SN:E4478576/2/y2/x2/1; 又是什么函数?

    谢谢

    点评

    E4473392处理缠绕状态 E4478576强制单位移动 y2是战队的指针(内存地址)  详情 回复 发表于 2020-4-5 13:36
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10806

    社区QQ达人

     楼主| 发表于 2020-4-5 10:48:32 | 显示全部楼层
    ducs 发表于 2020-4-5 09:44
    将宝物加强Mod1.1,就是封神宝物的单独mod,加到最新版本的era上,经常报英雄下标超界,也不知道怎么处理

    下标是什么?HE编号?
    请安装最新的era2.9.12,2.9的有几个版本HE-1有问题。

    点评

    是最新的2.9.12每把到三个月左右就报这个问题  详情 回复 发表于 2020-4-5 14:21
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10806

    社区QQ达人

     楼主| 发表于 2020-4-5 13:36:17 | 显示全部楼层
    xiaoke2017 发表于 2020-4-5 10:48
    楼主可以解释下

    !!BMx1:G72/?y5/d;

    E4473392处理缠绕状态
    E4478576强制单位移动
    y2是战队的指针(内存地址)

    点评

    不懂就问嘛。。。。。。。 楼主请问下, 尝试理解这个函数替代BM:P的思路 是否是因为BM:P的移动重绘比动画速度要快, 或者慢 所以尝试把动画速度跟移动速度 进行一个同步化? !!VRy12:Sy11&2; [检查是否  详情 回复 发表于 2020-4-5 14:39
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-7-25 11:25
  • 签到天数: 1229 天

    连续签到: 1 天

    [LV.10]圣龙

    414

    回帖

    404

    金币

    0

    精华

    7级 Admirable Legendary Hero

    Rank: 7Rank: 7Rank: 7

    积分
    24781

    社区QQ达人

    发表于 2020-4-5 14:21:31 | 显示全部楼层
    XEricSin 发表于 2020-4-5 10:48
    下标是什么?HE编号?
    请安装最新的era2.9.12,2.9的有几个版本HE-1有问题。

    是最新的2.9.12每把到三个月左右就报这个问题
    outOfRange.jpg

    点评

    那可能就是v9555的值在什么时候被修改了,可以看看debug里面保存的变量值列表  详情 回复 发表于 2020-4-5 14:52
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-9-12 15:30
  • 签到天数: 93 天

    连续签到: 1 天

    [LV.6]地狱战马

    31

    回帖

    9941

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1374
    发表于 2020-4-5 14:39:30 | 显示全部楼层
    XEricSin 发表于 2020-4-5 13:36
    E4473392处理缠绕状态
    E4478576强制单位移动
    y2是战队的指针(内存地址)

    不懂就问嘛。。。。。。。

    楼主请问下,

    尝试理解这个函数替代BM:P的思路
    是否是因为BM:P的移动重绘比动画速度要快, 或者慢
    所以尝试把动画速度跟移动速度 进行一个同步化?

    !!VRy12:Sy11&2;   [检查是否有 "飞行" 生物标志 y12]  但是后面没有用到y12, 这语句是不是可以不用?

    !!UN:C6916156/4/10;  [设置新的游戏速度 10] 为什么是10呢?

    !!VRy2:Sx1 *1352 +21708 +y1;  我明白y2是战队的指针(内存地址),这个计算方法不懂

    !!SN:E4478576/2/y2/x2/1;  [E4478576 函数 强制单位移动 y2是战队的指针(内存地址)] x2 移动网格位置?, 1 刷新?

    !!VRx3:Sv1;  这应该是简单的返回值 读取到y3吧?

    麻烦楼主解答下,感谢感谢。。。。。。。

    点评

    BM:P的动画会瞬间完成,但是完成后会等待一会儿才能继续执行之后的代码。你试试就知道了。比如!!BM0:P1 P2.....P10; !!IF:M^^; y12确实是多余的 速度为10就是个很快的速度,眼睛看不出来,9也行 战队内存地址一定  详情 回复 发表于 2020-4-5 15:01
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10806

    社区QQ达人

     楼主| 发表于 2020-4-5 14:52:08 | 显示全部楼层
    ducs 发表于 2020-4-5 14:21
    是最新的2.9.12每把到三个月左右就报这个问题

    那可能就是v9555的值在什么时候被修改了,可以看看debug里面保存的变量值列表
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10806

    社区QQ达人

     楼主| 发表于 2020-4-5 15:01:00 | 显示全部楼层
    xiaoke2017 发表于 2020-4-5 14:39
    不懂就问嘛。。。。。。。

    楼主请问下,

    BM:P的动画会瞬间完成,但是完成后会等待一会儿才能继续执行之后的代码。你试试就知道了。比如!!BM0:P1 P2.....P10; !!IF:M^^;
    y12确实是多余的
    速度为10就是个很快的速度,眼睛看不出来,9也行
    战队内存地址一定是战场内存y1的后面21708字节的位置开始。每个战队占1352个字节。
    函数的有些参数不知道什么用,你可以自己试试。
    SN:E返回的值都在v1里面

    点评

    太感谢楼主解答了。 之前看007翻译的 ERM帮助手册里面的 FU函数说明与使用 里面是这样说的 """ 函数FU接收器 - 传递信息给编号为#的FU触发器 # = 1~30000 (ERA中无此限制). """ 我自己也看过其他人跟wog的  详情 回复 发表于 2020-4-5 15:31
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-9-12 15:30
  • 签到天数: 93 天

    连续签到: 1 天

    [LV.6]地狱战马

    31

    回帖

    9941

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1374
    发表于 2020-4-5 15:31:17 | 显示全部楼层
    XEricSin 发表于 2020-4-5 15:01
    BM:P的动画会瞬间完成,但是完成后会等待一会儿才能继续执行之后的代码。你试试就知道了。比如!!BM0:P1 P ...

    太感谢楼主解答了。

    之前看007翻译的 ERM帮助手册里面的 FU函数说明与使用
    里面是这样说的
    """
    函数FU接收器 - 传递信息给编号为#的FU触发器
    # = 1~30000 (ERA中无此限制).
    """
    我自己也看过其他人跟wog的erm, 还有自己写过FU都是用数字的

    但是,楼主的FU语法貌似没怎么见过
    !?FU(RepositionStackX1toX2)&x1>=0/x1<=41/x2>=1/x2<=185; {}
    是不是如果要使用 字符串  作为 函数名的话, 就需要加上 括号
    且函数体需要用 花括号 包起来?

    点评

    era版本下FU函数序号不受30000限制了。 新版era下可以采用字符串来代表函数名,内部自动转换为序号。  详情 回复 发表于 2020-4-5 15:42
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4949

    回帖

    3万

    金币

    35

    精华

    超级版主

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    34677

    论坛守望者论坛元老杰出贡献

    发表于 2020-4-5 15:42:52 | 显示全部楼层
    xiaoke2017 发表于 2020-4-5 15:31
    太感谢楼主解答了。

    之前看007翻译的 ERM帮助手册里面的 FU函数说明与使用

    era版本下FU函数序号不受30000限制了。
    新版era下可以采用字符串来代表函数名,内部自动转换为序号。

    点评

    谢谢007的解答。 我想知道,哪里可以看到这些新的语法呢? 谢谢。  详情 回复 发表于 2020-4-5 21:17
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-9-12 15:30
  • 签到天数: 93 天

    连续签到: 1 天

    [LV.6]地狱战马

    31

    回帖

    9941

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1374
    发表于 2020-4-5 21:17:47 | 显示全部楼层
    贤知有您 发表于 2020-4-5 15:42
    era版本下FU函数序号不受30000限制了。
    新版era下可以采用字符串来代表函数名,内部自动转换为序号。

    谢谢007的解答。

    我想知道,哪里可以看到这些新的语法呢?

    谢谢。

    点评

    新语法没有帮助文档,需要自己看era的更新日志  详情 回复 发表于 2020-4-6 03:03
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-9 01:09
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]火元素使者

    1839

    回帖

    8223

    金币

    8

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    10806

    社区QQ达人

     楼主| 发表于 2020-4-6 03:03:33 | 显示全部楼层
    xiaoke2017 发表于 2020-4-5 21:17
    谢谢007的解答。

    我想知道,哪里可以看到这些新的语法呢?

    新语法没有帮助文档,需要自己看era的更新日志
    回复 支持 反对

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

    捐赠
    关注我们,英3Mod一网打尽!

    WoG中文站 ( 辽B2-20210485-10 )|辽公网安备 21128202000228 号

    GMT+8, 2024-11-15 12:11 , Processed in 1.074470 second(s), 12 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    Copyright © 2004-2022, Beijing Second Sight Technology Co., LTD.

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