[爆卦]stance用法是什麼?優點缺點精華區懶人包

為什麼這篇stance用法鄉民發文收入到精華區:因為在stance用法這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者memy (再度被書店萌殺...)看板WOW標題[情報][轉錄][2.0] 新的 Macro 系...

stance用法 在 DSE英文|港大英文系+翻譯系 Instagram 的最佳貼文

2020-05-08 04:08:57

#DSEWriting🌋 👀Analysis on 2017 Paper 2 inappropriate choice of language👀 - 😠Stock phrases 1️⃣ gourmet’s paradise 👀代替: food paradise 2️⃣mouth-watering ...



※ 本篇文章轉錄已取得作者本人同意


作者 hotdogee (Whitetooth) 看板 WOW
標題 [2.0] 新的 Macro 系統
時間 Wed Dec 6 02:56:56 2006
───────────────────────────────────────

文章版本:1.0.3

http://forums.worldofwarcraft.com/thread.html?topicId=44757854&sid=1
╔══╗
║前言║
╚══╝
2.0 對整個 Addon 架構與 Macro 語法都有許多重大的改變,
有少許 Addon 會完全不能用,大部分的 Addon 都必須要作者改寫成新的語法才能使用,
直接改 toc 編號雖然能嘗試載入,可是通常會出現很多錯誤。

支援 2.0 的 Addon 可以到這裡下載:
http://www.wowinterface.com/downloads/index.php?cid=89&so=desc&sb=lastupdate

本篇主要是在探討 2.0 的 Macro 語法,在 2.0 裡幾乎所有目前比較複雜複雜 Macro
都將無法使用,不過有許多 Macro 是可以改寫成新的語法。

╔═════╗
║Macro 限制║
╚═════╝
在 2.0 裡主要有兩項關於 Macro 的限制。

一, 無法在 Macro 裡用<改變目標>與<使用技能>的 API,
例如 CastSpellByName() 與 TargetUnit() 這些都不能用,
只能使用內建的 Slash Command,例如 /cast 與 /target。
這表示你不再能用 /script if .... then CastSpellByName(...) end
之類的 Macro 了 (/script 本身還是可以用的)。

二, 不管 Macro 的第一個 /cast 是成功還是失敗,
都將會觸發 1.5 秒的 GCD,表示你將無法在同一個 Macro 裡串接多個 /cast,
除非你的第一個 /cast 的技能本來就不會有 GCD。
例如:
/cast Shield Slam
/cast Sunder Armor
這個將永遠只能放 Shield Slam,不會因為 Shield Slam 在 CD 中或是
Rage 不足而變成使用 Sunder Armor。

不過先別擔心,2.0 裡始有相對的配套的,對 Slash Command 做了大幅的強化:
1. 新增了許多新的 Slash Command。
2. 新增條件式語法。
3. 新增依序執行指令。
以下將依序作介紹。

╔══════╗
║unit基礎介紹║
╚══════╝
在介紹新功能之前,因為後面常常會用到 unit,所以我先在這邊解釋清楚,
並在此介紹新增的 focus unit。

以下是合法的unit列表:
player - 代表你自己
pet - 代表你的寵物
partyN - 代表第N個隊友 (N=1,2,3,4)
partypetN - 代表第N個隊友的寵物 (N=1,2,3,4)
raidN - 代表第N個團隊友 (N=1-40)
raidpetN - 代表第N個團隊友的寵物 (N=1-40)
mouseover - 代表滑鼠上的單位 (也就是tooltip顯示的單位)
target - 代表你的目標
focus - 這是 2.0 新增的,是第二目標,也就是說你可以不失去你目前的目標,
而對之前設定好的另一個 focus 目標作動作。
例: Mage 將 /focus 設為羊,並有一個永遠羊 focus 的 Macro,
跟著MA攻擊時不必為了補羊而把目標改成羊。

以上 unit 後面都可以接 "target" 表示該 unit 的目標,
例: partypet2target, targettarget, targettargettarget 都是合法的 unit。

