指点成金-最美分享吧

登录

魔兽世界技能宏怎么做

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了魔兽世界技能宏怎么做相关的知识,希望对你有一定的参考价值。

希望高手来指点帮忙详细写一下FS比较实用的宏,要当前版本能用的啊
满意了追加高分

一键吃喝宏
/cast [modifier:alt]造水术(等级 9); [modifier:ctrl]造食术(等级 8);[button:2]召唤餐桌(等级 1)
/use [button:1,nomodifier,nochanneling]魔法点心
/use [button:1,nomodifier,nochanneling]魔法冰川水
/use [button:1,nomodifier,nochanneling]魔法羊角面包
在没有点心的时候左键点?就是吃面包和水,有点心的时候图标会是点心.左键点就是吃点心.
右键是开桌子.
ctrl加图标是做面包
atl加图标是做水(不喜欢用shift我用的是搜狗拼音,按了shift就切换到英文输入)
当前版本可用
wlk以后把里面的吃的和要制造的换成你最高级的就可以了.

护甲宏
#showtooltip
/stopcasting
/cast [modifier:alt] 法师护甲 ; [button:2] 冰甲术;熔岩护甲
左键火甲,右键冰甲,alt加左键法师甲
3个甲一个按键省事

宝石宏
#showtooltip
/use [btn:1] 法力刚玉
/cast [button:2] 制造法力宝石(等级 5)
右键制作,左键使用
3.05可以自己补充,已经改正,谢谢

每个宏前面有句#showtooltip 没什么特别意思,就是你在选宏的图标的时候选第一个,就是那红色问号那个就ok了,图标就会自己去找对应魔法的图标,说得有点啰嗦,大家就别去管他就对了

再给大家个宏,没代表什么,就是2合1的宏
#showtooltip
/stopcasting
/cast [button:2] (此处为右键魔法);(此处为左键魔法)
我用了很多这种,比如智力和智慧,马和飞机,等等,中间有个分号隔开要注意,把你们喜欢的都放进去吧
1、水宝宝
#showtooltip [nopet] [target=pet,dead] 召唤水元素; [pet] 冰冻术
/cast [nopet]召唤水元素
/cast [target=pet,dead]召唤水元素
/stopmacro [target=pet,dead]
/cast 冰冻术
/petattack
/click [pet] PetActionButton5
没有BB使用水元素技能 有BB使用冰冻术技能 即使BB死亡状态也可召唤。
如果是刷血色 STSM等副本需要停留宝宝将
/petattac
k改成
/petstay
/petpassive
---停留+被动
或者做两个宏

—————————————————我不喜欢画分割线—————————————————
2、无敌重置副本宏
/invite 任意在线玩家
/script LeaveParty()
/logout
无论你组的人有没有组 都会自动邀请再离组并小退 达到返回副本入口重置副本的目的

3、战场排场宏
/run JoinBattlefield(0)
适合秒排时用,打开战场NPC,点此宏将自动排队不会关闭对话窗,以便观看进的是否为新场。

新增:坐骑宏
#showtooltip
/castrandom [modifier:alt]迅捷雷刃豹;[flyable]白色幼龙;迅捷雷刃豹
能飞行就召飞行坐骑,不能则召唤陆地坐骑。 如果想在外域骑马就按alt+宏

4、死绝杀
#showtooltip
/stopcasting
/cast 气定神闲
/stopcasting
/use 14
/cast 奥术强化
/stopcasting
/cast 火球术

现在流行奥法气定火球.

5、冰枪术
#showtooltip
/stopcasting
/cast [target=mouseover,harm,nodead]冰枪术;冰枪术

优先攻击鼠标所指的敌对存活生物,其次攻击当前目标。

6、法术反制
#showtooltip
/stopcasting
/Cast [modifier:alt,target=focus,harm,nodead]法术反制;[target=mouseover,harm,nodead]法术反制;法术反制

alt+宏为反制焦点,鼠标所指敌对存活生物反制(优先级别低于焦点反制),直接按为反制,

7、变形术
#showtooltip
/Cast [target=mouseover,harm,nodead]变形术;[modifier:alt,target=focus,harm,nodead]变形术;变形术

参考法术反制

8、寒冰屏障
#showtooltip
/stopcasting
/cancelAura 寒冰屏障
/cast 寒冰屏障

直接按为冰箱,有冰箱按宏则无视公共CD取消冰箱.

9、隐形术
#showtooltip
/stopcasting
/cancelaura 隐形术
/cast 隐形术

同上

10、
#showtooltip
/TargetLastTarget [noharm]
/cast [modifier:alt]活体炸弹;火焰冲击

加了一句/TargetLastTarget [noharm]
如果你没有目标则自动选择上一个目标直接施法。 本来加harm的 结果按了后会取消当前目标去选上一个目标 所以就改为noharm了。
对付盗贼等会消失的职业时很好用,缺点是会选到NPC,所以有附近提议NPC时最好确定敌人出现后再用。

11、
#showtooltip
/TargetLastTarget [noharm]
/cast [modifier:shift]冰枪术;[modifier:alt]火焰冲击;减速

同上,减速就好用点了 无视方向。

—————————————————那你还画线干啥—————————————————
这一部分可以省不少按键 强烈推荐
12、
快餐店
#showtooltip
/cast [modifier:alt]造水术;[button:3]召唤餐桌;[modifier:shift]魔法点心;[modifier:ctrl]造食术;[button:2] 魔法羊角面包;魔法冰川水

一个店面就可以开个食品公司
alt+宏为造水 ctrl+宏为造食 鼠标中键+宏为拉桌子 shift+宏吃点心 左键按宏为喝水 右键吃面包
下面的宏就不解释这些了

13、传送术
#showtooltip
/cast [modifier:alt]传送:暴风城;[modifier:shift]传送:达纳苏斯;[modifier:ctrl]传送:埃索达;[button:3]传送:塞拉摩;[button:2]传送:沙塔斯;传送:铁炉堡

14、传送门
#showtooltip
/cast [modifier:alt]传送门:暴风城;[modifier:shift]传送门:达纳苏斯;[modifier:ctrl]传送门:埃索达;[button:3]传送门:塞拉摩;[button:2]传送门:沙塔斯;传送门:铁炉堡

15、Buff
#showtooltip
/cast [modifier:ctrl]魔法增效;[modifier:alt]魔法抑制;[modifier:shift]专注魔法;[button:2]奥术光辉;奥术智慧

16、护甲
#showtooltip
/cast [modifier:alt]法师护甲;[button:2]冰甲术;熔岩护甲

17、一条命
#showtooltip
/cast [modifier:alt]超级治疗药水;[modifier:alt]极效治疗石;[modifier:alt]生命之血;[modifier:shift]生命之血
/cast [modifier:alt]厚灵纹布绷带;厚灵纹布绷带

按shift+宏单独使用生命之血 直接按为绷带 按alt+宏为4者同时用。 不舍得喝红时删掉该句既可

18、种族天赋与护符旗帜
#showtooltip
/cast [modifier:alt]13;[modifier:shift]14;[button:2]联盟军旗;[modifier:ctrl]雷矛战旗;逃命专家

19、常用N开
#showtooltip
/stopcasting
/cast 奥术强化
/cast 燃烧
/cast 冰冷血脉
/cast 14
/cast 火球术

20、宝石
#showtooltip
/cast [modifier:alt]制造法力宝石;法力刚玉

21、要你命3000天赋
#showtooltip
/cast [modifier:ctrl]奥术强化;[modifier:alt]气定神闲;奥术弹幕

22、元素盾
#showtooltip
/cast [modifier:alt]防护火焰结界;防护冰霜结界

23、天神下凡
#showtooltip
/stopcasting
/cast 燃烧
/cast 冰冷血脉
/cast 奥术强化
/cast 气定神闲
/cast 烈焰菇
/cast 加速药水
/cast 14
这里加/stopcasting 是为了防止宏技能CD不刷新

—————————————————都是被逼的—————————————————
以下宏可根据个人需要更改。

24、
#showtooltip
/cast [modifier:alt]炎爆术;火球术

火法专用 快速瞬发脸盆.

25、
#showtooltip
/cast [modifier:alt]火球术;灼烧

冰法专用 快速瞬发火球

26、
#showtooltip
/Cast [modifier:alt]奥术冲击;奥术飞弹

快被遗忘的奥冲...

27、
#showtooltip
/cast [modifier:alt]烈焰风暴;龙息术

瞬发火炉

28、
#showtooltip
/cast [modifier:alt]烈焰风暴;冲击波

瞬发火炉

29、
#showtooltip
/stopcasting
/cast [modifier:alt]法术偷取;闪现术

30、
#showtooltip
/cast [modifier:alt]烈焰风暴;冰锥术

31、
#showtooltip
/cast [modifier:shift]解除诅咒;[modifier:alt]魔爆术;冰霜新星

32、
#showtooltip
/stopcasting
/Cast [modifier:alt]奥术冲击;奥术飞弹

