佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 3400|回复: 15

CD:B1修改前置建筑条件的具体方法

[复制链接]
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4948

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34653

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

    发表于 2013-5-20 15:52:38 | 显示全部楼层 |阅读模式
    本帖最后由 贤知有您 于 2013-12-27 13:38 编辑

    先看帮助内容
    CD:B1/#1/#2/$1/$2
        #1 = 城镇类型 (见 格式 T)
        #2 = 建筑物类型 (见 格式 BL)
        $1 = 第一个建筑的双字值(数位0-3) (见 格式 BL)
        $2 = 第二个建筑的双字值(数位4-5) (见 格式 BL)

    在BL格式列表中,最左的一列代表数位.
    所以,前置建筑数位(0-3)的值包含在 $1参数中,(4-5)的值包含在 $2参数中.
    若前置建筑没有(4-5)数位的建筑,则$2的参数可直接写0.

    附件列出了所有建筑对应的实际值,要设置多个前置建筑值,只需把对应的值相加就行了.

    先来验证一下,人族的7级兵低级巢穴的前置建筑值(条件).
    首先可直接用脚本获得该值:
    ZVSE
    !?PI;
    !!CD:B1/0/36/?y1/?y2; 读取
    !!IF:M^%Y1 - %Y2^;
    这里
    Y1=1073807489
    Y2=6


    对应的(0-3)前置建筑是:
    堡垒 (128)
    一级魔法行会 (1)
    铁匠铺 (65536)
    岗楼 (2147483648)
    2147483648+65536+128+1=1073807489

    对应的(4-5)前置建筑:
    兵营(4级巢穴) (2)
    寺院(5级巢穴) (4)
    2+4=6
    -----------------------------------------------------------------------------------
    举例:
    例子一:
    人族的二级低级巢穴不需要岗楼条件(1级低级巢穴)

    最直接的脚本
    (在正常情况下,以下脚本正确,但当有其它脚本修改过这个值时,直接减法脚本会很危险)
    ZVSE
    !?PI;
    !!CD:B1/0/31/?y1/?y2; 读取
    !!VRy1:-1073741824; [直接减去巢穴1的值]
    !!CD:B1/0/31/y1/d;


    当然为了慎重起见,脚本应这样写:
    ZVSE
    !?PI;
    !!CD:B1/0/31/?y1/?y2; 读取
    !!VRy3:Sy1 &1073741824;
    !!VRy1&y3>0:-1073741824; [若第1巢穴是前提,则去掉这个前提]
    !!CD:B1/0/31/y1/d;
    或者(&-数值的语法)
    把1073741824 加1 再变负数
    ZVSE
    !?PI;
    !!CD:B1/0/31/?y1/?y2; 读取
    !!VRy1:&-1073741825; [与上面语句功能一样]
    !!CD:B1/0/31/y1/d;


    例子二:
    高级蛮牛不需要物资仓库和市场.

    物资仓库和市场都属于(0-3)建筑

    ZVSE
    !?PI;
    !!CD:B1/7/41/?y1/d;  
    !!VRy2:Sy1 &32768;
    !!VRy1&y2>0:-32768; [最好各个值分别检测]
    !!VRy2:Sy1 &16384;
    !!VRy1&y2>0:-16384;
    !!CD:B1/7/41/y1/d;

    ZVSE
    !?PI;
    !!CD:B1/7/41/?y1/d;  
    !!VRy1:&-32769; [物资仓库]每个数值都要单独负数一次
    !!VRy1:&-16385; [市场]
    !!CD:B1/7/41/y1/d;


    例子三:
    人族的狮鹫不需要兵营条件

    兵营属于(4-5)的建筑(数值2),所以更改的是最后一个参数
    ZVSE
    !?PI;
    !!CD:B1/0/32/d/?y1; 读取
    !!VRy1:&-3;
    !!CD:B1/0/32/d/y1;


    最后一点:
    如果所需的前提混合了(0-5)的建筑,那么最后2个参数要分别按照上面规则来设置.


    具体的参数表
    (注:EXCEL数值表最后几个数字有误,具体参考下面帖子的表格值)
    CA-B1数位值列表OK.rar (3.84 KB, 下载次数: 40)




    [ 本帖最后由 贤知有您 于 2013-5-29 09:04 编辑 ]

    评分

    1

    查看全部评分

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

    连续签到: 1 天

    [LV.5]女巫

    4948

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34653

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

     楼主| 发表于 2013-5-20 15:55:21 | 显示全部楼层
    字节
    字节数位编号建筑名称 (城镇编号)
    如果没有写则没有
    实际值
    010一级魔法行会1
    021二级魔法行会2
    042三级魔法行会4
    083四级魔法行会8
    0104五级魔法行会16
    0205酒馆32
    0406船坞(0,4,7,8)
    64
    0807壁垒128
    118大本营256
    129城堡512
    1410议事堂1024
    1811内政厅2048
    11012议会4096
    12013国会8192
    14014市场16384
    18015资源仓库32768
    2116铁匠铺65536
    2217灯塔(0)
    魔幻池(1)
    宝物商人(2,5,8)
    黑暗天幕(4)
    遁逸之路(6)
    战神之栏(7)
    131072
    2418为低级生物提高产量的建筑:
    狮鹫(0)
    矮人(1)
    石人(2)
    小怪物 (3)
    骷髅(4)
    穴居者(5)
    大耳怪(6)
    狼人(7)
    小精灵(8)
    262144
    2819为高级生物提高产量的建筑:
    皇家狮鹫(0)
    战斗矮人(1)
    铁人(2)
    大怪物 (3)
    骷髅勇士(4)
    地狱穴居者(5)
    大耳怪王(6)
    狼人王(7)
    大精灵(8)
    524288
    22021马场(0)
    幸运泉(1)
    了望塔(2)
    硫云风暴(3)
    招魂塔(4)
    魔力旋涡(5)
    自由职业者协会(6)
    恐怖浮雕(7)
    魔法学院(8)
    2097152
    24022兄弟会(0)
    金库(1)
    图书馆(2)
    城镇大门 (3)
    骷髅转换场(4)
    召唤之门(5)
    弩车工场(6)
    血塔(7)
    4194304
    28023知识强(2)
    烈火神柱(3)
    斗士学院(5)
    英烈祠(6)
    8388608
    3124为低级生物提高产量的建筑:
    枯木卫士(1)
    地狱猎犬 (3)
    16777216
    3225为高级生物提高产量的建筑:
    枯木战士(1)
    三首猎犬 (3)
    33554432
    3426神迹67108864
    34030巢穴 1
    1073741824
    38031巢穴 2
    2147483648
    4132巢穴 3
    1
    4233巢穴 4
    2
    4434巢穴 5
    4
    4835巢穴 6
    8
    41036巢穴 7
    16
    42037高级巢穴 1
    32
    44038高级巢穴 2
    64
    48039高级巢穴 3
    128
    5140高级巢穴 4
    256
    5241高级巢穴 5
    512
    5442高级巢穴 6
    1024
    5843高级巢穴 7
    2048


    [ 本帖最后由 贤知有您 于 2013-5-29 09:03 编辑 ]
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

    发表于 2013-5-20 16:42:03 | 显示全部楼层
    前面3个参数,我经常用,后面的2个,之前还真不知道是什么意思。现在明白啦。辛苦了,贤知大师。

    该用户从未签到

    2454

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13873

    TE先驱

    发表于 2013-5-20 23:34:48 | 显示全部楼层
    好东西,先顶后看……

    该用户从未签到

    2454

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13873

    TE先驱

    发表于 2013-5-21 00:00:00 | 显示全部楼层
    没想到是用“实际值”,erm帮助里似乎也没写要用这么大的数值,所以就陷入迷茫了,还有给建筑添加建筑的方法嘛?
    另外
    !?PI;这个是起到什么作用呢,我看脚本里不大用


    [ 本帖最后由 titanzwh 于 2013-5-21 00:07 编辑 ]

    该用户从未签到

    2454

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13873

    TE先驱

    发表于 2013-5-21 00:09:53 | 显示全部楼层
    还想知道 /y1/d 中的d是啥意思呢,和y1,y2有什么区别没有?

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

    连续签到: 1 天

    [LV.5]女巫

    4948

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34653

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

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

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

    PI触发器有点类似 !#的说明,但运行在 !# 之后,在大地图呈现之前.

    还想知道 /y1/d 中的d是啥意思呢,和y1,y2有什么区别没有?
    d原来主要用于 数值的增加,比如某语法参数用 d8 表示在原有值的基础上加8.
    这里单用一个d只是充当填充参数作用,不改变任何值.
    这在不清楚原值而又必须输入参数的情况下非常好用.
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4948

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34653

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

     楼主| 发表于 2013-5-21 09:18:42 | 显示全部楼层

    回复 发帖回帖人人有责 6# 的帖子

    在设置前置建筑之前, 最好先用检测语法看看原本的 值是多少
    (就是说看看原本包含了什么前置建筑, 结合游戏中的描述可详细得到,最容易漏掉的是壁垒)
  • TA的每日心情
    开心
    2017-3-5 04:48
  • 签到天数: 17 天

    连续签到: 1 天

    [LV.4]狂狼人

    387

    回帖

    8203

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    2905
    发表于 2013-5-21 15:19:29 | 显示全部楼层
    得 学习学习!

    该用户从未签到

    2454

    回帖

    5万

    金币

    7

    精华

    版主

    Rank: 10Rank: 10Rank: 10

    积分
    13873

    TE先驱

    发表于 2013-5-29 00:49:12 | 显示全部楼层
    经测试,高级巢穴 4 后面的数值应该继续是128的倍数顺下来。
    NH3简介:http://www.wakeofgods.com/thread-22343-1-1.html
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4948

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34653

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

     楼主| 发表于 2013-5-29 09:02:32 | 显示全部楼层

    回复 10# 的帖子

    你说得很正确.
    我忘记写 4-5的建筑的值了, 只关心0-3的值.呵呵
  • TA的每日心情
    奋斗
    2015-3-3 15:36
  • 签到天数: 24 天

    连续签到: 1 天

    [LV.4]狂狼人

    342

    回帖

    8496

    金币

    0

    精华

    2级 Adventuring Hero

    Rank: 2

    积分
    443
    发表于 2013-5-29 15:49:03 | 显示全部楼层
    新手来学习下
  • TA的每日心情
    开心
    2014-1-12 14:09
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]投石矮人

    8

    回帖

    6018

    金币

    0

    精华

    1级 Hired Hero

    Rank: 1

    积分
    64
    发表于 2014-1-15 20:06:05 | 显示全部楼层
    本帖最后由 yingxiong 于 2014-1-15 20:20 编辑

        好像看懂了...可是最后一个例子又晕了....  求帮助...

    例子三:
    人族的狮鹫不需要兵营条件
    兵营属于(4-5)的建筑(数值2),所以更改的是最后一个参数
    ZVSE
    !?PI;
    !!CD:B1/0/32/d/?y1; 读取
    !!VRy1:&-3;就是这里有疑惑.
    !!CD:B1/0/32/d/y1;

    这个例子中,兵营的实际参数不是2吗?
    123.jpg
    这个3是找的哪个值呢?  ...我在看答案前,自己写的是!!VRy1:&-2;         难道我前面理解的都是错的0 0 .....求问3怎么来的



    .....啊..为什么我直接复制粘贴进去实验...  提示wog化脚本前就报错?? 1234.jpg

    还有格式省略了?   额...    抱歉.  急于解决建筑物条件问题....   囫囵吞枣学的.    我看第一,二个例子好像明白了框架,
    大致是根据一个公式,将某个存储量读出来,然后减去相关的参数,再根据一个公式写入原本存储中去.     额..我就欠缺修改建筑条件知识了.我的"烂透顶"地图就可以完成了..嘿嘿...
    超大双重地图.......I like
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4948

    回帖

    3万

    金币

    35

    精华

    超级版主

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

    积分
    34653

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

     楼主| 发表于 2014-1-15 22:56:10 来自手机 | 显示全部楼层
    手机码字。楼上的兄弟,数值2是没错,但你没明白所谓标志的处理。当要增加一个标志2,不论原数是否包含2这个标志,则用|2语法。它相当于&2检测是否带2标志,没有则+2。同理,当想剔除一个数值中的2标志,一般做法是先&2判断是否包含2标志,若包含则-2。也可以直接用&-3达到相同效果,具体就是&一个2置负再减1的数。这些属于erm语法。希望对你有帮助。

    点评

    36..36.不是32..汗,一激动....  详情 回复 发表于 2014-1-15 23:31
    诶多.....差...差不多明白点了..嘿嘿...我..我再请问下..如果我要做到这个效果,我这么写对不对.(我想要城堡的云层云建筑条件为:先做1级魔法会,铁匠铺其余无) ZVSE !?PI; !!CD:B1/0/32/d/?y1; 读取 !!VRy1:&-7;  详情 回复 发表于 2014-1-15 23:25
  • TA的每日心情
    开心
    2014-1-12 14:09
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]投石矮人

    8

    回帖

    6018

    金币

    0

    精华

    1级 Hired Hero

    Rank: 1

    积分
    64
    发表于 2014-1-15 23:25:47 | 显示全部楼层
    本帖最后由 yingxiong 于 2014-1-15 23:29 编辑
    贤知有您 发表于 2014-1-15 22:56
    手机码字。楼上的兄弟,数值2是没错,但你没明白所谓标志的处理。当要增加一个标志2,不论原数是否包含2这 ...

    诶多.....差...差不多明白点了..嘿嘿...我..我再请问下..如果我要做到这个效果,我这么写对不对.(我想要城堡的云层云建筑条件为:先做1级魔法会,铁匠铺其余无)

    ZVSE
    !?PI;
    !!CD:B1/0/36/d/?y1; 读取,7级巢穴是36
    !!VRy1:&-7;  兵营是2,祭祀是4,再减1,总共是7
    !!CD:B1/0/36/d/y1;


    额..我这么写进事件里后,游戏开始时,就提示我语法错误....


    超大双重地图.......I like
  • TA的每日心情
    开心
    2014-1-12 14:09
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]投石矮人

    8

    回帖

    6018

    金币

    0

    精华

    1级 Hired Hero

    Rank: 1

    积分
    64
    发表于 2014-1-15 23:31:07 | 显示全部楼层
    贤知有您 发表于 2014-1-15 22:56
    手机码字。楼上的兄弟,数值2是没错,但你没明白所谓标志的处理。当要增加一个标志2,不论原数是否包含2这 ...

    36..36.不是32..汗,一激动....
    超大双重地图.......I like
    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

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

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

    GMT+8, 2024-6-17 09:57 , Processed in 0.786637 second(s), 22 queries , Gzip On, File On.

    Powered by Discuz! X3.4

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

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