logo资料库

wow中的宏命令大全.pdf

第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
资料共22页,剩余部分请下载后查看
一、 基本宏命令
1. 什么是宏?
2. 怎样写宏?
3. 施放法术
i. 关于技能名称和等级的说明
4. 使用物品或者饰品
i. /use <装备栏>
ii. /use <背包> <栏>
5. 集成多个动作
6. 选择目标
i. 其他选择命令
7. 控制宠物
i. /petattack
ii. /petfollow
iii. /petpassive, /petdefensive 和 /petaggressive
iv. /petautocaston 和 /petautocastoff
8. 宏在动作栏的显示控制
9. 其他的命令
i. 装备物品
ii. 队列施法或使用物品
iii. 随机施法或使用物品
iv. 攻击
v. 技能栏控制
vi. 移除增益效果
vii. 退出形态
viii. 中止施法
ix. 终止一个宏:/stopmacro
x. 解散坐骑
xi. 保存一个目标用于后续动作
xii. 模拟点击
10. 进阶:脚本
i. 脚本有哪些限制?
ii. 什么是脚本?
二、 命令条件语
1. 什么是命令条件语?
2. 可以使用条件语的命令
3. [target=]条件语
4. 语法
i. 条件语语法简介
ii. 条件语法
iii. 完整的EBNF语法
iv. 参数为空
v. 条件为空
vi. [target=]条件语与命令参数
5. 命令条件语
i. 总表
ii. 敌/友(help / harm)
iii. 存在(exists)
iv. 死亡(dead)
v. 姿态(stance:0/1/2/…/n)
vi. 潜行(stealth)
vii. 功能键状态(modifier:shift/ctrl/alt)
viii. 功能键变量
ix. 点击状态(button:1/2/…/5/<虚拟按键号>)
x. 装备(equipped:<物品类型>)
xi. 引导中(channeling:<技能名称>)
xii. 技能条(actionbar:1/…/6)
xiii. 宠物(pet:<宠物名称或类型>)
xiv. 战斗(combat)
xv. 行动方式、室内外状态(mounted, swimming, flying, indoors & outdoors)
xvi. 允许飞行 (flyable)
xvii. 小队/团队队友(party/raid)
xviii. 在小队/团队中(group:party/raid)
6. 命令条件语的应用
i. 设置焦点(focus)
ii. 用/click进行分支判定
三、 附录
1. 自定义图标
2. 宏的移植
3. 更多信息
4. 鸣谢
5. 译者注
考格威尔(Cogwheel's)宏命令完全指南 Cogwheel著 WOWWiki共享维护 Subelf译 版权所有 请勿用于商业用途 一、 基本宏命令......................................................................................................................3 1. 什么是宏? ..................................................................................................................3 2. 怎样写宏? ..................................................................................................................3 3. 施放法术 ......................................................................................................................4 i. 关于技能名称和等级的说明...............................................................................4 4. 使用物品或者饰品 ......................................................................................................5 i. /use <装备栏>........................................................................................................5 ii. /use <背包> <栏> .................................................................................................5 5. 集成多个动作 ..............................................................................................................5 6. 选择目标 ......................................................................................................................6 i. 其他选择命令.......................................................................................................6 7. 控制宠物 ......................................................................................................................7 i. /petattack ................................................................................................................7 ii. /petfollow..............................................................................................................7 iii. /petpassive, /petdefensive 和 /petaggressive......................................................7 iv. /petautocaston 和 /petautocastoff .......................................................................7 8. 宏在动作栏的显示控制 ..............................................................................................7 9. 其他的命令 ..................................................................................................................8 i. 装备物品...............................................................................................................8 ii. 队列施法或使用物品..........................................................................................8 iii. 随机施法或使用物品.........................................................................................9 iv. 攻击.....................................................................................................................9 v. 技能栏控制..........................................................................................................9 vi. 移除增益效果.....................................................................................................9 vii. 退出形态............................................................................................................9 viii. 中止施法 ........................................................................................................10 ix. 终止一个宏:/stopmacro.................................................................................10 x. 解散坐骑............................................................................................................10 xi. 保存一个目标用于后续动作...........................................................................10 xii. 模拟点击..........................................................................................................10 进阶:脚本.....................................................................................................11 i. 脚本有哪些限制?.............................................................................................11 ii. 什么是脚本?....................................................................................................11 二、 命令条件语....................................................................................................................12 1. 什么是命令条件语? ................................................................................................12 2. 可以使用条件语的命令 ............................................................................................12 3. [target=]条件语 ..........................................................................................................13 4. 语法 ............................................................................................................................13 i. 条件语语法简介.................................................................................................14 ii. 条件语法............................................................................................................14 10.
iii. 完整的 EBNF 语法 ..........................................................................................15 iv. 参数为空...........................................................................................................15 v. 条件为空............................................................................................................15 vi. [target=]条件语与命令参数..............................................................................15 5. 命令条件语 ................................................................................................................16 i. 总表.....................................................................................................................16 ii. 敌/友(help / harm)..............................................................................................16 iii. 存在(exists).......................................................................................................17 iv. 死亡(dead).........................................................................................................17 v. 姿态(stance:0/1/2/…/n)......................................................................................17 vi. 潜行(stealth)......................................................................................................17 vii. 功能键状态(modifier:shift/ctrl/alt)..................................................................17 viii. 功能键变量 ....................................................................................................18 ix. 点击状态(button:1/2/…/5/<虚拟按键号>)......................................................18 x. 装备(equipped:<物品类型>).............................................................................18 xi. 引导中(channeling:<技能名称>).....................................................................18 xii. 技能条(actionbar:1/…/6).................................................................................19 xiii. 宠物(pet:<宠物名称或类型>) .......................................................................19 xiv. 战斗(combat) ..................................................................................................19 xv. 行动方式、室内外状态(mounted, swimming, flying, indoors & outdoors) ..19 xvi. 允许飞行 (flyable).........................................................................................19 xvii. 小队/团队队友(party/raid) ............................................................................19 xviii. 在小队/团队中(group:party/raid).................................................................19 6. 命令条件语的应用 ....................................................................................................19 i. 设置焦点(focus) .................................................................................................19 ii. 用/click 进行分支判定......................................................................................20 三、 附录 ...............................................................................................................................22 1. 自定义图标 ................................................................................................................22 2. 宏的移植 ....................................................................................................................22 3. 更多信息 ....................................................................................................................22 4. 鸣谢 ............................................................................................................................22 5. 译者注 ........................................................................................................................22
一、 基本宏命令 1. 什么是宏? /say (/s) /whisper(/w, /talk, /t) /emote(/e, /em, /me) /dance 宏是由一组宏命令组成的。以下是一些普通宏命令: 喜爱 PVP 的人,应该不会忘了这个:/spit 利用宏,我们可以把这些宏命令放到技能栏上点击使用,而且可以同时做多个动作。 写宏的时候,每条动作写在一行上,就像在聊天界面中输入的一样。比如,让你的角色 喊一声“Everybody, dance now!”然后开始跳舞的宏: /y Everybody, dance now! /dance 一个基本完整的宏命令列表可以参考这里:《宏命令全表》,不过个别新添加的宏 命令还没有被收录。WoWWiki有很多关于宏的资料,尤其是脚本和/run命令(后面将会 提到)。 注:我先在此说一下,宏的执行是立即进行的。这意味着当你点击技能栏上的一个 宏时,宏命令会一条接一条地执行,执行完后才会返回游戏控制。这将会产生两个重要 问题:第一,如果写了一个会执行很长时间的宏(如:/run for i=1, 1000000000 do end), 游戏会被卡死,直到它执行结束;第二,也是更重要的一点,那就是宏命令不可能具有 延时功能。这一现象在我们熟悉/cast 之类的命令后就可以很清楚地感觉到。而一些提供 了延时执行命令功能的插件,只能是能执行一些所谓的“良性命令”,如交谈、表情和对 于其他插件命令的调用(不过战斗中更换武器是可以进行的)。 2. 怎样写宏? 首先,打开你的宏窗口:单击主菜单上的“宏”按钮,或者在聊天界面中输入/macro (/m)回车。在宏窗口的顶端,可以看见两个标签:“通用宏”和“<你的角色名>的专 用宏”。通用宏被存储在账号专有的文件夹中,被所有角色共享。而角色专用宏则存储在 角色自己的文件夹下,是角色专用的(废话……囧)。在标签下面是 18 个存放宏的栏位。 再往下是一个栏位,用于显示当前选中的宏;还有一个“修改名称/图标”的按钮,用于 修改选中的宏。然后是一个用于显示、编辑当前宏的文本框。最下面是三个按钮,傻子 也能看出它们是干什么的。 如果要创建一个宏,首先单击窗口下方的“新建”按钮,这时窗口旁边会显示一个 对话框,用于选择图标和输入宏的名称。如果选择了第一个图标(就是那个很红很暴力 的问号),WoW 会自动根据你宏命令中涉及的技能或物品选择图标。选好图标,输入完 名称,就可以单击“确定”按钮了。 顺便提几点:1.使用问号图标的宏,可以通过使用#show指定显示的图标。2.虽然可 以给不同的宏起相同的名字,但是最好不要这样做。因为有些插件和宏命令是通过宏名 称来调用宏的。3.在图标列表中可以添加自定义的图标。 现在,你选择的宏图标被显示在栏位中了(还会显示部分宏名称)。同时,新建的宏 被选中,图标显示在当前选中宏的栏位中:现在你可以写你的宏了。单击编辑文本框, 然后输入吧。
注:宏限定为 255 个字符,传闻这样做是为了以后可以把用户的宏上传到服务器中。 不过……现在能做的就是遵循这个限定,至于想要把宏移植到其他机器上使用,请参见 第三部分的宏的移植。 写完宏以后,只要把它的图标拖放到技能栏中就可以了。当你执行一个宏,或者是 关闭宏窗口的时候,宏都会自动保存的。现在点击宏的图标,看看效果吧! 3. 施放法术 在正常游戏过程中,很多宏命令通过聊天窗口输入使用似乎并不好用,但是在宏中 就不一样了。在特定场合下,简简单单的表情宏也可以产生有趣的角色扮演效果哦,那 么,继续看…… 这个:/cast,它是最常见的宏命令了。作用嘛,就是施放一个技能书中的技能(包 括宠物的)。最简单的用法就是这样: /cast 暗言术:痛 把这个宏放到技能栏上点击,将会对目标施放你最高级的痛。这和把技能书中的痛 拖到技能栏上,然后点击的效果是一样的。我们制作的宏同样会在技能栏显示你的技能 冷却状态和射程状态,点击后同样能正确的施放痛。如果宏使用了问号图标,那么还同 样会显示痛原有的图标。 那直接用技能不就行了么,何必用宏呢?继续看,在宏中通过集成多条命令可以产 生什么效果吧,这才是宏的价值所在。比如说你是个法师,想让队友知道你要羊掉谁, 你该怎么办?用宏吧,一个简单的/p命令加上一个/cast就可以了(使用这个无耻的插件 可以达到更好的效果:CCWarn,不过我们现在需要的只是这个简单易懂的教学例子): /cast 变形术 /p 我羊了%t!谁打谁扛着哈! 注:由于宏的执行是立即进行的,所以不管目标是否有效技能是否冷却,宏被点击 时/p命令就执行了,也就是说这两行命令的顺序颠倒后效果是相同的。如果你想在确定 成功施放一个技能后才执行某条命令,你可以试试这个插件:AfterCast。AfterCast可以 设定在施放某个技能后执行一条宏命令,当然,是在第 1 节末尾所提到的限制之下的。 如: /aftercast /p 请队友点门,把懒猪%t 揪过来! /cast 召唤仪式 i.关于技能名称和等级的说明 /cast 命令对技能名称是十分严格的,文字、标点、空格,一个都不能错。为了防止 出错,编辑宏时,你可以打开你的技能书,按下 Shift 然后单击你的技能图标,技能名称 和等级就会被正确地输入到你的宏编辑文本框中,如: /cast 暗言术:痛(等级 5) 如果把“(等级 5)”删掉,宏在执行时就会自动选择你最高级别的技能执行;不过在 很多场合下,还是需要指定级别的技能,比如术士放逐就需要根据时间来选择技能。另 外要注意,等级指示中使用的括号是英文的半角括号,等级与数字间有一个半角空格。 而一些技能名称中的括号,比如“精灵之火(野性)”中的括号,是中文的全角括号。以 下宏命令不能正常执行: /cast 精灵之火(野性) /cast 精灵之火(野性)(等级 1) 而以下的命令是正确的: /cast 精灵之火(野性) /cast 精灵之火(野性)() 空的括号效果和没有括号是一样的。由于 255 字符限制的存在,空间还是要节省的,
所以空括号可以删掉了…… 4. 使用物品或者饰品 使用物品和饰品和施放法术是类似的。用于使用物品的命令是/use,后面只需要加 上物品的名字就可以了。例如: /use 绿色机械陆行鸟 另外,还有以下其它的使用格式: i./use <装备栏> 这种格式可以使用指定装备栏中的物品。具体使用请参见《装备栏编号方式》。例 如: /use 13 使用第一个饰品。 ii./use <背包> <栏> 这种形式是在指定背包中确定物品栏的,比如你总是把猫食狗粮放在行囊的第一个 栏位中,那么你就可以用这样的宏来喂养宠物: /cast 喂养宠物 /use 0 1 背包的编号为 0-4,顺序是从右到左,即 0 是行囊。物品栏则是从上到下从左到右, 从 1 开始依次编号的(与书写顺序相同): 4 8 2 6 4 8 3 7 1 5 …… 或者是: 1 5 3 7 9 …… 如果怕把/cast 和/use 的用法混淆了,那就彻底搞混吧,因为它们其实本来就是完全 一样。/cast 可以使用物品,而/use 也可以施放技能。这一点在目前看来似乎没有什么, 但是到后面,介绍命令条件语和施法队列时,你会发现能把物品和技能混合在同一条命 令中是多么爽的一件事。 2 6 10 5. 集成多个动作 首先,在一个宏中想一键释放多个法术是不行的。大多数技能和很多物品会触发公 共冷却(GCD),防止你同时做太多的动作。即使一个技能释放失败,如果它可以触发 GCD,那么它也会阻止后续/cast 命令的执行。这是 2.0 版本之后的设定,之前可能看到 这样的宏: /cast 压制 /cast 斩杀 /cast 致死打击 /cast 破甲 但是现在,记住,这种宏已经不能正常执行了。如果压制施放失败,虽然没有触发 GCD,客户端也不会继续执行后续的技能施放。不过令人欣慰的是部分技能还是可以集 成到一个宏中。任何不触发 GCD 的瞬发技能后面可以接上另一个技能(“下次近战攻击” 型的技能,如英勇打击也归于此类)。一个技能可以通过看说明知道它是否瞬发,至于是
它是否触发 GCD 通过实验就可以知道。 2.3 版本之前,在这个瞬发无 GCD 技能之后需要加上一个/stopcasting 才可以施放其 后的技能。施放第一个技能后,游戏客户端会认为当前在施法状态,而/stopcasting 就可 以解除这个状态,就可以解决后续技能不能释放的问题。但是由于技能是瞬发, /stopcasting 实际上并不能取消技能的施放。 而现在这里可以不用/stopcasting 了,例如: /use 短暂能量护符 /cast 奥术强化 //stopcasting /cast 气定神闲 //stopcasting /cast 炎爆术 6. 选择目标 选择目标是宏的另一个主要作用。此类功能可以用专门的目标选择命令实现,改变 当前的目标;也可以在一些命令中用[target=]命令条件语实现,临时指定施法或使用物品 的目标,而不改变当前目标。命令条件语在第二部分将会讲到到。现在我先介绍目标选 择命令。 最基本的命令是/target,用法如下: /target Cogwheel /target 的选择是经过最佳相近匹配的,也就是说,如果我正站在你附近(并且附近 没有谁叫 Cog 的),你执行/target Cog,我就会变成你的当前目标。至于这种机制是利是 弊……那就取决于实际情况了,因为这个东东貌似不稳定,有时会得到莫名其妙的结果。 比如下面这个宏就可能不是很好用: /target 黑翼法师 /cast 痛苦诅咒 如果附近没有黑翼法师呢?或许结果就是:选中了团里的某个人,因为他的名字在 某种意义上比较相近。虽然你的诅咒不会真对他们放出来,但还是够囧的。另外一个问 题是,它可能会选择你身后一个离你 100 码的单位——根本不是你想选中的那一个…… 不过在 2.3 版之后,增加了一个/targetexact 命令,第一个问题得到解决了。 除了用人名进行选择之外,还可以通过单位标识符进行选择。单位标识符(Unit ID) 是用于标识特定单位的字符串。比如你的当前的目标就可以用“target”来表示,而你自 己对应的标识符是“player”,如果你有宠物,那么它的标识符是“pet”。另外,通过在 一个正确的标识符后加上 target,就可以获取他的目标。如此变态也可以: /target targettargettargettargettargettarget 这里是一个可用ID的全表:《单位标识符》。 i.其他选择命令 以下是其他的目标选择命令: 不加任何其他参数时效果是选择你目标的目标,如果在其后加上人物名称,那么就 /assist 会选择对应人物的当前目标。例如: /assist Cogwheel 另外,在客户端的界面选项中有一个选项,可以设置用/assist 选中一个敌对目标时 是否自动进行攻击。 /cleartarget 清除当前目标。
/targetexact 准确选择,如果附近没有单位的名字和给出的参数完全匹配,就不会切换目标。 顾名思义,分别用来选择上一个目标、上一个友方目标和上一个敌对目标。如果你 /targetlasttarget, /targetlastfriend 和 /targetlastenemy 之前没有过任何目标,那么这些命令不会产生任何影响。 /targetenemy 和 /targetfriend 选择敌方目标和选择友方目标。这两条命令是按一定顺序循环选择指定类型的目标 的,和使用 Tab 键的效果类似。如果在命令后加上一个 1 作为参数,那么就会按循环的 反方向进行选择。例如: /targetenemy 1 效果就和按下 Shift+Tab 键一样。 注:这两个宏命令每个宏中只能用一次。 按距离循环选择你附近的小队或团队队友,与/targetenemy 类似,也可以用 1 作为参 /targetparty 和 /targetraid 数改变选择的循环方向。 7. 控制宠物 之前在讲施放技能的时候提到过,使用/cast 命令可以施放宠物的技能。玻璃渣把法 师的水宝宝的霜星起名叫“冰冻术”就是为了避免和法师自身的“冰霜新星”技能冲突, 从而导致不能在宏内使用。但是有宠物的职业会发现,如果宏只能施放技能的话,甚至 还不如宠物技能栏的功能。别急,燃烧的远征中,新增了以下这些宏指令: i./petattack 让你的宠物去攻击你的当前目标。当然,在命令后加参数可以指定攻击的对象。 ii./petfollow 宠物切换到跟随状态,同时取消攻击。 iii./petpassive, /petdefensive 和 /petaggressive 宠物切换被动、防御和主动攻击状态。同宠物技能栏上的最后 3 个按钮。 iv./petautocaston 和 /petautocastoff 打开/关闭宠物技能的自动施放。例如: /petautocaston 折磨 /petautocastoff 受难 不过美中不足,没有直接切换自动施放状态的宏命令,我将在后面“模拟点击”部 分提到一个解决方法。 8. 宏在动作栏的显示控制 如果一个宏使用问号图标,魔兽世界客户端会默认把宏内容中的第一个技能或物品 的图标、冷却状态等信息显示在技能栏上。比如前面所讲的这个例子:
/use 短暂能量护符 /cast 奥术强化 /cast 气定神闲 /cast 炎爆术 客户端会把奥术强化的状态信息作为宏的状态显示。但是这恐怕不是我们所希望的, 因为这个宏的目的是炎爆,前几行的奥强气定都只是为了最后把一个大大的脸盆给丢出 来。如果在宏的前面加上这样一行,炎爆术就会被当作宏的默认技能: #show 炎爆术 如果使用了问号图标的话,宏还会直接显示炎爆的图标。#show 的参数机制和/cast 类似,可以使用技能名、物品名、物品编号(如 item:12345)、装备栏或者背包+物品栏 编号。 和#item 类似的还有#showtooltip。正常情况下,鼠标指向宏的时候,提示信息显示 的是宏的名字。而这在绝大多数情况下是很不好用的(除非你用了 TheoryCraft 之类的插 件可以显示详细的技能信息)。而用#showtooltip 就可以指定宏在鼠标指向时显示的信息, 用法同#show。另外,如果使用了#showtooltip 的话,就没必要再用#show 了。 如果客户端自动选择的技能符合你的要求,那么可以只用#showtooltip 而不加参数来 显示该技能的说明,这样可以节约空间。 请注意:#show 和#showtooltip 与/开头的宏命令不同,是大小写敏感的,也就是说 只能用小写字母。 9. 其他的命令 现在有了足够的基础,以下这些命令我就只简要地讲解一下了。有些命令看似没啥 用,但如果配合将在第二部分介绍的命令条件语,它将会产生惊人的效果。 i.装备物品 用于装备物品的命令有两个:/equip和/equipslot。/equip的参数为物品名称,效果是 把对应物品装备到默认的装备栏中,类似在背包中右键单击物品(如:一件单手武器就 会被装备到主手上)。而/equipslot的参数为装备栏编号和物品名称,效果是把物品装备到 指定栏位中去。例: 装备武器: /equip 虚空角斧 把饰品装备在第二个饰品栏中: /equip 14 棍子上的胡萝卜 注意:即使是在战斗中,插件页是可以直接使用装备命令的。因此在 AfterCast 和 Chronos 中可以使用装备命令。如果插件内部会检查命令是否经过安全化可能就不那么 好用了,因为它属于“安全化”指令——但是事实上它并没有受到安全限制。 ii.队列施法或使用物品 很多时候我们需要经常按一定顺序使用固定的一些技能或物品。这样的操作是可用 /castsequence 宏命令进行傻瓜化的。/castsequence 命令用法是在后面写上一些技能或物品 的名称,之间用英文的半角逗号分隔,和/use、/cast 类似。技能名、物品名、物品代号、 装备栏代号和背包位代号都可以混合使用。每次执行宏,就使用当前的技能或物品(从 第一个开始),如果成功,队列的当前位置就被移至下一个技能或物品。也就是说需要反 复执行宏来按顺序使用这些技能或物品。当最后一个技能/物品成功使用后,这个队列就 被重置到开头。比如: /castesquence 献祭, 腐蚀术, 痛苦诅咒, 生命通道
分享到:
收藏