33、
#showtooltip
/cast [modifier:alt]寒冰护体;[button:2]野魔花;法力护盾

冰法就将寒冰护体和法力护盾换下位置

施法打断提示宏,某高人写的 时间太久不记得了
下面3个宏是绑在一起的 进入游戏后按顺序各点一次。
之后你每打断掉别人的施法就会小队喊话
/p [hh:mm:ss] 我打断了[某某]的[牛X技能]
并且技能还是个连接 可以看到一些怪物的奇特法术。

34、打断提示宏1
/run function SIS_M(a,b,c,d,e,f,g,type) SendChatMessage(" 我打断了 ["..c.."] 的 \124cff71d5ff\124Hspell:"..f.."\124h["..g.."]\124h\124r。",type);end

35、打断提示宏2
/run function EV_M(...) local a,v,_,b,_,_,c,_,d,e,_,f,g=...;if (v=="SPELL_INTERRUPT" and SIS_M) then SIS_M(a,b,c,d,e,f,g,"partty");end end

----"partty"代表小队 可以改为"say" "yell" "raid"等。

36、打断提示宏3"
/run if (not MSG_F) then CreateFrame("Frame","MSG_F",UIParent);end MSG_F:RegisterEvent("COMBAT_LOG_EVENT");MSG_F:SetScript("OnEvent",function(_,_,...) if (EV_M) then EV_M(...);end end);

—————————————————要你命3000分割线—————————————————

mocros-cache 文档 通用部分

以下内容复制到World of Warcraft\WTF\Account\帐号id目录下

MACRO 12 " 冰枪术" INV_Misc_QuestionMark
#showtooltip
/stopcasting
/cast [target=mouseover,harm,nodead]冰枪术;冰枪术
END
MACRO 2 " 闪+ 偷" INV_Misc_QuestionMark
#showtooltip
/stopcasting
/cast [modifier:alt]法术偷取;闪现术
END
MACRO 9 " PVP水宝宝" Spell_Frost_SummonWaterElemental_2
#showtooltip [nopet] [target=pet,dead] 召唤水元素; [pet] 冰冻术
/cast [nopet]召唤水元素
/cast [target=pet,dead]召唤水元素
/stopmacro [target=pet,dead]
/cast 冰冻术
/petattack
/click [pet] PetActionButton5
END
MACRO 8 " 死绝杀" Spell_Fire_FelFlameBreath
#showtooltip
/stopcasting
/cast 气定神闲
/stopcasting
/use 14
/cast 奥术强化
/stopcasting
/cast 火球术
END
MACRO 10 " 焦点+鼠标反制" INV_Misc_QuestionMark
#showtooltip
/stopcasting
/Cast [modifier:alt,target=focus,harm,nodead]法术反制;[target=mouseover,harm,nodead]法术反制;法术反制
END
MACRO 4 " 冰锥" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]烈焰风暴;冰锥术
END
MACRO 6 " 冰锥 诅咒" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:shift]解除诅咒;[modifier:alt]魔爆术;冰霜新星
END
MACRO 15 " 奥术飞弹" INV_Misc_QuestionMark
#showtooltip
/Cast [modifier:alt]奥术冲击;奥术飞弹
END
MACRO 7 " 棺材" INV_Misc_QuestionMark
#showtooltip
/stopcasting
/cancelAura 寒冰屏障
/cast 寒冰屏障
END
MACRO 3 " 火冲 炸弹" Spell_Fire_Fireball
#showtooltip
/TargetLastTarget [noharm]
/cast [modifier:alt]活体炸弹;火焰冲击
END
MACRO 19 " 灼烧 火球" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]火球术;灼烧
END
MACRO 20 " 奥术天赋" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:ctrl]奥术强化;[modifier:alt]气定神闲;奥术弹幕
END
MACRO 25 " 坐骑" INV_Misc_QuestionMark
#showtooltip
/castrandom [modifier:alt]迅捷雷刃豹;[flyable]白色幼龙;迅捷雷刃豹
END
MACRO 11 " 隐形术" INV_Misc_QuestionMark
#showtooltip
/stopcasting
/cancelaura 隐形术
/cast 隐形术
END
MACRO 13 " 火盆" Spell_Fire_FlameBolt
#showtooltip
/cast [modifier:alt]炎爆术;火球术
END
MACRO 17 " 瞬发技能" Spell_Nature_Slow
#showtooltip
/TargetLastTarget [noharm]
/cast [modifier:shift]冰枪术;[modifier:alt]火焰冲击;减速
END
MACRO 5 " 解控制 饰品 军旗" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]13;[button:2]联盟军旗;[modifier:shift]14;[modifier:ctrl]雷矛战旗;逃命专家
END
MACRO 1 "Decursive" INV_Misc_QuestionMark
/stopcasting
/cast [target=mouseover,nomod,exists] 解除诅咒; [target=mouseover,exists,mod:alt] 变形术; [target=mouseover,exists,mod:shift] 解除诅咒
END

-----------------------分分分,要你命------------------

mocros-cache 文档 角色部分 可跟以上部分放置一起 MACRO XXXX的数字或许要改
以下内容复制到World of Warcraft\WTF\Account\帐号id\服务器\角色名 目录下
-----------
MACRO 16777225 " 元素盾" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]防护火焰结界;防护冰霜结界
END
MACRO 16777227 " 天神下凡" Spell_Holy_Aspiration
#showtooltip
/stopcasting
/cast 燃烧
/cast 冰冷血脉
/cast 奥术强化
/cast 气定神闲
/cast 烈焰菇
/cast 加速药水
/cast 14
END
MACRO 16777235 " 快餐店" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]造水术;[button:3]召唤餐桌;[modifier:shift]魔法点心;[modifier:ctrl]造食术;[button:2] 魔法羊角面包;魔法冰川水
END
MACRO 16777220 " 无敌重置副本宏" Spell_Holy_DivineIntervention
/invite 任意在线玩家
/script LeaveParty()
/logout
END
MACRO 16777226 " 祝福" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:ctrl]魔法增效;[modifier:alt]魔法抑制;[modifier:shift]专注魔法;[button:2]奥术光辉;奥术智慧
END
MACRO 16777230 " PVE水宝宝" Spell_Frost_SummonWaterElemental_2
#showtooltip [nopet] [target=pet,dead] 召唤水元素; [pet] 冰冻术
/cast [nopet]召唤水元素
/cast [target=pet,dead]召唤水元素
/stopmacro [target=pet,dead]
/petstay
/petpassive
/cast 冰冻术
/click [pet] PetActionButton5
END
MACRO 16777221 " 传送术" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]传送:暴风城;[modifier:shift]传送:达纳苏斯;[modifier:ctrl]传送:埃索达;[button:3]传送门:塞拉摩;[button:2]传送:沙塔斯;传送:铁炉堡
END
MACRO 16777236 " 宝石" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]制造法力宝石;法力刚玉
END
MACRO 16777223 " 护甲" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]法师护甲;[button:2]冰甲术;熔岩护甲
END
MACRO 16777224 " 护盾" Spell_Shadow_DetectLesserInvisibility
#showtooltip
/cast [modifier:alt]寒冰护体;[button:2]野魔花;法力护盾
END
MACRO 16777237 " 一条命" Spell_Holy_HolyNova
#showtooltip
/cast [modifier:alt]作战治疗药水;[modifier:alt]生命之血;[modifier:alt]极效治疗石;[modifier:shift]生命之血
/cast [modifier:alt]厚灵纹布绷带;厚灵纹布绷带
END
MACRO 16777222 " 传送门" INV_Misc_QuestionMark
#showtooltip
/cast [modifier:alt]传送门:暴风城;[modifier:shift]传送门:达纳苏斯;[modifier:ctrl]传送门:埃索达;[button:3]传送门:塞拉摩;[button:2]传送门:沙塔斯;传送门:铁炉堡
END
MACRO 16777229 " 变形" INV_Misc_QuestionMark
#showtooltip
/Cast [target=mouseover,harm,nodead]变形术;[modifier:alt,target=focus,harm,nodead]变形术;变形术
END
MACRO 16777231 " 战场宏" Ability_Warrior_InnerRage
/run JoinBattlefield(0)
END
MACRO 16777232 " 打断提示宏1" Spell_ChargeNegative
/run function SIS_M(a,b,c,d,e,f,g,type) SendChatMessage(" 我打断了 ["..c.."] 的 \124cff71d5ff\124Hspell:"..f.."\124h["..g.."]\124h\124r。",type);end
END
MACRO 16777233 " 打断提示宏2" Spell_ChargePositive
/run function EV_M(...) local a,v,_,b,_,_,c,_,d,e,_,f,g=...;if (v=="SPELL_INTERRUPT" and SIS_M) then SIS_M(a,b,c,d,e,f,g,"partty");end end
END
MACRO 16777234 " 打断提示宏3" Spell_DeathKnight_PathOfFrost
/run if (not MSG_F) then CreateFrame("Frame","MSG_F",UIParent);end MSG_F:RegisterEvent("COMBAT_LOG_EVENT");MSG_F:SetScript("OnEvent",function(_,_,...) if (EV_M) then EV_M(...);end end);
END
MACRO 16777228 "N开" Spell_Holy_TestOfFaith
#showtooltip
/stopcasting
/cast 奥术强化
/cast 燃烧
/cast 冰冷血脉
/cast 14
/cast 火球术
参考技术A 我是术士
技能宏我设了7个
3个输出宏
4个PK宏
其实看天赋
我痛苦输出我单设就5个
假如
我用死亡缠绕的时候
必定是和对方拉开距离.我当然是血下去一定数量我才开死缠
/use
战斗大师
/施放
死亡缠绕
这是一个
直接开战斗大师
仍死缠
血基本满
/施放
恐惧
/施放
元素诅咒
参考技术B 高端的魔兽技能宏需要查询NGACN中的技术贴,我举个简单的例子:用牧师复活
点选队友头标
宏:/施法
复活术(9级)
/y
我正在复活>>%t<<请其他人不要重复复活
这个宏的意思就是你正在复活你的目标,同时大声喊提醒其他人不要重复施法浪费时间
参考技术C 宏最基础的就是在宏命令里打上
/施放
XX
/施放
XX
/startattack(这个是启动自动攻击)
但是,有的宏做不好就会先执行第1个
再执行第2个.但是如果你是战士的话,就会浪费多余的怒气.所以做宏的时候尽量把两个不会同时触发的绑一起.比如
/施放
斩杀
/施放
英勇打击.这样不到20%血,就执行英勇,但如果你把英勇放1行,你的角色就会执行英勇打击.
另外可以通过命令调整
码数等等.
参考技术D 按ESC.出来菜单之后有一个选项,叫宏建设置,点.之后就会看到很多图标,选一个,然后给你的宏起个名字
之后下面的地方输入宏的具体内容.之后就可以用了.当然.怎麽用就在于你自己了
可以设置成说话宏,也可以设置成法术的宏
第5个回答  2019-02-05 在右边最下的框中最上边有个宏的设置
你点开之后就可以设置了
主要是简化操作
可以一个宏释放多个JN
比如最简单的FS的血脉+饰品
/施放
冰冷血脉
/施放
XX饰品
这个只是个简单的
但是宏差不多就是这样设置的
。。

