sunnyboycsd吧 关注:55贴子:265
  • 5回复贴,共1

WoW 2.0宏指南

收藏回复

  • 218.58.59.*
WoW 2.0宏指南 
 作者: nga lostcup 
 
 (作者注:WoW 2.0还在Beta阶段,因此以下条件选项随时可能被更改。)
In WoW 2.0, macros and addons will drastically change. Recently, Slouken announced an exciting new addition to the functionality of macros in WoW 2.0, a set of conditional options for the /cast, /use, /target, /focus, /assist, /stopmacro, /cancelaura, /userandom, /castrandom, and /castsequence slash commands. This post is intended to be a "How-To" guide on using them. 
NOTE: While most of the examples given are done using ?/cast?, these options are available to all the slash commands listed above. 
在WoW 2.0中,宏和插件将会有翻天覆地的改变。最近,Slouken(Blizzard UI开发者)宣布了一个令人激动的宏的新特性,一系列条件选项将可以被应用于以下斜杠命令:/cast,/use,/target,/focus,/assist,/stopmacro,/cancelaura,/userandom,/castrandom,以及/castsequence。这个帖子的目的就在于讲解如何应用它们。
注:虽然多数例子都使用了"/cast",但事实上这些条件选项对前面提到的所有斜杠命令都有效。
Understand that most current macros will be obsolete in 2.0. Just about anything using CastSpellByName() or TargetUnit() will be non-functional in combat. In addition, most ?dumb logic? macros will not work either. However, you can now replicate the functionality of many popular macros with these new Macro Options. 
Currently, using ?/cast? is very simple. The command format is ?/cast ? (which casts the highest rank of the listed spell), or ?/cast (Rank <#>)?. Some examples: 
/cast Greater Heal 
/cast Arcane Intellect(Rank 3) 
在2.0中,目前所用的大多数宏都将被废弃,因为在战斗中,任何用到CastSpellByName()或者TargetUnit()的宏都将不再有作用。更进一步的,多数“傻瓜逻辑”的宏也不会再有效。但是,你现在可以通过新的宏条件选项来实现许多流行宏的功能。
现在,使用“/cast”(“/施放”)非常简明,命令格式就是“/cast <法术名称>”(施放最高等级的法术)或者“/cast <法术名陈>(Rank <#>)”。比如说:
/施放 强效治疗术
/施放 奥术智慧(等级 3)
In the new system, this format still works just the same, however you can now add options to give more flexibility to your /cast statements. The new command format for ?/cast? is: ?/cast [] ; [] ; [] ; ... 



1楼2009-12-01 10:05回复
    • 218.58.59.*

    The way a macro works now is like this: The first set of options is checked. If they are true, then the first spell is cast. If they are false, the next set of options is evaluated, and if true, the next spell is cast, and so on. However, you must keep in mind that only one spell will be cast. As soon as a set of options evaluates to true, the game will cast the corresponding spell, and that line of the macro will be done. 
    在新的系统中,你依然可以使用原来的这些格式,不过你现在可以加入条件选项来使得“/cast”更加灵活。“/cast”的新格式是:“/cast [<第一组条件选项>] <第一个法术名称>; [<第二组条件选项>] <第二个法术名称>; [<第三组条件选项>] <第三个法术名称>;...”。
    现在让宏运作起来的方式就像这样:第一组条件选项被检测,如果它们成立,则第一个法术被施放,如果它们不成立,则第二组条件选项被检测,如果这个成立了,下一个法术被施放,如此下去。但是,你必须牢记,只有一个法术会被施放。当一组条件选项被检测到成立时,相应的法术就会被施放,宏也就此结束。
    The current options available to players are: 
    help - Evaluates ?true? if target is friendly 
    harm - Evaluates ?true? if target is hostile 
    combat - Evaluates ?true? if you are in combat. 
    stance or stance:# - Evaluates ?true? if you are in a stance, or are in a particular stance (see below) 
    stealth - Evaluates ?true? if you are stealthed. 
    modifier or modifier:shift|ctrl|alt - Evaluates ?true? if the selected key is held down when the command is executed. 
    equipped: - Evaluates ?true? if item is equipped. Item can be any valid inventory slot, item class or item subclass. 
    target= - Special option. It changes the target from the default of "target" to any valid unitid. (see below) 
    actionbar: - Evaluates ?true? if the current actionbar is the same as the listed one. 
    当前可用的条件选项有:
    help - 检测目标是否为友善
    


    2楼2009-12-01 10:05
    回复
      • 218.58.59.*
      harm - 检测目标是否为敌对
      combat - 检测你是否在战斗中
      stance或stance:# - 检测你是否在姿态中,或是否在某个特定的姿态中(详见下)
      stealth - 检测你是否潜行
      modifier或modifier:shift|ctrl|alt - 检测命令被执行时是否某个特定的键被按下
      equipped: - 检测某个物品是否被装备。可以是任何有效的装备槽,物品分类,或者物品子类
      target = - 特殊条件选项,它把当前目标改变为任何有效的单位(详见下)
      actionbar: - 检测当前动作条是否为列出的那个
      NEW OPTIONS: 
      pet: - Evaluates ?true? if the pet exists. Takes pet type (Owl, Bear, Imp) or pet name (Fluffy, MrBigglesworth). With no modifier (i.e. just [pet]) it evaluates ?true? if ANY pet exists. 
      mounted, swimming, flying - Evaluates ?true? if you are mounted, swimming, or flying, respectively. 
      indoors, outdoors - Evaluates ?true? if you are indoors or outdoors, respectively. 
      button:<#> - Evaluates ?true? if the selected button was used to ?click? the spell, defaults to 1 (see below). 
      channeling: - Evaluates true if you are channeling the spell listed. With no spell listed, it evaluates true if any spell is being channeled. 
      exists and dead - Evaluates true if your target is dead, or actually exists. 
      新的条件选项:
      pet: - 检测宠物是否存在。可以接受宠物类型(枭,熊,小鬼)或者名字(Fluffy,我家坏坏)作为条件。不带条件则检测是否有任何宠物存在。
      mounted,swimming,flying - 检测是否在坐骑上,游泳,或者飞行中
      indoors,outdoors - 检测是在室内还是室外
      button:<#> - 检测某个特定的按钮被用来触发法术,默认为1(详见下)
      exists 和 dead - 检测是否目标已经死亡,或是否真的存在
      New Macro Command 
      --------------------------- 
      /castsequence - Casts a predetermines set of spells in sequence (See Below) 
      # show - Shows macro feedback for the listed spell 
      Some additional tricks you can do with the options: 
      You can add ?no? to the beginning of any option (except target) to invert it, i.e. ?nocombat? will only work if you are NOT in combat. 
      


      3楼2009-12-01 10:05
      回复
        • 218.58.59.*
        Seperating options with a comma ?,? will act like an ?and? statement; if both options are true, it executes. 
        Seperating options with a slash ?/? will act like an ?or? statement; if either option is true, it executes. 
        Selecting the ??? Icon in the Macro Editor will force the macro to present the icon of the current spell that spell feedback is being given for. 
        新的宏命令
        ---------------------------
        /castsequence - 按顺序施放一组事先设定好的法术(详见下)
        # show <法术> - 显示所列出法术的宏返回值
        对于条件选项的一些额外技巧:
        你可以在任何条件选项前加上“no”来得到反效果,比如,“nocombat”则在脱离战斗的情况下成立。
        用逗号“,”来分隔条件选项作用和“and”一样,当条件选项同时成立时执行。
        用斜杠“/”来分隔条件选项作用和“or”一样,当其中一个条件选项成立时执行。
        在宏编辑器里按“?”图标将强制宏以当前法术的图标显示。
        举例和姿态
        Here are some examples to help: 
        /cast Greater Heal 
        Very simple macro which casts Greater Heal on your target. 
        /cast [help] Greater Heal 
        One option added. Will cast Greater Heal IF the target is friendly. 
        /cast [help] Greater Heal; Smite 
        Second spell added. Since it has no option added to it, it will be cast any time the first option fails. 
        /cast [help, combat] Flash Heal; [help, nocombat] Greater Heal; Smite 
        This macro will cast Flash Heal on a friendly target if you (not the target) are in combat. If you are not in combat and the target is friendly, it will cast Greater Heal. If neither of these is true (i.e. the target is not friendly) it will cast Smite. 
        /cast [help] Greater Heal; [harm, combat] Smite; [harm, nocombat] Mind Flay 
        This will cast Greater Heal on a friendly target, or Smite if the player is in combat, or Mind Flay if the player is not in combat. 
        这里有一些举例说明:
        /施放 强效治疗术
        非常简单,向你的目标施放强效治疗术。
        


        4楼2009-12-01 10:05
        回复
          • 218.58.59.*

          “好吧,这真的很厉害,不过我实际上是个术士啊。”
          当然,作为一个术士,我相信你会一直重复上三种DoT,现在你可以为它们设置一个序列以节省按钮空间啦。
          /castsequence 腐蚀, 献祭, 痛苦诅咒
          就这么简单,你可以连续点击三次这个宏来上这三种DoT。
          “但如果在我施放完这些前目标就死了呢?我又卡在这个序列里了,我可不想设什么定时器!”
          那也没关系,我们可以用其他的条件选项。如果你设定“reset=target”,那序列将在你改变目标时就重置到起始位置。你也可以设置“reset=combat”,每当你脱离战斗,这个序列就会被重置了。如果你使用“/”控制符(你还记得吧,之前提到过),你也可以将这些重置条件选项组合起来!
          /castsequence reset=combat/target 腐蚀, 献祭, 痛苦诅咒
          就这全了,这下子每当你改变目标(比如原来的目标快死了,你选中的新的目标)或脱离了战斗(可能目标在你施放完所有DoT前就死了),它将会把整个序列重置,让你可以从头开始。
          "Ok, great, I think I got it now! Gimme a sec to set my new macros..... done!" 
          Excellent, I?m glad I could help. 
          "So... wanna duel?" 
          Um, no thanks, I don?t duel warlocks. 
          "Bah, you wuss." 
          “OK,真棒,我想我现在弄明白了!给我点时间设置新的宏....搞定!”
          好极了,我很高兴能帮上忙。
          “那...来决斗一盘吧?”
          呃,不了,我从不和术士决斗。
          “切,胆小鬼。”
          举例说明
          Some Example Macros: 
          General Macros: 
          --------------- 
          /use [target=self] Heavy Netherweave Bandages 
          This macro will always use Heavy Netherweave Bandages on yourself, regardless of target. 
          一些宏的例子:
          通用宏:
          ---------------
          /use [target=self] 厚虚空布绷带
          无论当前目标是什么,这个宏只会对自己使用厚虚空布绷带。
          Warrior Macros: 
          --------------- 
          Intercept/Charge: It either charges/intercepts, or puts you into the correct stance. 
          /cast [nocombat,stance:1] Charge; [combat,nostance:3] Berserker Stance; [nocombat,nostance:1] Battle Stance; [combat,stance:3] Intercept 
          Generic Stance Macro: Replace <* Stance Ability> with whatever you want. 
          /cast [stance:1] ; [stance:2] ; [stance:3] 
          Overpower: A very simple Overpower macro 
          /cast [stance:1] Overpower; Battle Stance 
          战士宏
          --------------- 
          拦截/冲锋:拦截或者冲锋,或者切换到相应的姿态。
          /施放 [nocombat, stance:1] 冲锋; [combat, nostance:3] 狂暴姿态; [nocombat, nostance:1] 战斗姿态; [combat, stance:3] 拦截
          


          14楼2009-12-01 10:05
          回复
            • 218.58.59.*

            一般姿态宏:把<* Stance Ability>替换为任何你想要的技能
            /施放 [stance:1] ; [stance:2] ; [stance:3] 
            压制:一个很简单的压制宏
            /施放 [stance:1] 压制; 战斗姿态
            Mage Macros 
            --------------- 
            Pyro/Fireball: Casts Pyro if you?re not in combat (as an opener), Fireball otherwise. 
            /cast [nocombat] Pyroblast; Fireball 
            Polymorph Focus: Will always polymorph your focus target. 
            /cast [target=focus] Polymorph 
            法师宏
            --------------- 
            炎爆/火球:如果没有处于战斗则施放炎爆术(作为起手),否则就施放火球术
            /施放 [nocombat] 炎爆术; 火球术
            锁定变羊:总是将你锁定的目标变形
            /施放 [target=focus] 变形术
            Priest Macros 
            --------------- 
            Greater Heal on current boss target, or on current target. 
            /cast [target=targettarget, help] Greater Heal; [help] Greater Heal 
            牧师宏
            --------------- 
            向当前目标的目标施放强效治疗术,否则向当前目标施放
            /施放 [target=targettarget, help] 强效治疗术; [help] 强效治疗术
            Hunter Macros 
            --------------- 
            Feed/Mend Pet based on combat status. 
            /cast [combat] Mend Pet; [nocombat] Feed Pet 
            /use [nocombat] 
            猎人宏
            --------------- 
            根据是否在战斗中喂养或治疗宠物
            /施放 [combat] 治疗宠物; [nocombat] 喂养宠物
            /使用 [nocombat] <食物>
            Acknowledgements 
            -------------------------- 
            I?d like to take this time to give thanks to the following people: 
            Cogwheel, for helping collect and promote the suggestions of the UI community. 
            Iriel, for always helping clarify and collate information posted on the forum. 
            Cairenn for pushing so hard to get Mod writers into the BC Beta, and supporting them 100% with feedback and webspace. 
            To all the Mod Authors and Mod Websites for their wonderful and thankless work to improve the life of the other 99% of the playerbase. 
            And most importantly, SLOUKEN, the best dev a modding community could ever ask for. Without you, we?d be reduced to the standard interface for all eternity. 
            感谢
            -------------------------- 
            我要感谢下面这些人:
            Cogwheel,帮我从UI论坛收集和提出建议。
            Iriel,总是帮着在论坛里理清和比对信息。
            Cairenn,努力帮助插件作者进入资料片的测试,为他们提供网站空间和百分之百的支持。
            感谢所有插件作者和网站,是他们无私和努力的工作使得其他99%的玩家能够有更好的游戏体验。
            最后也是最要感谢的是Slouken,一个插件社区所能够要求的最好的开发者,没有你,我们可就只能一直使用默认界面了。
            


            15楼2009-12-01 10:05
            回复