佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 3298|回复: 17

求教分析修改前置建筑中的一些值是怎么计算的?

[复制链接]

该用户从未签到

2455

回帖

5万

金币

7

精华

版主

Rank: 10Rank: 10Rank: 10

积分
13883

TE先驱

发表于 2013-5-20 01:27:08 | 显示全部楼层 |阅读模式
下面是一些例子:
;独眼不需要食人魔巢穴
!!CD:B1/6/35/d/?y1; 读取
!!VRy1:&-3; 置数
!!CD:B1/6/35/d/y1; 重置

!!CD:B1/6/42/d/?y1; 读取
!!VRy1:&-3; 置数
!!CD:B1/6/42/d/y1; 重置

;食人魔不需要半兽人巢穴
!!CD:B1/6/33/d/?y1; 读取
!!VRy1:&-2; 置数
!!CD:B1/6/33/d/y1; 重置

!!CD:B1/6/40/d/?y1; 读取
!!VRy1:&-2; 置数
!!CD:B1/6/40/d/y1; 重置

;食人魔需要高级大耳怪
!!CD:B1/6/33/d/?y1; 读取
!!FU23022:P5; v6100 = 2^15
!!VRy1:|v6100; set 15th bit
!!CD:B1/6/33/d/y1; 重置


; 巨人不用神怪
!!CD:B1/2/36/d/?y1; read value
!!VRy1:&-5; reset 2nd bit
!!CD:B1/2/36/d/y1; write back new value

; 泰坦不用神怪
!!CD:B1/2/43/d/?y1; read value
!!VRy1:&-5; reset 2nd bit
!!CD:B1/2/43/d/y1; write back new value

请问达人:
!!VRy1:&-后面的这个数是怎么算出来的,有什么简单的方法?非常感谢。
比如我让人类的弓箭手不需要低级枪兵建筑,应该怎么算这个
值?






另外,添加前置建筑这个p后面的值是怎么算的呢?

比如:



;食人魔需要高级大耳怪
!!CD:B1/6/33/d/?y1; 读取
!!FU23022:P5; v6100 = 2^15
!!VRy1:|v6100; set 15th bit
!!CD:B1/6/33/d/y1; 重置

假设我要给人族枪兵加上首都这个前置建筑应该怎么算这个p值?


[ 本帖最后由 titanzwh 于 2013-5-20 01:49 编辑 ]

该用户从未签到

2455

回帖

5万

金币

7

精华

版主

Rank: 10Rank: 10Rank: 10

积分
13883

TE先驱

 楼主| 发表于 2013-5-20 01:30:33 | 显示全部楼层
哦,我大概明白了,是数位变负再减一?对应的是这个玩意吧
0x00000001 = 1
0x00000002 = 2
0x00000004 = 4
0x00000008 = 8
0x00000010 = 16
0x00000020 = 32
0x00000040 = 64
0x00000080 = 128
0x00000100 = 256

……

[ 本帖最后由 titanzwh 于 2013-5-20 01:43 编辑 ]

该用户从未签到

2455

回帖

5万

金币

7

精华

版主

Rank: 10Rank: 10Rank: 10

积分
13883

TE先驱

 楼主| 发表于 2013-5-20 02:12:40 | 显示全部楼层
我写的***人类***
;弓箭手不需要枪兵
!!CD:B1/0/31/d/?y1; 读取
!!VRy1:&-65; 置数
!!CD:B1/0/31/d/y1; 重置