╔═══════╗
║2.0 新增的指令║
╚═══════╝
⊙目標:
/focus <unit> - 將 focus 設為 unit
/targetlasttarget - 將目標設為上一個選取的目標
/cleartarget - 取消目前選取的目標
/clearfocus - 取消目前選取的 focus
/targetenemy - 依序選取最近的敵人為目標
/targetfriend - 依序選取最近的友善的人為目標
/targetparty - 依序選取最近的 party 隊員為目標
/targetraid - 依序選取最近的 raid 隊員為目標
⊙攻擊:
/startattack <unit> - 開啟自動攻擊 unit
/stopattack - 停止自動攻擊
⊙/target、/focus 與 /startattack 都可以接受<unit>或是<name>作為參數,
如果沒有參數,預設 unit 為 target。
⊙物品與裝備:
/use <itemname> - 使用指定名稱,例: /use Major Healing Potion
/use <inventoryslot> - 使用指定裝備ID,例: /use 13 為使用第一個 Trinket
Inventory Slot 列表:
0 = ammo 5 = chest 10 = gloves 15 = back
1 = head 6 = belt 11 = finger 1 16 = main hand
2 = neck 7 = legs 12 = finger 2 17 = off hand
3 = shoulder 8 = feet 13 = trinket 1 18 = ranged
4 = shirt 9 = wrist 14 = trinket 2 19 = tabard
/use <bagid> <bagslot> - 使用指定包包的格子裡的物品
BagID: 包包由右到左,分別是編號 0 到 4,例: 0 是 Backpack
BagSlot: 由上到下,由左到右,編號從一開始
例: 16格包 14格包
1 2 3 4 1 2
5 6 7 8 3 4 5 6
9 10 11 12 7 8 9 10
13 14 15 16 11 12 13 14
/equip <itemname> - 裝備指定名稱的物品
/equipslot <inventoryslot> <itemname> - 在指定位置裝備指定名稱的物品
/userandom <item1>, <item2>, <item3>... - 隨機使用列表中的其中一個物品
⊙寵物:
/petattack - 攻擊
/petfollow - 跟隨
/petstay - 停留
/petpassive - 被動
/petdefensive - 防禦
/petaggressive - 主動
/petautocaston <spell> - 開啟指定技能自動使用功能
/petautocastoff <spell> - 關閉指定技能自動使用功能
⊙使用技能:
/stopcasting - 取消目前正在施法中的技能
/castrandom <spell1>, <spell2>, <spell3>... - 隨機使用列表中的其中一個技能
⊙Action Bar:
/changeactionbar <num> - 切換到 Action Bar 第 num 頁 (num=1-6)
/swapactionbar <num1> <num2> - 在 num1 頁與 num2 頁間切換
⊙Buffs/Auras:
/cancelaura <name> - name 就是 buff 名稱
例: /cancelaura Blessing of Salvation
⊙按鈕動作:
/click <buttonname> <mousebutton> - 可以模擬用滑鼠的指定按鍵使用按鈕
例: /click ActionButton1
/click ActionButton1 RightButton
/click PetActionButton5
⊙Macro 控制:
/stopmacro - 停止執行Macro,通常配合條件是語法使用
例: /cleartarget
/target Ouro
/stopmacro [notarget]
/cast Intercept
"#" 或 "-" - 表示這行是註解,不會被執行
例: # blah blah blah
? Icon - 新增的問號圖示,會自動以該 Macro 的第一個技能的圖示替代
# show <item or spell> - 手動控制 Macro 要顯示哪個技能或物品的
圖示(使用問號圖示)與 Cooldown,如果沒有指定,就會顯示第一個技能或物品。
⊙依序執行:
/castsequence reset=N <spell/item1>, <spell/item2>, <spell/item3>...
- 每按一次,會使用下一個技能或物品,本篇後面有詳細介紹。

可以看到有很多 Macro 在 2.0 裡不但更容易寫了,
以前使用物品只能指定包包的某一格,現在直接指定名稱就可以了。

╔═════╗
║條件式語法║
╚═════╝
2.0 新增了 Macro 專用的條件式語法,可以讓 Macro 在不同的情況執行相對的動作。
目前可以用在以下的指令裡:
/cast, /use, /equip, /target, /focus, /assist, /click,
/cancelaura, /changeactionbar, /stopmacro,
/userandom, /castrandom, /castsequence 及 寵物指令。

以下大部分用 /cast 來當例子。

語法如下:
/cast [判斷式1] 技能1; [判斷式2] 技能2; [判斷式3] 技能3; ...

運作方式:判斷式1會先被檢查,如果為"真"則施放技能1,如果為"假"則檢查判斷式2,
依此類堆,依序判斷直到結束。