魔兽世界宏常用命令级格式

本人魔兽新手,想学习宏命令
本人BASIC获过省一等奖
C++娴熟,JAVA娴熟
有丰厚的学生级别编程经验。
轻松过计算机等级考试
故求有经验者介绍些
宏代码的命令级格式
和几个实例
谢谢!
当然,如果命令及格式不好学找寻,也可以提供现成的“复杂”宏供本人研究,但是希望著名该复杂宏的详细作用(简单宏由于涉及命令少,的没有剖析价值)。

宏 Macro
相信很多人都知道WOW中的斜杠"/"和表情命令.宏可以将这些命令按照自己对条件的设置串联起来,比如:/Kneel是让你跪下来的动作而/say就是最基础的对话动作
我们现在用一个宏把他们串起来:

第一行内容:“/Kneel”
第二行内容:“/say 如果你不嫁给我,那么我就一辈子不起来…” ”
这样你的人物就会先下跪再说:"如果你不嫁给我,那么我就一辈子不起来…"

宏可以应用所有WOW中已经定义了的斜杠"/"和表情命令,更要命的是,宏甚至可以应用人物的魔法和技能,

只需要在宏的定义过程中应用"/cast"命令,下面是已知的一些常用命令:

/Assist 这是个援助进攻的命令。当你的队伍同时面对几个敌人时,只要点击自己的队友(一般是队伍中的战士),然后使用这个命令,你的目标就会变成战士所选中的目标。大家集中火力消灭一个起!

/Cast 这是个使用技能的命令。当你在宏命令里输入/Cast 技能名(技能等级)或者只要按住Shift同时用鼠标点击一下你想要输入的技能的图标。例如当你是一个战士,想制作一个使用战斗怒吼的宏时,你可以输入/Cast Battle Shout(Rank 1)或者是直接按住Shift点击Battle Shout这个技能的图标。当然你可以在一个宏的不同行上输入几个技能,那么当你使用这个宏时,几个技能就会一起释放出来,再用不着你像章鱼一样同时按下几个键了 。

%t 这个符号也许会经常出现在你的宏命令里,它是一个代码,代表你当前所选中的人名。例如,你在宏里写下这么一句。(注意:后面要加一空格。) “/g %t ,今天天气真好,有没兴趣和我一起上山采蘑菇…”
如果你点中一位名叫苯笨的玩家,那么当你按下这个宏时,你就会说:“笨笨,今天天气真好,有没兴趣和我一起上山采蘑菇…”

/Target 这是一个自动选择目标的命令,你可以在宏里输入/Target (xxx),那么当你按下这个宏时,你将自动选定这个叫xxx的目标。

/in 这是一个延时命令,时间以秒为单位.同时它不支持攻击指令.格式:/in 3 dance 三秒后跳舞,如/in 3 dance,就是在3秒后跳舞,
/say start!
/in 3 say 3s later
/in 6 say 6s later

二:进阶教程

一些有用的 Macro

1。允许你在窗口和全屏状态之间切换

/script SetCVar("gxWindow", 1 - GetCVar("gxWindow"));
/console gxRestart

2。对于法师,必须要有的:将“X”换为你目前的变形术等级(下同);用它替换掉变形术技能。当你在队伍之外时使用它会得到“你不在队伍中。”的信息,但在队伍中的时候其它同伴会了解到你将释放的变形术目标。

/p Sheeping >>> %t<<<
/cast Polymorph (Rank X)

3。作为一个术士,这是在队伍中使用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击,跟着一个虚弱诅咒。

/assist 队伍中的拖怪手或者坦克的名字
/script PetAttack();
/cast Curse of Weakness (Rank X)

4。从背包和袋子里切换身上的武器

/script if ( not CursorHasItem() ) then PickupContainerItem(, );

PickupInventoryItem( ); end

bag# - 使用哪一个袋子的物品(0、1、2、3、4。0是背包)

slot# - 袋子里的位置(从0至左上)

equip# - 16 是主要武器, 17 是副武器

5。这个宏治疗队伍里你指定的人,如果你不在队伍中它会治疗你自己。然后会自动将目标切换回你最后一个敌人。它同时还会使用队聊提醒队友你会治疗哪一个人。

/script if (UnitName("target") ~=nil and UnitIsFriend("player","target")) then

CastSpellByName("Heal(Rank X)") SendChatMessage("Incoming Heal to %T", "Party") else

TargetUnit("player") CastSpellByName("Heal(Rank X)") TargetLastEnemy(); end

6。加速任务显示速度

/script QUEST_DEscriptION_GRADIENT_CPS = 600000
/script RegisterForSave("QUEST_DEscriptION_GRADIENT_CPS")
/script DEFAULT_CHAT_FRAME:AddMessage("quest text will scroll faster now");

7。消除等待接受任务的时间

/script AcceptQuest()

8。这个宏可以在路上自动护送玩家做任务。

/assist [player name]
/cast 法术(Rank X)
/target [player name]
/follow [player name]

9。切换主副武器,详情看第四条

/script PickupInventoryItem(16); PickupInventoryItem(17);

10。在没有目标或者目标是敌人的时候给自己加增益魔法或治疗。

CastSpellByName("Spell Name(Rank X)");

if ((SpellIsTargeting()) and (not UnitIsFriend("player","target")))

then

SpellTargetUnit("player");

end;

TargetLastEnemy();

11。切换双手武器与单手+盾或者双手挥舞武器

/script PickupInventoryItem(17);if(CursorHasItem()) then PickupContainerItem

(4,2);PickupContainerItem(4,1);PickupInventoryItem(16);else PickupContainerItem

(4,1);PickupInventoryItem(16);PickupContainerItem(4,2);PickupInventoryItem(17);end

12。设定“真实鼠标视野”

/script CameraOrSelectOrMoveStart(arg1);

想取消就再次输入。

13。切换近程技能栏和远程技能栏

/script CURRENT_ACTIONBAR_PAGE = 2;
/script ChangeActionBarPage();
/cast aspectofmonkey (just use the left click)

/script CURRENT_ACTIONBAR_PAGE = 1;
/script ChangeActionBarPage();
/cast aspectofhawk (just use the left click)

14。牧师对队友的一键加血,比如一号键给第一队友加血,二号键给第二队友加血,免除了还要鼠标确

定目标的操作。依次类推,从第一个人到最后一个

给队友1加血:
/script TargetUnit(GetPartyMember(1))
CastSpellByName(Heal(Rank X)) TargetLastEnemy()

给队友2加血:
/script TargetUnit(GetPartyMember(2)) CastSpellByName(Heal(Rank X)) TargetLastEnemy()

