求教分析修改前置建筑中的一些值是怎么计算的?
下面是一些例子:;独眼不需要食人魔巢穴
!!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 编辑 ] 哦,我大概明白了,是数位变负再减一?对应的是这个玩意吧
0x00000001 = 1
0x00000002 = 2
0x00000004 = 4
0x00000008 = 8
0x00000010 = 16
0x00000020 = 32
0x00000040 = 64
0x00000080 = 128
0x00000100 = 256
……
[ 本帖最后由 titanzwh 于 2013-5-20 01:43 编辑 ] 我写的***人类***
;弓箭手不需要枪兵
!!CD:B1/0/31/d/?y1; 读取
!!VRy1:&-65; 置数
!!CD:B1/0/31/d/y1; 重置
岗楼的数位是40,对应为65,为什么进游戏无效呢?? 我前晚都说你了,非不相信。何必难为自己;hej; 我只是想说明一下 &负数的意义.
比如 &-65;
相对于先检测是否包含64,若包含64则去掉64这个标志.
!!VRy1:S65;
!!VRy1:&-65; [检测y1是否包含64的标志,若包含则减去64标志]
对等于
!!VRy1:S65;
!!VRy2:Sy1 &64;
!!VRy1&y2>0:-64;
回复 我回帖我光荣 4# 的帖子
不靠自己,难道还能靠你么:deyi:回复 论坛兴旺玩家受益 5# 的帖子
!!VRy1:S65; 这句好像其他去建筑的句子里面都没写,但也生效了。另外,你知道
!!CD:B1/6/42/d/?y1;
和
!!CD:B1/6/42/?y1/d;
这两种顺序调整有什么用吗? 泰坦兄.
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 编辑 ] 有一个地方不太明白,
“最后那个参数是数位 4-5,也就是最少从巢穴 3(32)打后的巢穴前提数据. ”
就是说从4级-7级兵的前置建筑都好用这种方法调整,2级兵之前会有一些变化? 刚才又研究了倒数第二个参数,大概也明白了.
我再研究一下,用十进制是怎么表达倒数第二个参数的.
回到泰坦的那个问题,如何使箭手不需要岗楼.
箭手除了需要岗楼外的前提条件,跟枪兵的前提条件是一样的.
所以只需要把枪兵的前提条件按到箭手上就对了.
比如:
ZVSE
!?PI;
!!CD:B1/0/30/?y1/d; 读取枪兵的前提条件
!!CD:B1/0/31/y1/d; 重置箭手的前提条件
测试时候可以看到,枪兵的前置条件值是 128.
而实际枪兵需要的前提建筑是壁垒,正是128 (即80数位)
这下应该大概明白了吧.
回复 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; 重置箭手的前提条件 看帮助:
$1 = 第一个建筑的双字值(数位0-3) (见 格式 BL)
$2 = 第二个建筑的双字值(数位4-5) (见 格式 BL)
这里把(0-3) (4-5) 的前置条件分成2类了.
对应格式 BL的左边第一列的数字. 有点明白了:
再贴个脚本,这是高级蛮牛不需要资源仓库和市场的:
; 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级兵)吗?感觉这个办法还是更精确一些。 就是处理这种目标建筑和前置建筑在第一行数字有跨度的——0-3、4-5有啥简单的办法 泰坦兄,倒数第二个参数是修改(0-3),最后参数修改(4-5)建筑,如果涉及跨度,则两个参数都要改。我下午再说说倒数笫二参数是怎么用的,现在在外。 泰坦兄,倒数第二个参数是修改(0-3),最后参数修改(4-5)建筑,如果涉及跨度,则两个参数都要改。我下午再说说倒数笫二参数是怎么用的,现在在外。
回复 16# 的帖子
非常感谢,这个问题要能搞通(取消或添加前置建筑),可以给te做很多有趣的改变。[ 本帖最后由 titanzwh 于 2013-5-20 13:45 编辑 ] 我单独开一个帖子说明一下吧.
这样大家都方便使用了.
页:
[1]