判斷式簡介:
⊙combat - 戰鬥中
⊙help - 目標是友善的
harm - 目標是敵人
⊙exists - 目標存在
dead - 目標死亡
⊙mounted - 你在坐騎上
swimming - 你在游泳
flying - 你在飛行
⊙indoors - 你在室內
outdoors - 你在室外
⊙stealth - 你在stealth狀態
⊙stance - 你在任何一個stance
stance:<#> - 你在第#個stance
⊙modifer - 按住shift或ctrl或alt任何一鍵
modifier:<shift/ctrl/alt> - 按住shift或ctrl或alt
⊙party - 目標是在你的party裡
raid - 目標在你的raid裡
group - 你在party或raid裡
group:<party/raid> - 你在指定的group類別裡
⊙pet - 你的寵物存在
pet:<name/family> - 指定寵物名稱(例: Fluffy)或類別(例: Bat, Bear, Imp)存在
⊙channeling - 你正在channel法術(例: Blizzard, Hellfire)
channeling:<spell> - 你正在channel指定法術
⊙equipped:<item> - 你裝備了item
⊙actionbar:<#> - 你正在使用第#頁Action Bar(#=1-6)
⊙button:<#> - 用第#個滑鼠鍵點(#=1-5)(1=左鍵, 2=右鍵, 3=中鍵)

此外還有以下特別的用法:
1. 在上面判斷式前加上"no"將其反向,例: nocombat - 當你在戰鬥外時為"真"
2. 在兩個判斷式間加入','代表AND,只有當兩邊同為"真"才為"真"
3. 在兩個判斷式的參數間加入'/'代表OR,當任何一邊為"真"就為"真"
4. target=<unit> - 把目標改為unit

舉些簡單的例子:
/cast Greater Heal
就跟現在一樣老套的對目標施放Greater Heal(最高Rank)

/cast [help] Greater Heal
如果目標是友善的,則施放Greater Heal

/cast [help] Greater Heal; Smite
如果目標是友善的,則施放Greater Heal,否則施放Smite

以下應該不用我再說明也看的懂了吧:
/cast [help, combat] Flash Heal; [help, nocombat] Greater Heal; Smite
/cast [help] Greater Heal; [harm, combat] Smite; [harm, nocombat] Mind Flay
/cast [stealth] Ambush; Backstab
/cast [nostealth] Backstab; Ambush

__________________________________________

進階討論:stance

Stance後面可以接一個數字,以下是對照表:

Class: Warrior Priest Druid Rogue
-------------------------------------------------------
Stance:1 Battle Shadowform Bear Stealth
-------------------------------------------------------
Stance:2 Defensive Aquatic
-------------------------------------------------------
Stance:3 Berserker Cat
-------------------------------------------------------
Stance:4 Travel
-------------------------------------------------------
Stance:5 Moonkin/Tree
-------------------------------------------------------

上面這個表並非絕對的,像是沒有解過Defensive Stance任務的戰士的Berserker
就是2而不是3,基本上看你的Stance Bar上的次序去算就對了。

註:Paladin 的 Arua 並不算 Stance,所以無法判斷。

範例:
/cast [nostance] Bear Form
如果你不在任何一個Form,就變熊

/cast [stance:1] Overpower; [stance:2] Sunder Armor; [stance:3] Whirlwind
在Battle stance放Overpower,在Defensive stance放Sunder Armor,
在Berserker stance放Whirlwind。

/cast [stance:1] Growl; [stance:3] Claw
熊時放Growl,貓時放Claw

/cast [nostance:3] Cat Form
如果不是貓就變貓,如果是貓,不會把你變回去人。

______________________________________________________________________________

進階討論:equipped

equipped的用法跟stance類似,可是他的參數卻比較複雜一點,
可以是
1. 裝配部位
2. 裝備種類
3. 裝備副種類

已下列表:
Two-Hand Bows Melee Weapon
Bag Crossbows Ranged Weapon
Shirt Daggers
Chest Guns
Back Fishing Pole
Feet Fist Weapons
Finger Miscellaneous
Hands One-Handed Axes
Head One-Handed Maces
Held In Off-hand One-Handed Swords
Legs Polearms
Neck Staves
Ranged Thrown
Chest Two-Handed Axes
Off Hand Two-Handed Maces
Shoulder Two-Handed Swords
Tabard Wands
Thrown Cloth
Trinket Idols
Waist Leather
One-Hand Librams
Main Hand Mail
Off Hand Miscellaneous
Wrist Shields
Totems
Plate
範例:
/cast [equipped:Two-Handed Swords] Mortal Strike; Heroic Strike
當你裝備雙手劍時放Mortal Strike,不然放Heroic Strike

/cast [equipped:Two-Handed Swords/Two-Handed Maces/Two-Handed Axes/Polearms]
Mortal Strike
當你裝備雙手武器時放Mortal Strike

/cast [equipped:Shields] Shield Bash
當你裝備盾時放Shield Bash

/cast [equipped:Shields, equipped:Daggers] Shield Slam
當你裝備盾"與"小刀時,放Shield Slam

/cast [noequipped:Shields, equipped:Off Hand] Rampage
當你雙手持武時放Rampage