给队友3加血:
/script TargetUnit(GetPartyMember(3)) CastSpellByName(Heal(Rank X)) TargetLastEnemy()

15。一键解决喂养宠物:这个宏会从最左边的袋子里的第一个位置拿出食物喂养宠物,如果所在的位置

没有食物,它会自动打开袋子。

/script if (not PlayerFrame.inCombat) then if (not GetContainerItemLink(4, 1)) then

OpenBag(4); else CastSpellByName("Feed Pet"); PickupContainerItem(4, 1); end end

16。术士宏

1)如果目标生命大于20,释放抽取生命法术,否则使用灵魂抽取。
/script if (UnitHealth("target")>20) then CastSpellByName("Drain Life(Rank X)") else

CastSpellByName("Drain Soul(Rank 2)") end;

2)虚弱诅咒版本
/script if (UnitMana("target")>0) then CastSpellByName("Curse of Tongues(Rank X)") else

CastSpellByName("Curse of Weakness(Rank X)") end;

17.先治疗自己,然后自动选中上次的敌人
/target Pugar //选择自己,假设自己的名字是Pugar
/cast Lesser Heal (Rank 1) //施展次级治疗rank1
/script TargetLastEnemy(); //重新选择刚刚选择的敌人
/script AttackTarget(); //攻击,等同于右键点击敌人

18.对于一个术士很有用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击

,跟着一个虚弱诅咒。
/assist 队伍中的拖怪手或者坦克的名字
/script PetAttack();
/cast Curse of Weakness (Rank X)

19.等治疗完之后提醒别人注意下自己有可能被怪打,不加延时的话,就没这个效果了。
/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^_^

20.在路上自动护送朋友做任务。

/assist [player name]
/cast 法术(Rank X)
/target [player name]
/follow [player name]

三:高级教程

WOW的宏函数库可以去这两个地方查:

] http://www.cosmosui.org/texts/BlizzardCommands.xml

] http://www.wowwiki.com/index.php/World_of_Warcraft_API

函数的使用比较简单,学习过编程的都比较容易上手,基本的用法是在函数前加/script 来使用。比如
/script CURRENT_ACTIONBAR_PAGE = X;
/script ChangeActionBarPage();
就是将你的快捷栏翻到第X页。

函数库中有许多函数都是非常有用和方便的,比如一次打开所有包包:

/script OpenAllBags();

配合关闭包包的函数,一次关闭所有包的宏也可以实现:

/script CloseBag(0);
/script CloseBag(1);
/script CloseBag(2);
/script CloseBag(3);
/script CloseBag(4);

怎么样,下次你卖东西的时候不会一个个开包关包了吧?

使用函数还不是最恐怖的,恐怖的是WOW的宏是可以用条件判断的,看下面这两个:
/script if ( GetComboPoints() >= 3 ) then CastSpellByName("Rip(Rank 2)"); else if (

UnitMana("player") >= 40 ) then CastSpellByName("Rake(Rank 1)"); end end

据说这个包含if,then的宏可以让盗贼实现自动根据combo点数来使用技能(未测试),其中还使用了角

色MANA值的调用,恐怖吧?还有这个查找spell的宏:
function GetSpellIdByItsName(myWantedSpell, myWantedRank)
local spellId = 1;
local spellBook = "spell";
local spellName, rankName;
spellName, rankName = GetSpellName(spellId, spellBook);
while (spellName ) do
if ( ( spellName == myWantedSpell ) and ( ( not myWantedRank ) or ( rankName = myWantedRank

) ) ) then return spellId; end
spellName, rankName = GetSpellName(spellId, spellBook);
end
return -1;
end

里面可以自己定义function,还使用了while,do这样的循环,是不是让你想到了N种应用的可能呢?

遗憾的是,目前官方似乎没有提供延时的宏,所以在战斗中使用多种有延时的技能是无法实现的(无延时的技能可以实现同时使用),类似换其他武器-使用技能或法术-换回武器这样的功能也无法实现,

(所谓用宏实现剑盾战士换双手武器MS再换回来是行不通的),不过使用COSMOS的朋友可以用/in 来实现非战斗指令的延时,比如
/in 3 say hi 就会在3秒后说句hi。

/in 6 /script MoveForwardStart(arg1);
就会在6秒后向前跑。

虽然法术和技能无法用/in指令来延时,但这样已经很强大了,比如,你可以编出各种运动的宏,如兜后,转身等。PVP时估计是必不可少的。

下面是一个玩家写的双手武器战士自动逃跑的宏:
/script UseContainerItem(0, 2);ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown

(12);ActionButtonUp(12);
/cast Thunder Clap(Rank 1);
/script TurnLeftStart(arg1);
/in 1 /script TurnLeftStop(arg1);ToggleAutoRun();

使用这个宏的条件:在大包包第二格放了回复药,快捷栏第11,12分别是一单手一盾的快捷方式。

使用这个宏后,角色自动喝回复药,装备上盾,使用Thunder Clap(这三个动作同时进行),向后转180度后开自动跑步键逃走。其中技能等可以根据需要自己改。怎么样,是不是很夸张啊,哈哈。

还有一些有用的宏:

切换装备,

双手切换单手并换第二个快捷栏,快捷栏第11,12分别是一单手一盾的快捷方式
/script ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12);
/script CURRENT_ACTIONBAR_PAGE = 2;
/script ChangeActionBarPage();
单手切换双手并换回第一快捷栏,快捷栏12是一双手武器快捷方式
/script ActionButtonDown(12);ActionButtonUp(12);
/script CURRENT_ACTIONBAR_PAGE = 1;
/script ChangeActionBarPage();

下面是另一篇

作者:重返荣誉
来源:17173
宏只是一种辅助的手段,希望通过下面的讲解让大家能轻松编辑属于自己的宏。

先来看宏的结构:

/script
if (UnitHealthMax(target)>80)
then
CastSpellByName(""火球术(等级4)"")
SendChatMessage(""对 %T 使用火球术"", ""EMOTE"")
else
CastSpellByName(""奥术飞弹(等级2)"")
SendChatMessage(""对 %T 使用奥术飞弹"", ""EMOTE"")

这是一个没有延时功能的宏,带延时功能的宏将在稍后说明,
第一句/script 申明函数开始,这句是必须的,整个宏的中文意思是
如果你选定的目标的生命值大于80,就执行4级火球术,并告知周围的人你对目标使用了这个动作,
%t就是代表目标,否则就执行2级飞弹,告知周围的人你对目标使用了这个动作。
值得注意的是比如SendChatMessage(""对 %T 使用火球术"", ""EMOTE"") 中的EMOTE 如果你换成party就
只是队内可见。
此例使用到的函数:
UnitHealthMax(target) 返回目标生命值
同样此例如不要判断就直接是
/script
CastSpellByName(""火球术(等级4)"")
SendChatMessage(""对 %T 使用火球术"", ""EMOTE"")

注意本文注重介绍思路!
下面是一些常用的宏
MoveBackwardStart 向后移动,用时写成 MoveBackwardStart() 注意每句后面的;号并不是必须的,主要是习惯。
MoveBackwardStop 停止后退
StrafeLeftStart 向左移动
StrafeLeftStop 停止左移
StrafeRightStart 向右移动
StrafeRightStop 停止右移
ToggleAutoRun 向正面跑
TurnLeftStart 向左转
TurnLeftStop 停止左转
TurnRightStart 向右转
TurnRightStop 停止右转
jump() 跳
参考技术A 转帖的教程,有心学就耐心看吧

前言:
1、由于CastSpellByName()和TargetUnit()在2.0被禁用,所以2.0之前的大部分宏将无法使用。现在,宏写法也有了很大的变化。没有宏可以检查Buff,Debuff,冷却,血量,魔法,怒气,能量。但是,大家也不用太惋惜,现在的宏可以实现许多新的功能,并且非常强大。
2、在使用一些宏之前请先检查你的按键设置。系统默认Ctrl+1到10是使用宠物技能栏,而Shift+1到6是选定动作条。有些宏在使用时由于自己的设置有可能和这些默认的按键冲突,解决办法为改宏或者改掉系统默认的按键设置。

3、把这篇文章一字不漏的看完,那么95%的宏你都可以自己写了。

身上各个部位编号:
1:头
2:颈
3:肩
4:衬衣
5:胸
6:腰带
7:腿
8:脚
9:手腕
10:手套
11:手指1
12:手指2
13:饰品1
14:饰品2
15:背
16:主手
17:副手
18:远程武器

动作条编号:
主动作条1为 1--12
主动作条2为13--24
主动作条3(右1)为25--36
主动作条4(右2)为37--48
主动作条5(右下)为49--60
主动作条6(左下)为61--72

背包及包裹格子编号:
背包从右到左的编号分别是:4、3、2、1、0~
包裹格子的编号是从左至右排列,一个包的第一行分别是:1、2、3、4~
然后是包裹第2行:5、6、7、8~下面几行依次类推。

