魔兽世界“宏”到底是个什么意思?我自己的感觉就是他类似一个技能组合,能简化玩家的操作。这是如何设定的

这是玩家自己排的吗?应该怎么放?我看别的玩家每用一次宏就会说句话,类似防战的嘲讽,那个T你喊了声,孙子们~!是红字。

什么是宏命令?
说白了就是同时把几个技能热键绑到一起用一个键来代替,就像是一份计划书一样,你事先在里面输入你常用的一些命令,当你想用的时候只

要按下这个键就可以了。

宏命令的设置流程:
首先,回车,再敲/MACRO。看见了吧?会弹出一个窗口,上面有New(新建宏命令)和Complete(完成宏命令)两个按键。点New,又会弹出一

个窗口,哇,花花绿绿的,里面包括了WOW几乎所有的技能图标,随你喜欢,随便选一个!它就是你设置的宏命令的图标了,给它取个名字吧!

方便你用的时候好找。然后回到第一个窗口,在它上面有一个输入菜单(别告诉我找不到…它可是占了这个窗口的一半多…)在里面输入特定

的内容,然后点Complete。接下来你要做的就是把这个代表你宏命令的图标用鼠标左键拉到快捷栏里,想怎么用就怎么用…

延时宏的命令格式: /in 时间 指令
如/in 3 dance,就是在3秒后跳舞,
/say start!
/in 3 say 3s later
/in 6 say 6s later

有了这个指令,就可以实现很多功能了,比如
/p healing %T, need 3s, don''t run away
/cast heal (rank 1)
/in 4 p cured %T 300HP,please notice the enemies turn on me^_^
等治疗完之后提醒别人注意下自己有可能被怪打,不加延时的话,就没这个效果了。

------

另外,
介绍下/script命令,格式:/script 函数;
http://www.cosmosui.org/texts/BlizzardCommands.xml中的函数可以通过这条命令调用。

例如:
对自己治疗一下,然后攻击目标:
/target Pugar //选择自己,假设自己的名字是Pugar
/cast Lesser Heal (Rank 1) //施展次级治疗rank1
/script TargetLastEnemy(); //重新选择刚刚选择的敌人
/script AttackTarget(); //攻击,等同于右键点击敌人
首先wow是由blz程序员用程序编出来的.宏就是一种程序.
我们可以用宏在wow里干什么?很多很多...
比如:在wow打字交流和让人物做表情.这2步..我们可以用一个宏搞定。以下:
A回车输入/marco或点对话框边的聊天图标中的/macro或在频道的菜单里选 宏.
B点击对话框底部的“新建”按钮 将会弹出另外一个对话框 其中要求你输入宏的名称并且为这个宏选择一个图标.(自定义 宏 的图标随便选..

名称可以是中英文和数字)
C输入宏的内容:
/s 你好。
/招手
D按确定。
大功告成. 在可以在进入“输入宏命令”区域。在这里可以输入想让这个宏按钮实现的命令。当然还可以拖动这个宏相对应的图标到快捷栏的

空位里去. 以后要用到它按快捷键就好了。(当然可以重复使用)
.很简单吧.好了~想想看.就刚刚的那个简单的宏还可以演变成什么?
---------------我只是一条划分线---------------
/p 这里安全先休息一下.随便计划下一步怎么做。
/sit
-------------------------
/y 救命!
/cry
-------------------------
其实有时人们并不在意表情..
**********************************************
当然wow里的宏不只有如此:
%t 注意:t后还有一个空格。使用“%t ”来代替目标怪物、生物或者玩家。如:
你先编写一个宏
---------------
/s 你好啊,%t 。
---------------
然后选一个目标(小三).输入这个宏或按下其快捷键。就会出现人物说:你好啊,小三。
有些官方的宏自带这个功能.
输入:“/thank” 结果->“你向身边的每个人道谢.”
输入:“/thank”(选择小三)结果->”你向小三道谢.”
再讲一个与%t 很像的。/Assist
/Assist 注意:t后还有一个空格。/Assist 这是个协助进攻的命令。只要点击自己的某队友,然后使用这个命令,你的目标就会变成该队友当