______________________________________________________________________________

進階討論:target

[target=unit]是個特殊的參數,他並不會為"真"或為"假",
而是會改變它後面的技能與判斷式的目標。

注意:這參數不會改變你目前的目標,只有/target類指令才能真的改變你的目標。

如果對unit語法不了解,可以參考前面「unit基礎介紹」
除了一般的unit外還可以設定:
none - 沒有目標

預設目標就是target,所以以下兩個macro是相等的:
/cast [help] Greater Heal
/cast [target=target, help] Greater Heal

範例:
/cast [target=player] Flash Heal
永遠對自己放Flash Heal

/cast [help] Flash Heal; [target=targettarget] Flash Heal
如果目標是友善的,對目標放Flash Heal,如果不是就對目標的目標放Flash Heal

/cast [help, combat] Flash Heal; [help, nocombat] Greater Heal;
[target=targettarget, help, combat] Flash Heal; [target=player] Greater Heal
1. 如果目標是友善的且你在戰鬥中,對目標放Flash Heal
2. 如果目標是友善的且你不在戰鬥中,對目標放Greater Heal
3. 如果目標的目標是友善的且在戰鬥中,對目標的目標放Flash Heal
4. 如果以上都不成立則對自己放Greater Heal

______________________________________________________________________________

更多範例:

/use [target=self] Heavy Netherweave Bandages
不管目標是誰,永遠對自己使用Heavy Netherweave Bandages

戰士:
/cast [nocombat, stance:1] Charge; [combat, stance:3] Intercept;
[nocombat, nostance:1] Battle Stance; [combat, nostance:3] Berserker Stance
1. 如果在戰鬥外且在Battle stance,放Charge
2. 如果在戰鬥中且在Berserker stance,放Intercept
3. 如果在戰鬥外且不在Battle stance,放Battle stance
4. 如果在戰鬥中且不在Berserker stance,放Berserker stance

/cast [stance:1] Overpower; Battle Stance
如果在Battle stance則放Overpower,不然就轉成Battle Stance

/cast [help] Intervene; [target=targettarget, help] Intervene

法師:
/cast [nocombat] Pyroblast; Fireball
如果在戰鬥外則放Pyroblast,不然就放Fireball

/focus [target=focus,noexists] target; [target=focus,dead] target
/cast [target=focus] Polymorph
如果原本的focus不存在或已經死亡,則設定目前的目標為focus。
對你的focus放polymorph。

獵人:
/stopmacro [nopet]
/cast [combat] Mend Pet; [nocombat] Feed Pet
如果沒有寵物,中斷Macro執行。
戰鬥中放Mend Pet,戰鬥外放Feed Pet。

/castsequence Aspect of the Hawk, Aspect of the Monkey
交互施放Aspect of the Hawk, Aspect of the Monkey

/cast [modifier:ctrl] Aspect of the Cheetah
/cast [modifier:alt] Aspect of the Monkey
/cast [nomodifier] Aspect of the Hawk
根據有沒有按住alt或ctrl而放不同的Aspect

聖騎:
/cast [help, combat] Righteous Defense;
[target=targettarget, help, combat] Righteous Defense


╔══════╗
║依序執行指令║
╚══════╝
未完成
* A new command
/castsequence reset=N/target/combat/shift/alt/ctrl spell1, spell2, spell3
* The reset line can specify a number of seconds after which a sequence
resets, or if it should reset on target change or leaving combat.
* The sequence tracks the 'next' spell in the sequence until it resets,
the next spell only advances on a successful cast.
* You can specify a conditional at the start of the command before the
reset to filter whether the sequence is used (You cannot use per-spell
conditionals)
* You will be able to use both spells and items in /castsequence
* /castsequence will actually cycle the item or spell that it shows feedback
for to match the next one in the sequence.

/castsequence [harm] A, B, C; [noharm] D, E, F

╔══╗
║其他║
╚══╝
未完成
--
World of Warcraft - Cenarius
Whitetooth Lv60 Gnome Warrior Pickpocket Lv60 Human Rogue
http://ctprofiles.net/89662 Hotdogee Lv60 Orc Warlock
http://www.rpgoutfitter.com/WoW-GM/char.cfm?char=Whitetooth@US-Cenarius
http://www.wretch.cc/album/album.php?id=hotdog&book=2
--
※ Origin: 巴哈姆特<bbs.gamer.com.tw> ◆ From: 59-127-64-40.HINET-IP.hinet.net
--

本文仍在更新中

--


──────────────────── 切り裂く 胸の奥の勇気 ──
を断ち切る 白

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.168.95

你可能也想看看

搜尋相關網站