宏命令讲解: /cast

简单的说就是/施放,并且使用这个命令的宏只有一个法术会被施放。现在的这个命令可以加入条件来判定法术是否被施放。比如“/cast [help,combat] 快速治疗”,这个宏的意思是当目标为友善,并且在战斗中,那么施放快速治疗。

可用的条件:
help-判断目标是否为友善;
harm-判断目标是否为敌对;
combat-判断你是否在战斗中;
stance或stance:#-判断你是否在姿态中或是否在指定姿态中;
stealth-判断你是否在潜行;
modifier或modifier:x(x可为shift、ctrl、alt 或者是它们的组合)判断某个或某几个按键是否被按下。
equipped:-判断某件物品是否在装备中。可以是装备栏编号、装备分类(武器、副手。。。)、装备子类(双手剑、法仗等等。。。)
target=-可以把技能目标指定为任何有效的目标,并且可以另你不丢失当前目标!还可以为“none”,用来指定没有目标的时候。“self”,用来指定只对自己施放。比如“/use [target=self] 厚符文布绷带”,无论任何时候都只对自己使用绷带。

actionbar:-判断当前动作条是否被列出。可为1、2、3、4、5、6~
pet:-pet type为宠物类型;pet name为宠物名字。如果不填写宠物类型或名字则判断宠物是否存在。
mounted-判断是否在坐骑上。
swimming-判断是否在游泳。
flying-判断是否在飞行中。
outdoors-判断你是否在室外。
indoors-判断你是否在室内。
button:<#>判断某个特定按钮是否被用来触发技能。<#>可为1(鼠标左键)、2(鼠标右键)、3(鼠标按键3,也就是鼠标滚轮向下按,不是向上滚也不是向下滚)、4(鼠标按键4,多键鼠标专用)、5(鼠标按键5,多键鼠标专用)。默认为1。
channeling-判断你是否在引导法术。
channeling:法术名称-判断你是否在引导特定的法术。
exists-判断特定目标是否存在。
dead-判断目标是否死亡。
stance:<#>-判断是否在姿态中,默认为1(只写stance不写编号为默认)。牧师的暗影形态,盗贼的潜行都为1。
战士:1战斗、2防御、3狂暴
德鲁伊:1熊、2海豹?、3猫、4旅行、5枭兽/树
equipped:装备名称/类型/子类型-判断某件装备是否在装备中。比如“/cast [equipped:魔杖] 射击”,这个宏的意思是如果装备魔杖就使用射击。

/castsequence

连续点击可以按顺序施放指定法术。一个法术施放失败,后面的法术就不会被施放。

常使用的条件选相:

reset=<#>或target或combat或它们的组合,其他同“/cast”。

简单介绍一下<#>/target/combat的作用。
<#>-代表数字,一般都是1到1800,单位为秒。/castsequence reset=120 部落徽记,亡灵意志,这个宏的功能是先使用部落徽记,然后使用亡灵意志。如果120秒后亡灵意志依然没有被施放那么还是使用部落徽记。但是, reset=<#>永远都是在你施放最后一个法术的时候开始记时。
target-切换目标时重至宏。
combat-战斗开始时重至宏。

所有条件都可以在前面加“no”来达到相反的效果!比如“nocombat”,判断你是否不在战斗。
“,”相当于以前的and。比如“/cast [help,combat]快速治疗”,这句的意思就是目标为友方并且在战斗中时使用快速治疗。
“/”相当于以前的or。

/castrandom
随机施放法术,比如“/castrandom 变形术:猪,变形术:羊,变形术:龟”。(我变~我变~我变变变!)

/use
使用物品或装备,不再需要指定编号。比如“/use 厚符文布绷带”。

/userandom
随即使用指定的几件物品。

目标选定:
/targetenemy
选定一个敌对目标。

/targetfriend
选定一个友善目标。

/targetparty
选定一个小队队友为目标。

/targetraid
选定一个团队队友为目标。

/targetlasttarget
选定上个目标。

/targetlastenemy
选定上个敌对目标。

/assist
协助~同“/协助”。

宠物类:

/petattack
宠物攻击。

/petstay
宠物停止。

/petfollow
宠物跟随。

/petpassive
宠物被动形态。

/petdefensive
宠物防御形态。

/petaggressive
宠物攻击形态。

/petautocaston 法术名称
宠物法术自动施放开启。

/petautocastoff 法术名称
宠物法术自动施放关闭。

/focus
一直锁定一个目标~比如把这个命令和宠物攻击结合做一个宏。再比如你当前的宠物是MM,并且用这个宏让MM去攻击一个战士,然后你切换了目标,并让MM施放诱惑,这时MM诱惑的目标不会是你当前的目标,而是刚才的那个战士。

# show <法术名称/物品名称>
这个命令可以让你的宏显示指定法术或物品的图标。

/cancelaura
取消BUFF~比如“/cancelaura 奥术智慧”。

/stopmacro [option]
停止宏,可加条件判定。这里有一个特殊的例子:
/cast [harm] 变形术
/stopmacro [noharm]
/p 正在把%t变羊!别去碰它!
如果变形术施放失败,那么就不会在小队内说话。

/click
点击?貌似是的。和“/cast”一样何以加事件判断。
实例:/click [pet:虚空行者]PetActionButton1
还要说的一个重点内容:“PetActionButton1”,1可以改为1-10任何一个数,意思就是宠物技能栏的1-10。

最后,送大家两个宏:
/console SET targetNearestDistance "50"
将“TAB”能选定目标的最远距离改为50码。
/console SET targetNearestDistanceRadius "50"
将“TAB”能选定身后目标的最远距离设为50码,不过并不推荐这么做,20就够了。

学习实践这个帖子的小经验和小问题
学习实践这个帖子的小经验和小问题,终于可以用简体字了,我真不易..
因为在tf玩,所以下面有繁体字,技能名有出入...

先谈经验:
1.不要直接copy 别人的代码到以下文件中:
"盘符:\Program Files\World of Warcraft\WTF\Account\帐号名\服务器名\人物名\macros-cache.txt"
容易出问题,我就遇到过2行代码,死活不灵,在游戏里重新输入一遍,就好了 =..=

2.在宏里加一个"#showtooltip",看技能效果很方便,特别是"3吸取"那种宏,开始不熟悉快捷键可以看看.

3.不要乱添分号 ";":
但凡与写代码沾一点边的人,一行字结尾不加个";"就全身不舒服.....以懒人练级宏为例:
#showtooltip
/castsequence [nomodifier] reset=combat/target 生命虹吸,痛苦诅咒,腐蚀术,献祭,吸取生命,吸取生命;
/cast [modifier:alt]吸取灵魂;[modifier:ctrl]吸取法力;[modifier:shift]吸取生命;

这是一个错误的示范,加了";",后面的3吸取就没有效果了,要去掉....

4.宏的图标选择,请多试试图标选择面板里的第一个"问号图标".
以亡灵意志宏为例,图标选择"?",如果看看macros-cache.txt,图标名就是"INV_Misc_QuestionMark"

#showtooltip
/stopcasting
/cast [nomodifier]防护暗影结界;[modifier:alt]亡灵意志

这个宏在我的技能栏1的第5格上,按5就是暗防,按alt+5就是反恐.
当选择问号图标并拖到技能栏以后,问号图标就显示"防护暗影结界"的图标了,会显示该技能cd,当你按下"alt"(注意还不是"alt+5"),该图标自己变化为"亡灵意志",并且显示的是"亡灵意志"的cd.
上面经验3里那个宏我就用的问号图标,特方便看现在该施放哪一个技能了.懒要懒出境界,好比ui区的一个版主..宏 Macro
相信很多人都知道WOW中的斜杠"/"和表情命令.宏可以将这些命令按照自己对条件的设置串联起来,比如:/Kneel是让你跪下来的动作而/say就是最基础的对话动作
我们现在用一个宏把他们串起来:

第一行内容:“/Kneel”
第二行内容:“/say 如果你不嫁给我,那么我就一辈子不起来…” ”
这样你的人物就会先下跪再说:"如果你不嫁给我,那么我就一辈子不起来…"

宏可以应用所有WOW中已经定义了的斜杠"/"和表情命令,更要命的是,宏甚至可以应用人物的魔法和技能,

只需要在宏的定义过程中应用"/cast"命令,下面是已知的一些常用命令:

/Assist 这是个援助进攻的命令。当你的队伍同时面对几个敌人时,只要点击自己的队友(一般是队伍中的战士),然后使用这个命令,你的目标就会变成战士所选中的目标。大家集中火力消灭一个起!

/Cast 这是个使用技能的命令。当你在宏命令里输入/Cast 技能名(技能等级)或者只要按住Shift同时用鼠标点击一下你想要输入的技能的图标。例如当你是一个战士,想制作一个使用战斗怒吼的宏时,你可以输入/Cast Battle Shout(Rank 1)或者是直接按住Shift点击Battle Shout这个技能的图标。当然你可以在一个宏的不同行上输入几个技能,那么当你使用这个宏时,几个技能就会一起释放出来,再用不着你像章鱼一样同时按下几个键了 。

