从来没制作过macro的朋友,请先去以下连接,了解最基本的制作macro方法
http://games.sina.com.cn/z/wow/2004-04-02/121870.shtml
接着请再阅读,最好是打印以下链接的内容,这些都能用在macro中
斜杠命令: 有趣的表情命令
Macro 在团队中的运用, Raid有Raid的一套,我现在着重讲团队中的运用.
pull: Pull宏的主要运用是告诉团队你已经开始拉怪并且告诉团队拉来了什么怪,
===>/inc %t (%t=target)
/v inc
Tank:告诉团队你已接手什么怪, 请healer注意你的HP.
===> /g Attack===>%t
/v attack
Healer: 告诉团队你将对团队中的谁释放多少的治疗
===> /g Heal ==>%t==>120HP
/cast XXXXXXXX
/v heal
至于其他职业, 可以把自己许多特殊的技能做成宏. 但不建议将所有都做成宏
例如:
Warlock的惊吓:
==> Fear 10s==> %t
/cast XXXX
当然也可以把许多危急的言语做成宏
例如: 当法系被怪物杀,而tank没发现时:
===>/p Help! Help!
/v Help
或者, 法系杀到没有魔法了,或者牧师杀到没有魔法了应该提醒队友:
===>/p OOM!!!OOM!! (oom=out of mana)
/v oom
PS: 如果有兴趣, 请浏览 http://games.sina.com.cn/z/wow/2004-04-02/121965.shtml
那么, macro最基本的运用就说到这里
- 本文固定链接: https://www.fengshen.cn/2005/01/zt-macro(宏)教学开课-从入门到精通/storyofwind/
- 转载请注明: fengshen 发表于 Dream of Wind | 一梦风神
觉得文章有用,微信打赏一元。

我有大脚了,国人推荐的。
晕了
忘了登录了 直接用游客身份来写了
NND ,到现在才知道这个家伙是做外挂的。
最后, 也是最难的, 这其中牵涉到了部分编程的理念.
也少量的将运用写语法
这部分, 我就不多说了, 估计会里能看懂的也不多, 就直接引用国外站点上的来解释下
/script PickupContainerItem(bag, slot)
The basic command. Works like this:
If no item in cursor:
If item in bag:slot - picks up the item and puts it on the cursor.
If no item in bag:slot - does nothing
If item on cursor
If item in bag:slot - switches the item in the bag:slot with the one on the cursor.
If no item in bag:slot - puts down item from cursor into bag:slot
/script PickupInventoryItem(inventorySlot)
Picks up/puts down/switches item into the specified slot.
See InventorySlots for ids and mappings.
Better method:
/script UseContainerItem(bag, slot);
Will automatically equip the item referenced by bag,slot, placing any existing already equipped item in the bag slot.
Yes, this is undoubtedly easier... until you start dealing with dualwielding. At which point UseContainerItem stops being nice. -- Sarf
[edit]Multiple commands
There is a problem when executing multiple Pickup commands because they execute instantaneously on your client, which is not always synched with the server.
Therefore, follow these simple guidelines:
Check if the cursor has an item on it and execute all your pickup commands on the same line.
Example:
if ( not CursorHasItem() ) then PickupContainerItem(...); ... end
Pickup items once, and drop them once for one macro.
Good luck!
[edit]Weapon swapping scripts
NOTE: When copying the scripts, make sure they end up on ONE line. Also, you will NEED to change the offhandBag, offhandBagSlot and mainhandBag, mainhandBagSlot names to actual numbers, as the scripts will NOT fit in a macro as it is.
[edit]From mainhand/offhand to mainhand/offhand
Script to swap items in both hands to other items in both hands. offhandBag, offhandBagSlot and mainhandBag, mainhandBagSlot need to be specified (duh).
/script if ( not CursorHasItem() ) then PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); PickupContainerItem(offhandBag, offhandBagSlot); PickupInventoryItem(17); PickupContainerItem(offhandBag, offhandBagSlot); end
[edit]From mainhand to mainhand/offhand
Script to switch from item in main hand to other items in both hands. offhandBag, offhandBagSlot and mainhandBag, mainhandBagSlot need to be specified (duh). Weapon in main hand will end up in mainhandBag, mainhandBagSlot.
/script if ( not CursorHasItem() ) then PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); PickupContainerItem(offhandBag, offhandBagSlot); PickupInventoryItem(17); if ( CursorHasItem() ) then PickupContainerItem(offhandBag, offhandBagSlot); end end
[edit]From mainhand/offhand to mainhand
Script to switch from items in both hands to one item in the main hand. offhandBag, offhandBagSlot and mainhandBag, mainhandBagSlot need to be specified (duh). Weapons will end up on the slots specified.
/script if ( not CursorHasItem() ) then PickupInventoryItem(17); if ( CursorHasItem() ) then PickupContainerItem(offhandBag, offhandBagSlot); end PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); end
[edit]From mainhand to mainhand
Script to switch from item in main hand to another item in the main hand. mainhandBag, mainhandBagSlot need to be specified (duh). The equipped weapon will end up on mainhandBag, mainhandBagSlot.
/script if ( not CursorHasItem() ) then PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); end
如果你已经能理解上面所说的, 并且顺利制作出了自己的macro
恭喜你! 同时有兴趣请继续往下看 (高级篇)
WOW的宏相比EQ里说更为复杂深奥, 它能在实际运用中添加上涵数的运用.
比较全的涵数表:在这里
涵数在宏中如何运用呢?
其实很简单, 举例:
你是个战士, 手上拿的是把双手剑, 在你第二行快捷栏的第11,12两格是单手剑和盾的快捷
你建立了一个战士攻击的宏
/p Attack==>%t
/v Attack
接下来,你想把手上拿的双手剑改成单手加盾, 那么你只要在宏输入内容那里添加如下字符
/script CURRENT_ACTIONBAR_PAGE = 1; (当前的快捷栏)
/script ChangeActionBarPage(2); (你想翻到的第二行快捷)
/script ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12);(类似按键精灵的按下,放掉动作)
再举例别人做的一个战士自动逃跑的宏
双手武器战士自动逃跑的宏:
/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();
(/in 1 是一个延迟的命令, 这个在wow自带涵数中无法实现, 只有装了cosmos的能用)
使用这个宏的条件:在大包包第二格放了回复药,快捷栏第11,12分别是一单手一盾的快捷方式。
使用这个宏后,角色自动喝回复药,装备上盾,使用Thunder Clap(这三个动作同时进行),向后转180度后开自动跑步键逃走。其中技能等可以根据需要自己改。
欢迎大家贴出自己根据函数列表弄出的macro, 接下来将更深入的探讨