时所选中的目标。配合“/cast”命令可以做出:
------------------
/Assist
/cast 技能名称(技能等级)
------------------
这么一个宏。关于/cast 技能名称(技能等级)可以用Shift+鼠标左键代替。
别外/Target 这是一个自动选择指定目标的命令。(对指定单位释放特定魔法)
-------------------
/Target 角色的名字
/cast 技能名称(技能等级)
-------------------
再来一个.
----------------
/施放
技能名称(技能等级)
/script SendChatMessage("<开始攻击%T >", "PARTY")
----------------
这个是说你在施放一个特定技能时它可以自动提示:开始攻击某某。的信息。
其中的PARTY可以换成:EMOTE这样则以自定义表情的方式发出信息。则别人在聊天窗口中看到:小三开始攻击某某。
还可以换成"WHISPER", "COMMON", UnitName("target"),则采用密语形式对你施法的目标发送信息。"COMMON"表示密语所用的语言种类。
Common 人类语,联盟通用语
Orcish 兽人语,部落通用语
Dwarvish 矮人语
Gnomish 侏儒语
Darnassian 暗夜精灵语
----对友好单位或自己施法----
/施放
技能名称(技能等级)
/script TargetUnit("player")
-------------或---------------
/施放
技能名称(技能等级)
/script if SpellIsTargeting() then TargetUnit("player")
----------------同理后面可以加上-------------------
/script if ( UnitName("target") ~=nil and UnitIsFriend("player","target") ) then SendChatMessage("<帮助了 %T >", "PARTY");