%t 这个符号也许会经常出现在你的宏命令里,它是一个代码,代表你当前所选中的人名。例如,你在宏里写下这么一句。(注意:后面要加一空格。) “/g %t ,今天天气真好,有没兴趣和我一起上山采蘑菇…”
如果你点中一位名叫苯笨的玩家,那么当你按下这个宏时,你就会说:“笨笨,今天天气真好,有没兴趣和我一起上山采蘑菇…”

/Target 这是一个自动选择目标的命令,你可以在宏里输入/Target (xxx),那么当你按下这个宏时,你将自动选定这个叫xxx的目标。

/in 这是一个延时命令,时间以秒为单位.同时它不支持攻击指令.格式:/in 3 dance 三秒后跳舞,如/in 3 dance,就是在3秒后跳舞,
/say start!
/in 3 say 3s later
/in 6 say 6s later

二:进阶教程

一些有用的 Macro

1。允许你在窗口和全屏状态之间切换

/script SetCVar("gxWindow", 1 - GetCVar("gxWindow"));
/console gxRestart

2。对于法师,必须要有的:将“X”换为你目前的变形术等级(下同);用它替换掉变形术技能。当你在队伍之外时使用它会得到“你不在队伍中。”的信息,但在队伍中的时候其它同伴会了解到你将释放的变形术目标。

/p Sheeping >>> %t<<<
/cast Polymorph (Rank X)

3。作为一个术士,这是在队伍中使用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击,跟着一个虚弱诅咒。

/assist 队伍中的拖怪手或者坦克的名字
/script PetAttack();
/cast Curse of Weakness (Rank X)

4。从背包和袋子里切换身上的武器

/script if ( not CursorHasItem() ) then PickupContainerItem(, );

PickupInventoryItem( ); end

bag# - 使用哪一个袋子的物品(0、1、2、3、4。0是背包)

slot# - 袋子里的位置(从0至左上)

equip# - 16 是主要武器, 17 是副武器

5。这个宏治疗队伍里你指定的人,如果你不在队伍中它会治疗你自己。然后会自动将目标切换回你最后一个敌人。它同时还会使用队聊提醒队友你会治疗哪一个人。

/script if (UnitName("target") ~=nil and UnitIsFriend("player","target")) then

CastSpellByName("Heal(Rank X)") SendChatMessage("Incoming Heal to %T", "Party") else

TargetUnit("player") CastSpellByName("Heal(Rank X)") TargetLastEnemy(); end

6。加速任务显示速度

/script QUEST_DEscriptION_GRADIENT_CPS = 600000
/script RegisterForSave("QUEST_DEscriptION_GRADIENT_CPS")
/script DEFAULT_CHAT_FRAME:AddMessage("quest text will scroll faster now");

7。消除等待接受任务的时间

/script AcceptQuest()

8。这个宏可以在路上自动护送玩家做任务。

/assist [player name]
/cast 法术(Rank X)
/target [player name]
/follow [player name]

9。切换主副武器,详情看第四条

/script PickupInventoryItem(16); PickupInventoryItem(17);

10。在没有目标或者目标是敌人的时候给自己加增益魔法或治疗。

CastSpellByName("Spell Name(Rank X)");

if ((SpellIsTargeting()) and (not UnitIsFriend("player","target")))

then

SpellTargetUnit("player");

end;

TargetLastEnemy();

11。切换双手武器与单手+盾或者双手挥舞武器

/script PickupInventoryItem(17);if(CursorHasItem()) then PickupContainerItem

(4,2);PickupContainerItem(4,1);PickupInventoryItem(16);else PickupContainerItem

(4,1);PickupInventoryItem(16);PickupContainerItem(4,2);PickupInventoryItem(17);end

12。设定“真实鼠标视野”

/script CameraOrSelectOrMoveStart(arg1);

想取消就再次输入。

13。切换近程技能栏和远程技能栏

/script CURRENT_ACTIONBAR_PAGE = 2;
/script ChangeActionBarPage();
/cast aspectofmonkey (just use the left click)

/script CURRENT_ACTIONBAR_PAGE = 1;
/script ChangeActionBarPage();
/cast aspectofhawk (just use the left click)

14。牧师对队友的一键加血,比如一号键给第一队友加血,二号键给第二队友加血,免除了还要鼠标确

定目标的操作。依次类推,从第一个人到最后一个

给队友1加血:
/script TargetUnit(GetPartyMember(1))
CastSpellByName(Heal(Rank X)) TargetLastEnemy()

给队友2加血:
/script TargetUnit(GetPartyMember(2)) CastSpellByName(Heal(Rank X)) TargetLastEnemy()

给队友3加血:
/script TargetUnit(GetPartyMember(3)) CastSpellByName(Heal(Rank X)) TargetLastEnemy()

15。一键解决喂养宠物:这个宏会从最左边的袋子里的第一个位置拿出食物喂养宠物,如果所在的位置

没有食物,它会自动打开袋子。

/script if (not PlayerFrame.inCombat) then if (not GetContainerItemLink(4, 1)) then

OpenBag(4); else CastSpellByName("Feed Pet"); PickupContainerItem(4, 1); end end

16。术士宏

1)如果目标生命大于20,释放抽取生命法术,否则使用灵魂抽取。
/script if (UnitHealth("target")>20) then CastSpellByName("Drain Life(Rank X)") else

CastSpellByName("Drain Soul(Rank 2)") end;

2)虚弱诅咒版本
/script if (UnitMana("target")>0) then CastSpellByName("Curse of Tongues(Rank X)") else

CastSpellByName("Curse of Weakness(Rank X)") end;

17.先治疗自己,然后自动选中上次的敌人
/target Pugar //选择自己,假设自己的名字是Pugar
/cast Lesser Heal (Rank 1) //施展次级治疗rank1
/script TargetLastEnemy(); //重新选择刚刚选择的敌人
/script AttackTarget(); //攻击,等同于右键点击敌人

18.对于一个术士很有用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击

,跟着一个虚弱诅咒。
/assist 队伍中的拖怪手或者坦克的名字
/script PetAttack();
/cast Curse of Weakness (Rank X)

19.等治疗完之后提醒别人注意下自己有可能被怪打,不加延时的话,就没这个效果了。
/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^_^

20.在路上自动护送朋友做任务。

/assist [player name]
/cast 法术(Rank X)
/target [player name]
/follow [player name]

三:高级教程

WOW的宏函数库可以去这两个地方查:

] http://www.cosmosui.org/texts/BlizzardCommands.xml

] http://www.wowwiki.com/index.php/World_of_Warcraft_API

函数的使用比较简单,学习过编程的都比较容易上手,基本的用法是在函数前加/script 来使用。比如
/script CURRENT_ACTIONBAR_PAGE = X;
/script ChangeActionBarPage();
就是将你的快捷栏翻到第X页。

函数库中有许多函数都是非常有用和方便的,比如一次打开所有包包:

/script OpenAllBags();

配合关闭包包的函数,一次关闭所有包的宏也可以实现:

/script CloseBag(0);
/script CloseBag(1);
/script CloseBag(2);
/script CloseBag(3);
/script CloseBag(4);

怎么样,下次你卖东西的时候不会一个个开包关包了吧?

使用函数还不是最恐怖的,恐怖的是WOW的宏是可以用条件判断的,看下面这两个:
/script if ( GetComboPoints() >= 3 ) then CastSpellByName("Rip(Rank 2)"); else if (

UnitMana("player") >= 40 ) then CastSpellByName("Rake(Rank 1)"); end end

据说这个包含if,then的宏可以让盗贼实现自动根据combo点数来使用技能(未测试),其中还使用了角

色MANA值的调用,恐怖吧?还有这个查找spell的宏:
function GetSpellIdByItsName(myWantedSpell, myWantedRank)
local spellId = 1;
local spellBook = "spell";
local spellName, rankName;
spellName, rankName = GetSpellName(spellId, spellBook);
while (spellName ) do
if ( ( spellName == myWantedSpell ) and ( ( not myWantedRank ) or ( rankName = myWantedRank

) ) ) then return spellId; end
spellName, rankName = GetSpellName(spellId, spellBook);
end
return -1;
end

里面可以自己定义function,还使用了while,do这样的循环,是不是让你想到了N种应用的可能呢?

遗憾的是,目前官方似乎没有提供延时的宏,所以在战斗中使用多种有延时的技能是无法实现的(无延时的技能可以实现同时使用),类似换其他武器-使用技能或法术-换回武器这样的功能也无法实现,

(所谓用宏实现剑盾战士换双手武器MS再换回来是行不通的),不过使用COSMOS的朋友可以用/in 来实现非战斗指令的延时,比如
/in 3 say hi 就会在3秒后说句hi。

