魔獸世界60年代懷舊服和正式服版本玩法區別很大,例如各職業天賦、宏命令等等。那麼對於術士職業來説,懷舊服術士宏怎麼寫?下面就為大家帶來魔獸世界懷舊服術士宏命令大全。
魔獸世界懷舊服術士命令怎麼寫
1. 關於一鍵xx宏
公共CD是WOW中的基本法律,你平時要遵守,用宏仍然要遵守,這裏所説的一鍵xx是指:
同一個宏,你每按一下做一個動作,
同一個宏反覆使用可以智能做出一系列反應,兩次按鍵之間請自己留出公共CD時間
2. 動作條編號
下面的宏經常會要求你自己填某技能在動作條上的編號,這是因為技能/物品的冷卻時間等信息只能這樣得到
動作條共有6個,每條包括12個按鈕,共72個,通過菜單->界面設置 可以全部顯示出來
圖上動作條上紅色數字是每條第一個按鈕和最後一個按鈕的編號
實際上暴雪提供了120個按鈕,不過後面73-120不顯示的,通過Flexbar等插件可以全部看到
3. 技能書編號
上邊動作條編號大部分時間可以用技能在法術書中的編號代替,這樣可以有效減少動作條的使用
但並不是都能代替,因為使用法術書中的編號只能得到技能的冷卻信息,射程等其他信息無法得到
得到技能在法術書中編號請使用這個宏
技能名不要加等級,比如 多重射擊
/script local s,i,n="你要查的技能名",1;while 1 do n=GetSpellName(i,"spell");if n then if strfind(n,s) then ChatFrame1:AddMessage(i);break;end;i=i+1;else break;end;end;
4. 物品在揹包中的位置
現在使用揹包中的物品必須指定物品所在包裹編號,以及物品在包裹中的格子序號:UseContainerItem(bag, slot)
bag就是包裹編號,slot就是包裹中格子序號,WOW 2.0中這種情況將得到改善
包裹編號請看上邊的圖,每個包裹最左上角編號是1,其餘格子從左往右依次2 3 4...
術士
一鍵3DOT宏
點一下放一個,缺啥補啥,一直按吧
注意,這是solo宏,團隊中如果有其他術士的話就不好用了,因為無法判斷DOT是不是你放的,比如其他術士放了痛苦詛咒,
這個宏就不會再放痛苦詛咒,直到那個術士的痛苦詛咒消失
通用版
/script local n,s,k,j,d,f={"Abomi","Sarge","Immol"},{"腐蝕術","痛苦詛咒","獻祭"};for k=1,3 do f=nil;for j=1,16 do d=UnitDebuff("target",j);if d and strfind(d,n[k]) then f=1;break;end;end;if not f then CastSpellByName(s[k]);break;end;end;
痛苦術士風箏版
/script local n,s,k,j,d,f={"Abomi","Requi","Sarge"},{"腐蝕術","生命虹吸","痛苦詛咒"};for k=1,3 do f=nil;for j=1,16 do d=UnitDebuff("target",j);if d and strfind(d,n[k]) then f=1;break;end;end;if not f then CastSpellByName(s[k]);break;end;end;
獻祭 + 寵物攻擊
在使用前面一鍵3DOT宏之前我通常會使用這個宏作為起手,因為獻祭有施法時間,這就跟獵人瞄準起手一樣
/施放 獻祭
/script PetAttack();
如果是痛苦術士,帶小鬼而且作mana罐子的話用這個
/施放 獻祭
/script if UnitCreatureFamily("pet")~="小鬼" then PetAttack();end;
RAID DOT宏
循環上DOT,如果使用間隔超過18秒則重新從第一個DOT開始放,以防止DOT序列沒放完怪就死了
普通版
/script local x,t={"痛苦詛咒","腐蝕術","獻祭"},GetTime();DOTI=DOTI or 3;DOTT=DOTT or t;DOTI=DOTI+1;if DOTI>3 or t-DOTT>18 then DOTI=1;DOTT=t;end;CastSpellByName(x[DOTI]);
痛苦術士版
/script local x,t={"生命虹吸","痛苦詛咒","腐蝕術","獻祭"},GetTime();DOTI=DOTI or 4;DOTT=DOTT or t;DOTI=DOTI+1;if DOTI>4 or t-DOTT>18 then DOTI=1;DOTT=t;end;CastSpellByName(x[DOTI]);
這是模擬2.0中/castsequence的方式寫的,但沒有進入/脱離戰鬥重置序列和改變目標重置序列功能,
因為這需要做成插件了
到了2.0用這個就行了:
普通版
/castsequence reset=18/target/combat "生命虹吸","痛苦詛咒","腐蝕術","獻祭"
痛苦術士版
/castsequence reset=18/target/combat "痛苦詛咒","腐蝕術","獻祭"
RAID詛咒宏
如果目標沒有元素詛咒就上元素,有元素沒有暗影詛咒就上暗影詛咒,都有就上痛苦詛咒
raid中的術士們,為了名額,詛咒吧!
/script local n,s,k,j,d={"lTouc","fAchi"},{"元素","暗影","痛苦"},1;while k<3 do f=nil;for j=1,16 do d=UnitDebuff("target",j);if d and strfind(d,n[k]) then f=1;break;end;end;if f then k=k+1;else break;end;end;CastSpellByName(s[k].."詛咒");
增幅疲勞 / 增幅痛苦
把詛咒增幅放到動作條上,並查出編號,查編號看上邊基礎知識部分
增幅疲勞
/script local c,s,d=CastSpellByName,GetActionCooldown(增幅編號);if d<2 then c("詛咒增幅");SpellStopCasting();end;c("疲勞詛咒");
法術書版
/script local c,s,d=CastSpellByName,GetSpellCooldown(增幅編號,"spell");if d<2 then c("詛咒增幅");SpellStopCasting();end;c("疲勞詛咒");
增幅痛苦
/script local c,s,d=CastSpellByName,GetActionCooldown(增幅編號);if d<2 then c("詛咒增幅");SpellStopCasting();end;c("痛苦詛咒");
法術書版
/script local c,s,d=CastSpellByName,GetSpellCooldown(增幅編號,"spell");if d<2 then c("詛咒增幅");SpellStopCasting();end;c("痛苦詛咒");
其實這個宏也可以簡寫成
/施放 詛咒增幅
/script SpellStopCasting();
/施放 疲勞詛咒
/施放 詛咒增幅
/script SpellStopCasting();
/施放 痛苦詛咒
但寫成上面/script的形勢可以避免看到討厭的“技能還沒有準備好”的提示
智能契約分流宏 - 痛苦術士必備
為什麼要分流
可能有人覺得只要契約就好,何必還要分流,我們有魔甲術,每5秒恢復15點hp,還有生命虹吸,吸血,
各位癮君子每3秒吸個五六十應該不在話下吧,生命長滿就不會再長了。所以只用契約的話會有大量的生命浪費,
實際上這些生命變成藍的話數量相當驚人的,所以在儘量保證自己血量的前提下使用分流可以達到最大的轉換效率
而不會出現安全問題,你會發現這才是真正的永動機
而且,最大的問題…… 分流恢復mana的速度比契約快多了>"<
送給抽風手的禮物
原則:不讓小鬼滿藍,不讓自己滿血
小鬼滿mana當然先抽他的,當抽到70%時,如果你受傷小於200就分流一次,然後繼續抽小鬼,
直到抽空或者你血又差200沒滿,為了最大化的利用嘛,
如果把小鬼抽空了你還沒搞定,沒辦法,抽自己吧
各位如果在raid而且治療比較關照你的話可以把受傷200安全線往下降,比如1000,
這樣頂着恢復,回春,抽着小鬼,想OOM都難啊
我們唯一要做的就是……
練就一根堅韌而神經質的手指……
/script local s,h,m="生命分流";if UnitExists("pet") then h=UnitHealthMax("player")-UnitHealth("player");m=UnitMana("pet")/UnitManaMax("pet");if m>0.1 and h>200 or m>=0.7 then s="黑暗契約";end;end;CastSpellByName(s);
上邊200是開始分流的安全線,0.7是停止虐待小鬼開始分流的比例,當然是自己滿血情況下
計算了魔傷和強化生命分流天賦的分流宏
你魔傷和生命分流效率自己填
你分流效率:你強化生命分流的天賦,1點就換成1.1,2點換成1.2,沒有加這個天賦就是1
注意,這個宏不會分到死,自殺的話單拉出來一個最高級的吧
/script local b,r,p,j,h={30,75,140,220,310,424},{0.38,0.68,0.8,0.8,0.8,0.8},"player";for j=6,1,-1 do h=b[j]+r[j]*你魔傷;if UnitHealth(p)>=h and UnitManaMax(p)-UnitMana(p)>=h*你分流效率 then CastSpellByName("生命分流(等級 "..j..")");break;end;end
自身buff
自動上 魔甲術,偵測隱形,魔息術,缺啥補啥,偵測隱形用不着強效的
/script local n,s,k,j,b,f={"gScr","tInv","nBre"},{"魔甲術","偵測隱形","魔息術"};for k=1,3 do f=nil;for j=1,16 do b=UnitBuff("player",j);if b and strfind(b,n[k]) then f=1;break;end;end;if not f then CastSpellByName(s[k]);break;end;end;
死亡纏繞 + 恐懼
死亡纏繞 + 恐懼是術士最具殺傷力的連招,是術士反盤的基礎,
能與之媲美的恐怕只有獻祭 + 點燃了,什麼?還有生命分流 + 自焚?
功能:如果死亡纏繞不在CD就放纏繞,如果CD中則施放恐懼術,連續使用就是 纏繞 + 恐懼
死亡纏繞的編號看圖自己填
/script local s,d=GetActionCooldown(死亡纏繞編號);if d<2 then CastSpellByName("死亡纏繞");else CastSpellByName("恐懼術");end;
法術書版
/script local s,d=GetSpellCooldown(死亡纏繞編號,"spell");if d<2 then CastSpellByName("死亡纏繞");else CastSpellByName("恐懼術");end;
如果目標是惡魔或元素就放逐,否則恐懼
raid和跟術士PK時能省點事……
/script local t=UnitCreatureType("target");if t=="惡魔" or t=="元素生物" then CastSpellByName("放逐術");else CastSpellByName("恐懼術");end;
雙法術石
法術石放飾品1,備用法術石放的位置自己填,看上邊基礎知識
/script local s,d,e=GetInventoryItemCooldown("player",17);if d0 then SpellStopCasting();UseInventoryItem(13);UseContainerItem(備用法術石包號,你備用法術石格子號);end;
狗智能吞噬魔法
優先驅散自己身上的debuff,沒有就驅散對方身上的buff
/script local i,d,s,t,_;for i=1,16 do d,_,t=UnitDebuff("player",i);if d and t=="Magic" then s=1;break;end;end;CastSpellByName('吞噬魔法',s);
瞬召虛空並犧牲宏 - 傳説中的雙胖子
功能:如果帶的是虛空則犧牲,不是的話按第一下瞬召虛空,再按一下犧牲,之所以要按兩下因為所謂瞬召實際還是有0.5秒時間,
當然如果你是非惡魔術士或者惡魔支配CD中,那瞬召就變成慢召了……
/script local c=CastSpellByName;if UnitCreatureFamily("pet")=="虛空行者" then c("犧牲");else c("惡魔支配");SpellStopCasting();c("召喚虛空行者");end;
寶寶打圖騰
/script local t,n,i,_={"根基","戰慄","地縛","灼熱","清毒"};for _,i in t do n=i.."圖騰";TargetByName(n,1);end;PetAttack();
拉人宏
1 小隊/團隊自適應版
/施放 召喚儀式
/script local s="party";if UnitInRaid("player") then s="raid";end;SendChatMessage("開始召喚>%t<,機票1G,女生半價,來點門啊",s);
2 黑體震撼版
/施放 召喚儀式
/y █ ●███◣ █
/y ██ █ █ ▉
/y █ █ █ ▊
/y █████ █ █ ▋
/y █ █ █ █ ▌
/y █████ █ █ ▍
/y ●● ●● █ ◥█ ●
3 車伕自虐版
這個不是拉人的宏,而是一次尋問團隊中所有和你不在同一區域的人,自動問他需不需要拉,好像有點自討苦吃,自虐用的……
只要點一下,你會收到無數訂單的……
/script local i,n,z,_;for i=1,GetNumRaidMembers() do n,_,_,_,_,_,z=GetRaidRosterInfo(i) if z~=GetZoneText() then SendChatMessage("要拉的MM報職業","whisper",nil,n);end;end
智能靈魂石
沒有靈魂石就製造,有就給目標綁靈魂石,並在小隊或團隊中報告
把做好的靈魂石放在動作條上,查出編號,具體看上邊基礎知識
/script local s,i="party",靈魂石所在編號;if IsUsableAction(i) then if GetActionCooldown(i)==0 then UseAction(i);if UnitInRaid("player") then s="raid";end;SendChatMessage("%t 已被綁定",s);end;else CastSpellByName("製造特效靈魂石");end