岗楼的数位是40,对应为65,为什么进游戏无效呢??
  • TA的每日心情
    慵懒
    2019-8-17 09:46
  • 签到天数: 1158 天

    连续签到: 2 天

    [LV.10]圣龙

    2万

    回帖

    91万

    金币

    7

    精华

    论坛嘉宾

    守望论坛的稻草人

    Rank: 9Rank: 9Rank: 9

    积分
    87641

    社区QQ达人论坛守望者金牌裁判杰出贡献魅力之星TE联赛冠军

    发表于 2013-5-20 02:17:28 | 显示全部楼层
    我前晚都说你了,非不相信。何必难为自己
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 09:09:55 | 显示全部楼层
    我只是想说明一下 &负数的意义.

    比如 &-65;
    相对于先检测是否包含64,若包含64则去掉64这个标志.
    !!VRy1:S65; [y1包含标志1+64]
    !!VRy1:&-65; [检测y1是否包含64的标志,若包含则减去64标志]
    对等于
    !!VRy1:S65;
    !!VRy2:Sy1 &64;
    !!VRy1&y2>0:-64;

    该用户从未签到

    2455

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13883

    TE先驱

     楼主| 发表于 2013-5-20 09:50:51 | 显示全部楼层

    回复 我回帖我光荣 4# 的帖子

    不靠自己,难道还能靠你么

    该用户从未签到

    2455

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13883

    TE先驱

     楼主| 发表于 2013-5-20 09:56:41 | 显示全部楼层

    回复 论坛兴旺玩家受益 5# 的帖子

    !!VRy1:S65; 这句好像其他去建筑的句子里面都没写,但也生效了。
    另外,你知道
    !!CD:B1/6/42/d/?y1;

    !!CD:B1/6/42/?y1/d;

    这两种顺序调整有什么用吗?
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 11:00:11 | 显示全部楼层
    泰坦兄.
    CD:B1 这个命令中
    倒数第二个参数很大,我也没弄懂是怎么得出来的.(好像跟数位有关,但不知道有什么用)

    但最后一个参数,你的理解绝对是正确的.
    你应该看到帮助,最后那个参数是数位 4-5,也就是最少从巢穴 3(32)打后的巢穴前提数据.
    比如 人族的三级低级巢穴,狮鹫,需要 岗楼和兵营.
    只有兵营是数位4以后的巢穴,所以就能用上面方面去掉兵营的限制.
    兵营的对应数位是 2.
    以下按照上面相似的方法,建造狮鹫时不需要兵营的前提.
    ZVSE
    !?PI;
    !!CD:B1/0/32/d/?y1; 读取
    !!VRy1:&-3;
    !!CD:B1/0/32/d/y1;

    至于箭手不需要枪兵,暂时还不知道怎么处理.

    [ 本帖最后由 贤知有您 于 2013-5-20 11:02 编辑 ]

    该用户从未签到

    2455

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13883

    TE先驱

     楼主| 发表于 2013-5-20 11:36:46 | 显示全部楼层
    有一个地方不太明白,
    “最后那个参数是数位 4-5,也就是最少从巢穴 3(32)打后的巢穴前提数据. ”

    就是说从4级-7级兵的前置建筑都好用这种方法调整,2级兵之前会有一些变化?
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 11:40:56 | 显示全部楼层
    刚才又研究了倒数第二个参数,大概也明白了.
    我再研究一下,用十进制是怎么表达倒数第二个参数的.

    回到泰坦的那个问题,如何使箭手不需要岗楼.
    箭手除了需要岗楼外的前提条件,跟枪兵的前提条件是一样的.
    所以只需要把枪兵的前提条件按到箭手上就对了.
    比如:
    ZVSE
    !?PI;
    !!CD:B1/0/30/?y1/d; 读取枪兵的前提条件
    !!CD:B1/0/31/y1/d; 重置箭手的前提条件

    测试时候可以看到,枪兵的前置条件值是 128.
    而实际枪兵需要的前提建筑是壁垒,正是128 (即80数位)
    这下应该大概明白了吧.
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 11:43:17 | 显示全部楼层

    回复 9# 的帖子

    这就是你问的另外那个问题.
    !!CD:B1/6/42/d/?y1;

    !!CD:B1/6/42/?y1/d; 这两种顺序调整有什么用吗?

    倒数第二个参数就是那样用的. (0-3) 的前提条件.
    你再看看我上面那个例子,就是用到了倒数的第二个参数.
    ZVSE
    !?PI;
    !!CD:B1/0/30/?y1/d; 读取枪兵的前提条件
    !!CD:B1/0/31/y1/d; 重置箭手的前提条件
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 11:44:53 | 显示全部楼层
    看帮助:
    $1 = 第一个建筑的双字值(数位0-3) (见 格式 BL)
        $2 = 第二个建筑的双字值(数位4-5) (见 格式 BL)

    这里把(0-3) (4-5) 的前置条件分成2类了.
    对应格式 BL的左边第一列的数字.

    该用户从未签到

    2455

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13883

    TE先驱

     楼主| 发表于 2013-5-20 11:58:32 | 显示全部楼层
    有点明白了:
    再贴个脚本,这是高级蛮牛不需要资源仓库和市场的:

    ; Upgrade gorgons w/o Resourse Silo and Marketplace
    !!CD:B1/7/41/?y1/d; read value
    !!FU23022:P14; v6100 = 2^14
    !!VRy2:S-1*v6100-1;
    !!VRy1:&y2; reset 14th bit
    !!VRy2:S-2*v6100-1;
    !!VRy1:&y2; reset 15th bit
    !!CD:B1/7/41/y1/d; write back new value

    因为资源仓库和蛮牛建筑跨越较多,可以类似箭手和枪兵?

    另外你现在用的这个办法是读取枪兵的前置给箭手,这个办法可以通用到其他所有兵种吗?

    用取消对应前置建筑的办法还有可能(1-2级兵)吗?感觉这个办法还是更精确一些。

    该用户从未签到

    2455

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13883

    TE先驱

     楼主| 发表于 2013-5-20 12:12:36 | 显示全部楼层
    就是处理这种目标建筑和前置建筑在第一行数字有跨度的——0-3、4-5有啥简单的办法
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 12:32:29 | 显示全部楼层
    泰坦兄,倒数第二个参数是修改(0-3),最后参数修改(4-5)建筑,如果涉及跨度,则两个参数都要改。我下午再说说倒数笫二参数是怎么用的,现在在外。
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 12:35:36 | 显示全部楼层
    泰坦兄,倒数第二个参数是修改(0-3),最后参数修改(4-5)建筑,如果涉及跨度,则两个参数都要改。我下午再说说倒数笫二参数是怎么用的,现在在外。

    该用户从未签到

    2455

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13883

    TE先驱

     楼主| 发表于 2013-5-20 13:40:15 | 显示全部楼层

    回复 16# 的帖子

    非常感谢,这个问题要能搞通(取消或添加前置建筑),可以给te做很多有趣的改变。

    [ 本帖最后由 titanzwh 于 2013-5-20 13:45 编辑 ]
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4951

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34692

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

    发表于 2013-5-20 15:47:09 | 显示全部楼层
    我单独开一个帖子说明一下吧.
    这样大家都方便使用了.
    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

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

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

    GMT+8, 2025-5-2 17:45 , Processed in 0.635440 second(s), 14 queries , Gzip On, File On.

    Powered by Discuz! X3.4

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

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