/in 6 /script MoveForwardStart(arg1);
就会在6秒后向前跑。

虽然法术和技能无法用/in指令来延时,但这样已经很强大了,比如,你可以编出各种运动的宏,如兜后,转身等。PVP时估计是必不可少的。

下面是一个玩家写的双手武器战士自动逃跑的宏:
/script UseContainerItem(0, 2);ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown

(12);ActionButtonUp(12);
/cast Thunder Clap(Rank 1);
/script TurnLeftStart(arg1);
/in 1 /script TurnLeftStop(arg1);ToggleAutoRun();

使用这个宏的条件:在大包包第二格放了回复药,快捷栏第11,12分别是一单手一盾的快捷方式。

使用这个宏后,角色自动喝回复药,装备上盾,使用Thunder Clap(这三个动作同时进行),向后转180度后开自动跑步键逃走。其中技能等可以根据需要自己改。怎么样,是不是很夸张啊,哈哈。

还有一些有用的宏:

切换装备,

双手切换单手并换第二个快捷栏,快捷栏第11,12分别是一单手一盾的快捷方式
/script ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12);
/script CURRENT_ACTIONBAR_PAGE = 2;
/script ChangeActionBarPage();
单手切换双手并换回第一快捷栏,快捷栏12是一双手武器快捷方式
/script ActionButtonDown(12);ActionButtonUp(12);
/script CURRENT_ACTIONBAR_PAGE = 1;
/script ChangeActionBarPage();

下面是另一篇

作者:重返荣誉
来源:17173
宏只是一种辅助的手段,希望通过下面的讲解让大家能轻松编辑属于自己的宏。

先来看宏的结构:

/script
if (UnitHealthMax(target)>80)
then
CastSpellByName(""火球术(等级4)"")
SendChatMessage(""对 %T 使用火球术"", ""EMOTE"")
else
CastSpellByName(""奥术飞弹(等级2)"")
SendChatMessage(""对 %T 使用奥术飞弹"", ""EMOTE"")

这是一个没有延时功能的宏,带延时功能的宏将在稍后说明,
第一句/script 申明函数开始,这句是必须的,整个宏的中文意思是
如果你选定的目标的生命值大于80,就执行4级火球术,并告知周围的人你对目标使用了这个动作,
%t就是代表目标,否则就执行2级飞弹,告知周围的人你对目标使用了这个动作。
值得注意的是比如SendChatMessage(""对 %T 使用火球术"", ""EMOTE"") 中的EMOTE 如果你换成party就
只是队内可见。
此例使用到的函数:
UnitHealthMax(target) 返回目标生命值
同样此例如不要判断就直接是
/script
CastSpellByName(""火球术(等级4)"")
SendChatMessage(""对 %T 使用火球术"", ""EMOTE"")

注意本文注重介绍思路!
下面是一些常用的宏
MoveBackwardStart 向后移动,用时写成 MoveBackwardStart() 注意每句后面的;号并不是必须的,主要是习惯。
MoveBackwardStop 停止后退
StrafeLeftStart 向左移动
StrafeLeftStop 停止左移
StrafeRightStart 向右移动
StrafeRightStop 停止右移
ToggleAutoRun 向正面跑
TurnLeftStart 向左转
TurnLeftStop 停止左转
TurnRightStart 向右转
TurnRightStop 停止右转
jump() 跳
参考技术B 我是玩战士的 给一个战士用的宏你研究下。 WOW现在有好多宏都不能使用了!

#show [stance:1]冲锋; [stance:3]拦截
/dismount [mounted]
/startattack
/cast 狂暴之怒
/cast挫志怒吼
/stopcasting
/cast [nocombat,stance:1] 冲锋; [nocombat,nostance:1] 战斗姿态; [combat,nostance:3] 狂暴姿态; [combat,stance:3] 拦截
战斗姿态是冲锋 狂暴姿态是拦截 现在的宏都不能连用了 要等CD

# show 致死打击

/stopcasting

/castsequence reset=6/target/combat 致死打击,英勇打击

/startattack
再送你一个比较难的
/stopcasting

/cast [stance:1,combat,harm]反击风暴

/cast [stance:2,combat,harm]盾墙

/cast [stance:3,combat,harm]鲁莽

武器姿态
/cast 武器姿态
/equip 你的双手武器

狂暴姿态
/cast 狂暴姿态
/equip 你的双手武器

防御姿态
/cast 防御姿态
/equip 你的单手武器
/equip 你的盾

冲锋后聚怪+初始仇恨,战斗中补DEBUFF,有人分怪时就不要雷霆了~
#showtooltip
/castsequence reset=30/combat 挫志怒吼,雷霆一击

把这个放在战斗姿态的行动条里,然后在狂暴姿态的同一格放上拳击
#showtooltip
/cast [equipped:盾牌]盾击; 狂暴姿态

精华宏啊~ 用飞行时按住alt,平时骑着不怕失手落马~ 主动解除坐骑也是按住alt使用就行
#showtooltip
/cast [combat,stance:1/3]斩杀; [combat,stance:2]复仇
/use [nocombat,modifier:alt]黑色狮鹫; [nocombat,nomounted]迅捷褐色马

两个不共享冷却的技能,抗怪时泄怒方便~
/cast 盾牌格挡
/cast 英勇打击

/cast [help][target=targettarget,help]援护

战士逃跑宏
这是一个战士逃跑的时候使用的宏,首先使用包中的药水,换上盾牌(此例中其换武器的快捷位于技能栏第一页第11和12格)。使用Thunder Clap减低敌人速度,然后转身逃跑。
/script UseContainerItem(Bag, Slot);ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12)
/cast Thunder Clap(Rank 1)
/script TurnLeftStart(arg1)
/in 1 /script TurnLeftStop(arg1);ToggleAutoRun()

http://www.how21.com/search.php?keyword=%E9%AD%94%E5%85%BD%E4%B8%96%E7%95%8C%E6%88%98%E5%A3%AB%E7%94%A8%E5%AE%8F&modulevalue=-1&game_id=7

对战士来说,tbc的宏有两个最明显的变化:
1。判断语句失效。类似“如果.......那么.......否则......”的语句一概不能再用。
具体举例如目标20%以下放斩杀,否则放致死的宏不行了,又或者45怒以上点亮英勇,否则用致死,等等

2。包含一大堆 /施放 的宏不能再用。比如:
/cast 盾牌猛击
/cast 复仇
/cast 破甲
/cast 盾牌格挡

这个傻瓜宏如今行不通。在旧的wow里,这个宏如果盾猛不能用,那么程序将跳过它并检查复仇,如果不行就看破甲,以此类推,每按一次至少都会有一个命令被执行。但tbc里一旦某一步不能用,程序将卡在这里,后面所有的触发同种公共cd的技能都被华丽地无视了,仅有少数“点亮”型技能能够继续被执行,如英勇和顺劈。所以

/cast 压制
/stopcasting
/cast 致死打击

永远放不出致死。而

/cast 压制
/stopcasting
/cast 英勇打击

可以,因为英勇并不占用公共cd。此外

/cast 压制
/stopcasting
/cast 狂暴姿态

可以。因为姿态切换有着自己的独立1秒的公共cd。最后是

/cast 冲锋
/stopcasting
/cast 英勇
/stopcasting
/cast 狂暴姿态

是可行的。因为冲锋/切姿态是互相独立的cd,而英勇不属于任何一种,因此一键可以做这三件事。这是经典冲锋宏能够再现的基础。
其实有两种方法可以部分绕过这些限制,一是施放序列/castsequence,另一个是随机施放/castrandom,但效果很不好,不如不用,不提也罢

以上是关于战士的宏的简单的介绍,希望看了的人对哪些宏能用,哪些要被淘汰心里有底。也希望大家能够举一反三,很多时候不少小宏都是同一类型的变体而已。

0。开始攻击

/startattack

这简单的一行能让你开始攻击目标,并且怎么按都不会停止。比如你可以将其跟致死合用:
/startattack
/cast 致死打击

这样不管有没有怒放致死,按这个宏都会让你开始攻击。

如果你习惯于单独将其作为一个按钮,那么加上一行:
#show 攻击
/startattack

1。冲锋/拦截/断筋/切姿态

#show [stance:1]冲锋; [stance:3]拦截
/dismount [mounted]
/startattack
/cast 断筋
/stopcasting
/cast [nocombat,stance:1] 冲锋; [nocombat,nostance:1] 战斗姿态; [combat,nostance:3] 狂暴姿态; [combat,stance:3] 拦截

鉴于不少人反映切狂暴有时会误事,把上面加粗部分删除就能去掉这宏切狂暴姿态的能力

