返回信息流第一弹在这:http://forum.byr.edu.cn/wForum/disparticle.php?boardName=WOW&ID=60712&pos=6
可惜的是第一个打架赛车宏在新版已经失效了。。似乎抱怨的人比较少,但我却觉得这是一个极大的nerf,再也无法瞬发不降快乐值收宠了
今天蛋疼的看了一上午抽筋宏原理:
完美整合宏:http://bbs.ngacn.cc/read.php?tid=2626540
原理:http://bbs.ngacn.cc/read.php?tid=2658712
其实原理那贴已经把抽筋宏讲清楚了,但是对于我这个菜鸟猎人,第一遍看的一头雾水,回过头去查了下其他贴才慢慢摸清楚原因,又一次因猎人宏的巧妙虎躯一震,试着把来龙去脉写一下给非猎人看(我知道帖子太长应该没人看。。)
本来这宏分为四个版本,是有无橙弓和有无瞄准雕文的组合(2*2个版本)。
小说明一下,有无橙弓,决定奥术射击是否加入循环;有无瞄准雕文,决定瞄准射击cd时间是8秒还是10秒。
这里只把我用的低端无橙弓有瞄准宏放一下:
宏A:
/施放 [mod]准备就绪;!自动射击
/施放 沉默射击
/施放 杀戮命令
/castsequence reset=8/alt 瞄准射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击
/castsequence reset=10/alt 奇美拉射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击
/click MultiBarBottomRightButton12
宏B:
/施放 [mod]准备就绪;!自动射击
/castsequence reset=6/alt 奥术射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击
/施放 稳固射击
/脚本 UIErrorsFrame:Clear()
==================================
这个宏使用时必须把宏B放在技能栏指定出,点宏A就行了。
关于宏的使用结论帝们请看最后的结论
作为一个菜鸟,一下就会注意到这个宏的特殊之处在于,它由两个宏组成,被click MultiBarBottomRightButton12语句联系在一起。我本能的觉得,我草太牛逼了,就这样用一个宏去点击另一个宏来解决抽筋宏问题啊。
如果你也有这种想法,不好意思你也很菜。
============================
先放一放这个问题,首先我觉得我必须先把抽筋宏中心思想明确一下,抽筋宏到底要实现什么样的功能?
无橙弓有瞄准雕文时猎人需要用三个不同cd时间的技能来循环:奇美拉射击10s,瞄准射击8s,奥术射击6s。cd中插入稳固。
所以宏必须实现自动判断技能是否cd的功能
但是,宏并没有提供这样的接口,所以变相的,如果宏能实现自动计时功能,也相当于解决了问题
===================================
抽筋宏里与计时有关的语句就是下面这条:
/castsequence reset=6/alt 奥术射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击
我第一次看到句时再次体现出菜鸟本色,先入为主的以为,不停地按这个宏,6秒后序列重置就行。
但是你可以试试把这条语句单独做成一个宏,然后抽筋按,你会发现reset值无论是,6,7,8,100,奥术射击都只会在执行完所有次数的自动射击后才放出,reset值根本无效。
这是因为,castsequence 中reset的正确理解是:
这条语句没有被执行,reset计时器才会工作。一旦执行了这条语句,reset倒计时就会被重置。
所以当你抽筋按这样一个宏/castsequence reset=x a,b,c,reset根本不起任何作用,宏只会顺序执行abc序列。除非你停手,这时reset才起作用,x秒后施法序列会从a计起。
======================================
现在可以告诉你了click MultiBarBottomRightButton12,唯一的作用是,一个宏下不下太多内容,仅仅是把另一个宏接在这个宏上。两个宏看上去很玄,其实只相当于一个宏罢了。
但是变成两个宏并不是故弄玄虚的。宏之所以长,是因为castsequence里那长长的一串自动射击。
前面已经说了,正常情况下reset是无效的,但是如果是这样:
/*/cast !自动射击中!作用仅仅是打一发自动射击,没有感叹号的话第一次执行时打开自动射击,第二次执行时关闭,所以这是无关紧要的*/
/cast !自动射击
/castsequence reset=8/alt 瞄准射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击,自动射击
你会发现,这时候reset已经有效果了!castsequence后面一长串自动射击本不会执行完,而是在reset时间到得时候自动重置,就仿佛这条语句没有执行一样。
问题就出在自动射击上,由于自动射击无cd无gcd,在执行了第一条自动射击后,castsequence中的自动射击被服务器视为无效,因此这条语句没有执行。
所以抽筋宏的核心机制是:利用自动射击的特殊性,在宏被反复执行的情况下,不去执行castsequence语句,使得reset计时器可以正常工作计时
那一长串自动射击就是为了防止抽筋过多把自动射击执行完,循环序列回到还未冷却的技能上,造成宏卡死而不去执行下面的语句。整条语句的意思仅仅是,n秒后再次执行第一个指令。
=============================
最后说说准备就绪有关的小问题。
准备就绪这个技能师重置所有技能cd。这个宏内整合了进去。我在没有理解抽筋宏原理的时候,都是手动预备,并没用到宏内的预备。因为总感到用了宏内预备这个宏也会被卡住,无法正常工作。
预备后宏要正常工作,castsequence也必须重置才行,不然reset计时器仍然在计时,技能会卡住。
所以在用组合键预备的同时,必须用组合键来使reset计时器重置。
宏内的准备必须按组合键+宏执行,而“/castsequence reset=8/alt”reset条件中有按住alt就reset整个计时条。
我习惯的组合键是ctrl,并不是alt,即使使用ctrl+宏来预备,也无法使reset计时器重置,宏当然被卡住。
关于预备的另一个小点:
在预备时,自动射击的特性又成了我们不需要的,因为我们想要去执行castsequence重置reset,但由于自动射击却重置。
所以加上条件使得 在使用ctrl的时候不去执行第一个自动射击,预备后,宏才能正常工作
开始猎人区一直没能将预备正确的整合进宏,直到有人发现在"/cast !自动射击"这条中加入条件[nomod].
======================
终于写完了。。。写到中间都有点不想写了,因为我知道反正也没人能看完>.<
=========================
补充几点结论给结论帝吧:
1.这个宏就是一个自动计时器,只需改变几个技能reset时间,就可以调整技能使用时间,得到自己想要的循环。比如:有瞄准,就把瞄准reset改成8,否则改成10。或者改成自己计算的值
2.发现卡技能了,可以按一下reset条件中的组合键+宏,让宏重置
3.预备后,必须重置这个宏,用宏+组合键重置
这是一条镜像帖。来源:北邮人论坛 / wow / #85617同步于 2009/9/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WOW机器人发帖
给非猎人看的猎人宏第二弹:3.1.3版本抽筋宏原理
cloudheArt
2009/9/19镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
写的真长,捎带着贴一个野德宏
/console Sound_EnableSFX 0
/startattack
/施放 重殴
/castsequence reset=4 裂伤(熊),重殴,重殴,重殴
/castsequence reset=6 精灵之火(野性),重殴,重殴,重殴,重殴
/castsequence reset=6 割伤,重殴,重殴,重殴,重殴
/施放 横扫(熊)
/console Sound_EnableSFX 1
/脚本 UIErrorsFrame:Clear()
利用重殴类似于自动射击的特性,能够做到计时功能
重殴与自动不同的是重殴一旦释放不能取消,所以第一行并不需要像自动一样加感叹号!
【 在 cloudheArt (fly me to the moon) 的大作中提到: 】
: 第一弹在这:http://forum.byr.edu.cn/wForum/disparticle.php?boardName=WOW&ID=60712&pos=6
: 可惜的是第一个打架赛车宏在新版已经失效了。。似乎抱怨的人比较少,但我却觉得这是一个极大的nerf,再也无法瞬发不降快乐值收宠了
: 今天蛋疼的看了一上午抽筋宏原理:
: ...................