end
----------------------------------------------------------------------------------------------
UnitIsFriend的意思是对任何友好单位施法时都发出信息。将UnitIsFriend换成UnitInParty,则对队友单位施法时发出信息。
如果想在任何条件下都只对自己使用治疗的话,用如下的宏:
--------
/target "自己的人物名称"
/施放
技能名称(技能等级)
--------
--------按目标的职业分别使用不同魔法----------
/script class = UnitClass("target"); if ( ( class == "职业" ) or ( class == "另一个职业" ) ) then
CastSpellByName("技能名称(技能等级)"); else CastSpellByName("技能名称(技能等级)"); end
---------关键看if or then else--------
懂了吧。
------------------------
/script if (UnitMana("target")>0) then CastSpellByName("(Rank X)") else CastSpellByName("(Rank X)"); end
------------------------
(UnitMana("target")>0)当选的目标的mana大于0。then CastSpellByName("
技能名称(技能等级)")就使用此技能.else CastSpellByName("技能名称(技能等级)"); end如果不是就使用另一种技能。
---------------------------------------------------------------------------------------------------------
注:攻击也算一种技能,它可以自己连续进行.值得一提的是:假设then后你填攻击.如果中途UnitMana("target")变动到了另一个符合的条件.宏

不会自动选择第2种施法方式.你需要再按一下宏的热键或打一次命令。
-------------------------------同理---------------------------------
/script if (UnitHealth("target")>1) then CastSpellByName("技能名称(技能等级)") else CastSpellByName("攻击"); end

---------------------------------------------
原理相同..这次是UnitHealth.在("target")>1的情况下用指定技能,<=1时直接打一下下搞定.
---------------------------------------------
/script x="player";d=UnitHealthMax(x)-UnitHealth(x);if (d>y) then if (d<z) then CastSpellByName("
技能名称(技能等级)") else CastSpellByName("
技能名称(技能等级)") end;SpellTargetUnit(x);else DEFAULT_CHAT_FRAME:AddMessage("提示的信息自己填"); end;

宏会对玩家自己的HP消耗量进行判断,如HP的消耗小于y则不使用技能,并在聊天窗口中提示:"相关信息",如消耗量大于y小于z,使用then后

面的
技能,如大于z,则使用else后的技能。
先看UnitHealthMax(x)-UnitHealth(x);这段的UnitHealthMax和UnitHealth可以改成UnitMana等.后面的if (d>n) then if (d<n)是要你自己填

的.then和else后面填上相关技能.AddMessage("提示的信息自己填")
-----------------------按目标等级使用不同级别的魔法-------------------------
下面牧师的一例,对目标使用其所能接受的最高等级的“圣言术:韧”
/script P="Power Word: Fortitude(Rank " S={1,2,14,26,38} if (UnitLevel("target") ~= nil and UnitIsFriend("player","target"))

then for j=5,1,-1 do if (UnitLevel("target") >= S[j]) then CastSpellByName(P..j..")") return end end end
Fortitude应该就是圣言术:韧。Rank " S={1,2,14,26,38}和j=5,1,-1 do有什么关系?
-----------------------具体别的没看懂-----------------------------
/script r=6;l={1,12,24,36,48,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if

UnitIsFriend("player","target") then for j=r,1,-1 do if (t>=l[j]-10) then CastSpellByName("Power Word: Fortitude(Rank

"..j..")");break;end;end;end
--------------------------这个同理而且比较易懂-----------------------------
r=6;l={1,12,24,36,48,60}就是说把Fortitude(圣言术:韧)分为6个阶段.t=UnitLevel("target");你选的目标if (t==0) 因为t==0所以就是说

目标无效。then t=UnitLevel("player");自动选择自己做目标。if UnitIsFriend("player","target") 如果选的目标是可以进行的(buff只对

UnitIsFriend有效)then for j=r,1,-1 do if (t>=l[j]-10)这段不好说.应该是个比例吧.现在wow的玩家级数都在60lv内.所以看不懂的不用理

会.如果自己要改此宏估计j=r,1,-1 do if (t>=l[j]-10)这个不用改变.then CastSpellByName("Power Word: Fortitude(Rank

"..j..")");break;end;end;end要改.改一下Fortitude就好。
---------------------以上都是以60级的牧师的实例Fortitude(圣言术:韧)满级-------------------------
/script r=7;l={1,10,20,30,40,50,60};if not UnitIsFriend("player","target")then

TargetUnit("player");end;t=UnitLevel("target");for j=r,1,-1 do if (t>=l[j]-10) then CastSpellByName("Mark of The Wild(Rank

"..j..")");break;end;end
-----------------------以上是以60级德鲁依的一例,使用对方能接受的最高级野性印记--------------------------
-------------------------根据连击点的多寡和能量的多少来决定使用技能种类----------------------------------
下面是德鲁依猫形态(盗贼也是一样)根据连击点的多寡和能量的多少来决定是使用Rip还是Rake。如连击点大于等于3,则使用Rip,如连击点

小于3并且能量有40点以上,则使用Rake。
/script if ( GetComboPoints() >= 3 ) then CastSpellByName("Rip(Rank 2)"); else if (UnitMana("player") >= 40 ) then

CastSpellByName("Rake(Rank 1)"); end end
-----------------------------不多说了同理------------------------------
************************下面看一些关于背包与物品的*******************************
Bag:物品存放背包编号
Slot:物品存放格子编号
-------------------------
背包位子编号是 4 3 2 1 0
背包里物品的位子编号是 1 2 3 4
5 6 7 8
------------------对友好单位或自己使用物品---------------
/script UseContainerItem(x,y)
/script TargetUnit("player")
----------------下面分析------------------------
UseContainerItem(x,y)中的x是背包的编号,y是格子的编号。把它们换成对应物品位置的编号。
将第一行换成/script UseAction(z,x,y),则不需将物品放在背包特定位置,但必须将物品拖入技能栏的特定位置。z表示技能栏的编号。第一

排第一格编号为1,最后一格为12。第二排第一格编号为13,最后一格为24。以此类推。
-----------------------如果想在任何条件下都只对自己使用特定物品--------------------------
/target "player"
/use "物品名称"
------------------------一次使用多个物品---------------------------
/script UseContainerItem(x,y)
/script UseContainerItem(x,y)
-----------------------n次------------------------
前可+/target "player"后可+/script TargetUnit("player").有些物品不+也可.但要自己选择目标.
*********************************武器相关**********************************
MainhandBag:备用主手武器存放背包编号
MainhandBagSlot:备用主手武器存放格子编号
OffhandBag:备用副手武器存放背包编号
OffhandBagSlot:备用副手武器存放格子编号
TwohandsBag:备用双手武器存放背包编号
TwohandsBagSlot:备用双手武器存放格子编号
------------------------对主手武器或双手武器使用使用相关物品-------------------------
/script UseContainerItem (Bag,Slot)
/script PickupInventoryItem (16)追问

我擦嘞,这么复杂~!

追答

其实很简单,你用的时候针对具体职业的具体要求来找,NGA上各职业区都有很多详细的指导贴

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-02
喊话宏只是一种娱乐性质的 真正的宏是简化操作用的 譬如说自动帮你寻找某个目标并自动对其释放什么技能 在什么技能冷却是可以释放什么技能 如果不冷却又释放什么技能还有就是焦点集火宏等等之类的 这些宏在打团本和打评级的时候都是非常好用的 举例先说pve 打H2 和H4的时候 H2会有个灵魂一直追你 追上你了你就死了 打他一下会击退 这时候你做个宏 自动寻找目标并使用瞬发攻击技能 最后目标不切换 这样你就能打boss的时候不用切换目标就能击退灵魂 H4的水晶盾也是 自动寻找最近的水晶并释放攻击 且目标不切换 这样就防止你打本时候老来回切换目标 而且有时候目标太多你还点不到的问题了 评级的焦点集火宏就简单了 给你们喊火队员的名字输进去 然后点一下那个宏自动切换喊火队员的目标 然后集火就是了追问

怎么做那个自动寻找目标的宏,我就是一直苦于目标切换,特别是团队,人多技能五光十 色,我压根就找不到怪,具体应该怎么设置,还有武器战的那个无脑输出宏怎么做?

追答

这些宏都不一样的 刚刚我说的这些自动寻找目标的宏都是对特定boss的特定小怪的 譬如H4的宏
/target 嗡鸣水晶
/cast [target=focus,exists,harm]凋零缠绕;凋零缠绕
/targetlasttarget
这是dk对于水晶的宏 其他职业需要换技能的 无脑输出宏那是划水用的 一键输出 dps比较低 但是让别人能看出来你打了
其他的你自己搜吧 宏起码有好几万种呢 都这么多年的魔兽了 一点也不夸张 像那种自动选取最近的目标都是有的 其他功能限制的也都有

追问

target 目标,cast是什么?这类名词是干嘛的?还有什么常见名词?

追答

这就像c++编程似的 是命令语言 常见的有好几十呢 你最好找本完整的宏制作文章看看

本回答被提问者采纳
第2个回答  2013-08-02
简单来说,你wow里每个动作都是由发出的指令来实现的,宏就是把指令的编辑给了你自己,你自由的通过书写指令编辑动作,所以可以编很多乱七八糟的行为,比如说嘲讽时候大喊,骑鸟时候大喊,切换姿态时候更换武器等等
第3个回答  2013-08-02
是玩家自己制作的。
或者可以从网上找到宏,然后复制在自己的宏命令里,打开宏命令设置界面,按照操作,复制就行,(操作同一般软件操作,容易理解和学习)。具体宏的制作,根据宏的不同,有很多不同的方法,一般较简单的,比如喊话宏,和简单的技能组合宏可以自己制作,而较难的宏,则多可以去魔兽相关论坛复制其他玩家制作的。
第4个回答  2013-08-02
1、宏的设定是不能和游戏设定冲突,即2个技能要做出一个技能宏同时释放,那么这两个技能不能有GCD。
2、宏顺序有一些要注意,因为涉及到更复杂的语法,但是喊话宏是没顺序限制的,不管你是先放技能还是先喊话,效果都是同时出现。
3、至于红字,是指令的问题,/cast是施放技能,/4 XXX 是在交易频道喊话,都是有设定好了的。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网