战斗外冲锋,如果不在战斗姿态则会切过去,然后再按一下
战斗中拦截,如果不在狂暴姿态则会切过去,然后再按一下
任何情况下近身后断筋
战斗姿态下显示冲锋的冷却,狂暴姿态下显示拦截的冷却
在马上则自动下马+冲锋,只需按一次
与旧的宏系统能做的事情相比,少了一个判断如果怒气不够10则先血怒再拦截的功能
虽然省事且可靠,但从技巧上讲,断筋最好还是在快捷栏上占独立的位置。如果想将冲锋拦截和别的技能绑定,把断筋改成那个技能名称就行
还有就是别在空中乱按这个....
这个宏在15楼有进一步细化,不过一般用不到。

2。投掷/开枪/射箭

/cast [equipped:投掷武器] 投掷; 射击
一键搞定任何远程武器的使用

3。顺劈

/script SetCVar("targetNearestDistance",5)
/targetenemy
/cast 顺劈
/startattack
/script SetCVar("targetNearestDistance",41)

第1行和第5行是设定最小自动选择目标的距离。
原始的顺劈是这样的:
如果你当前没有选中目标,按下顺劈技能,系统会自动选择前方最近的一个目标,不管是否在近战距离内。
如果你当前选中了目标,那么不管怎么按都不会改变目标,就算目标在很远的地方而你鼻子底下就有另一个目标也好。
那么战场里有时会遇到这样的情况:你怒气足够,目标A和B都在5码内。你选中A并按下顺劈,但在下一次攻击出手前A跑出了近战距离,而B仍在近战范围内。这时你得手动切至B----这个宏就是替你做了这事:永远选择离自己5码内的任意目标来顺劈。
这听起来有点多余,但实战中经常就是那么手动切换的一点延迟让A逃出了B的近战范围。如果人再多点,场面再混乱点,B是个侏儒然后还有贼不时晕你等等等等更是如此。

4。双黄
/cast 毁灭打击
/stopcasting
/cast 英勇打击

防战的泄怒宏。而在刚开始5破前也能利用公共cd来跳过毁灭,当纯粹的英勇用
与此结构类似的有:
#show 复仇
/cast 复仇
/stopcasting
/cast 盾牌格挡

5。坐骑/斩杀
/cast [combat] 斩杀
/use [nocombat,outdoors,flyable] 飞行坐骑物品名称
/use [nocombat,outdoors,noflyable] 地面坐骑物品名称
/dismount [mounted]

如果人物在战斗状态,那么这个按钮是斩杀---包括图标在内。
如果人物在非战斗状态且在外域,那么用飞行坐骑,如果在老世界,则用千金。----图标自动变成相应坐骑的。

这个看起来比较古怪的宏事实上是我最满意的宏之一。tbc键位严重短缺,坐骑这东西给快捷键有点可惜,不给的话又不怎么方便,何况2种.....所以跟斩杀这种使用条件区分得非常明显的东西结合起来,用到现在无任何瑕疵

6。法术反射
/cast [equipped:盾牌] 法术反射
/equip [stance:1/2] 单手武器名称
/equip [stance:1/2,noequipped:盾牌] 盾牌名称

如果装备了盾就用反射,否则先装上剑盾再用反射,多按一次

7。切换姿态+换武器
防御:
#show 防御姿态
/equip [stance:2,noequipped:单手剑] 单手武器名称
/equip [stance:2,noequipped:盾牌] 盾牌名称
/cast 防御姿态

去掉方括号和其中的内容可实现按一次就切换姿态+武器,否则按两次
第二行的"单手剑"可以是其他单手武器类型,对应你不常见的、特殊场合下使用的tank武器的类型。
比如说,一般不拿风剑去顶双子,要换上个.......混乱吧。那么第二行就是:
/equip [stance:2,noequipped:单手斧] 风剑名称
如果你拿的是非单手斧武器,那么这会使你换上风剑;如果你拿的是单手斧(准备顶双子了),那么就不会给你换风剑。如果你已经持着风剑,这行也不会做任何事。
(拿混乱举例是为了说明类型,那么慢的东西不适合tank)
第一行的#show是为了保证这个宏看上去和防御姿态的图标一模一样.......不加这一行,防御姿态下这个图标周围一圈并不会变亮

狂暴:
#show 狂暴姿态
/equip [stance:3,noequipped:双手斧] 武器名称
/cast 狂暴姿态
同上

战斗:
#show 战斗姿态
/equip [stance:1] 武器名称
/cast [stance:1] 压制; 战斗姿态

第二行去掉方括号内的限制只是为了说明这也可以,当然也能按前两个那样加上
第三行里顺路加入压制,不加也没所谓。如果不能放压制,姿态还是照切。

换双持武器:
/equipslot 16 主手武器名称
/equipslot 17 副手武器名称

双手武器和剑盾互换,不包括切姿态:
/equip [noequipped:单手剑] 单手武器名称
/equip [noequipped:盾牌] 盾牌名称
/equip [noequipped:双手斧] 双手武器名称

第一行的剑和第三行的斧按具体情况替换成自己用的武器类型

8。破胆+停止攻击
#showtooltip 破胆怒吼
/cast 破胆怒吼
/stopattack

第一行可不要,只是给这宏加上鼠标移上去后的破胆技能提示。也可加入绷带的使用,在以上三行后面接上这两句:
/stopcasting
/use [target=player] (绷带名)
但这么绑不太灵活,确保你破胆时不处于公共cd中,否则可能浪费绷带机会

9。援护
#showtooltip 援护
/cast [help] 援护; [target=targettarget, help] 援护
/startattack [target=harm]

如果目标是友善的那么援护;如果目标是敌对,那么对其目标援护
总之就是不用切目标就能第一时间援护

10。farm宏

#showtooltip [stance:1]雷霆一击; [stance:3]乘胜追击
/cast [stance:1] 雷霆一击
/stopcasting
/cast [stance:1] 狂暴姿态
/cast [stance:3] 乘胜追击

这就是不太有普遍性的宏了,因为这个追击显然也能在战斗姿态下用
然而2个触发公共cd的技能是不能连着写的,因此要靠姿态绕过这限制.......

这个也可以改造成小副本用的tank开怪宏,很省心:

#showtooltip [stance:1]挫志怒吼; [stance:2]雷霆一击
/cast [stance:1] 挫志怒吼
/stopcasting
/cast [stance:1] 防御姿态
/cast [stance:2] 雷霆一击

11。压制宏
压制现在有两种实现方式。
第一是和姿态切换整合:

#show 战斗姿态
/cast [stance:1] 压制; 战斗姿态

用这个宏来切换战斗姿态,切过来后能压就压,不能也没副作用,猛按就行。省一个格子

第二是
#show 压制
/castsequence reset=4 压制, 狂暴姿态

放了压制后再点直接切回狂暴。如果压制不亮那么不会切,如果压制打出去但被格挡招架未命中了,仍然会切狂暴。

如果你在第二技能栏,也就是不随姿态而变化的那些栏上有空余位置也可以这么写:
#show 压制
/castsequence reset=4 战斗姿态, 压制, 狂暴姿态
压制亮不亮都会切战斗,然而如果不能用的话就切不回狂暴了。

切换姿态同时切换武器

/equip [noequipped:双手] 武器名称
/cast [nostance:1] 战斗姿态
/equip [noequipped:双手] 武器名称
/cast [nostance:3] 狂暴姿态

拳击

# showtooltip 拳击
/cast [stance:1/2] 狂暴姿态; 拳击

拦截

# showtooltip 拦截
/cast [stance:1/2] 狂暴姿态; 拦截

致死打击或嗜血后自动攻击

/cast 致死打击
# showtooltip 攻击
/startattack

缴械

# showtooltip 缴械
/cast [stance:1/3] 防御姿态; 缴械

法术反射

# showtooltip 法术反射
/equip 单手武器名称
/equip 盾牌名称
/cast [stance:1/3] 防御姿态; 法术反射

饰品双开

/use 13
/use 14

冲锋接断筋

# show 冲锋
/cast [combat] 断筋; 冲锋

BBS.NGACN.COM

补充两个,应该非常有用:
一键开反击、盾墙、鲁莽。根据当时所在姿态决定,盾墙需要装备盾牌能开。
/cast [stance:1] 反击风暴;[stance:2,equipped:盾牌] 盾墙;[stance:3] 鲁莽
/script s="反击风暴!谁想挨揍的啊!","盾墙!硬梆梆的15秒!","鲁莽!不要拦我!";SendChatMessage(s[GetShapeshiftForm(true)], "YELL");
致死、旋风、英勇3和1宏。先致死,致死CD用旋风,2个都CD用应用。
/castsequence reset=6 致死打击,旋风斩
/castsequence reset=10 旋风斩,英勇打击
参考技术C 如果想学习,请去暴雪的MACRO&UI论坛,国内部分地区的用户要用代理才能上暴雪官网的论坛

国内翻译的只是小皮毛,要想学必须去英文论坛

另外,宏用的是LUA脚本,相比之下语法要求比C宽松
参考技术D 占个位置把这贴收藏了先

以上是关于魔兽世界技能宏怎么做的主要内容,如果未能解决你的问题,请参考以下文章