-
1 # 趣聞每日
-
2 # 使用者6098400386759
首先,回車,再敲/MACRO。看見了吧?會彈出一個視窗,上面有New(新建宏命令)和Complete(完成宏命令)兩個按鍵。點New,又會彈出一個視窗,哇,花花綠綠的,裡面包括了WOW幾乎所有的技能圖示,隨你喜歡,隨便選一個!它就是你設定的宏命令的圖示了,給它取個名字吧!方便你用的時候好找。然後回到第一個視窗,在它上面有一個輸入選單(別告訴我找不到…它可是佔了這個視窗的一半多…)在裡面輸入特定的內容,然後點Complete。接下來你要做的就是把這個代表你宏命令的圖示用滑鼠左鍵拉到快捷欄裡,想怎麼用就怎麼用… 3.下面就是怎樣設定宏的內容了,簡單的設定大家可以看我們網站上"基礎"篇的宏介紹. 相信很多人都知道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();
回覆列表
首先按ESC,選擇“宏命令設定” 一個是通用宏,一個是你的角色名對應的宏。
如果你就是一個角色,選擇哪個都無所謂。
然後,新建(最下面),選擇一個自己喜歡的圖示,或者直接選擇問號。
起個名字。 然後回車,在下面的文本里面輸入宏語句。
最簡單的是喊話宏(/Y 大喊 /S 白色說話 /G 公會 /P 隊伍 /RA 團隊 /BG 戰場) 輸入/Y 我羊了目標%T了,大家不要打啊! 那麼得到的效果就是,你點選一個目標,目標名叫張三,那麼這個宏就實現了,你大喊(紅字)“我羊了目標張三了,大家不要打啊!”其中%T是你選擇的目標。
然後你想真正意義上的羊掉張三,你光喊話了,還要羊的起來。
那麼使用/CAST 中文意思是施放 比如/CAST 變形術(等級10) 兩個語句一起放進去,那麼就變喊話,邊羊了。 CAST後面,空一格,變形術和其他你要使用的技能,你可以按P,然後跳出技能樹,選擇你要使用的技能,SHIFT+滑鼠左鍵,就可以自動生成技能名和等級。
然後,如果你要實現三個,甚至多個動作,那就要結合多個宏命令語句來完成了。
畢竟人的手指在鍵盤上的位置夠的著的有限,透過宏,可以實現很多。 比如一鍵換單手加副手變魚竿(副本活動裡團長喊放棄後使用)
以下這三種宏命令是最常用的,簡單介紹給大家:
/cast
釋放一個或多個技能,可以加入一些條件判斷,是最常用的命令
/castsequence
依次釋放釋放數個技能,同樣可以加入一些條件判斷,常見於所謂的"無腦宏"
/use
使用一個物品,可以直接用物品名稱也可以用物品欄位置