LUACN论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
热搜: YJWOW MagicStone BoL
楼主: 狗血编剧男

[辅助]1.12 supermacro 超级宏汉化版

  [复制链接]
发表于 2016-6-9 23:33:30 | 显示全部楼层
SS宏
一键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 d<2 and e>0 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);
请把界面设置中 “自动自我施法”上打个勾,否则不会吃自己debuff

瞬召虚空并牺牲宏 - 传说中的双胖子
功能:如果带的是虚空则牺牲,不是的话按第一下瞬召虚空,再按一下牺牲,之所以要按两下因为所谓瞬召实际还是有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);endetAttack();

拉人宏
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


/script SpellStopCasting();
/script ClearTarget()
/施放 亡灵意志(种族特长)
/script TargetLastEnemy()
亡灵意志宏 作用是停止施法清除目标 然后亡灵意志 自动选择恐惧你的目标
回复 支持 反对

使用道具 举报

发表于 2016-6-9 23:36:08 | 显示全部楼层
法师宏
1. 法师的法术反制提示宏,能根据自己的法术书中的反制技能,来提示是不是能够使用.没有冷却时用/S频道报出冷却时间.其中的"94"需要根据具体反制在法术书中的位置做调整.因为字节超过255,以上需要SUPERMACRO插件支持.
/script local start,duration=GetSpellCooldown(94,1);SCM=SendChatMessage;cd=GetTime()-start;cd=math.floor(duration-cd);if (start>0 and duration>0) then SCM("法术反制CD还有"..cd.." 秒.","say") elseif UnitCanAttack("player","target") then SpellStopCasting();CastSpellByName("法术反制");SCM("已经对>>"..UnitName("target") .."<<反制!","say") end

2 法师的开饰品,然后再攻击的宏.其中的14为最下面一个饰品.另一个饰品需要改为13
同样的,这个宏适合其它饰品的使用,这个宏好处是,不会在屏幕上频繁的提示"物品没有准备好"
/script if GetInventoryItemCooldown("player",14)==0 then UseInventoryItem(14)
/施放 寒冰箭
打断施法在地球时代要用以下脚本才行。
/run SpellStopCasting()
/cast Blink
这个宏就会打断你的施法然后释放闪现。下面的技能换成冰箱拉打断啦都行。


气定神闲+炎爆术
/施放 气定神闲
/script SpellStopCasting();
/施放 炎爆术




自动补 冰甲术,奥术智慧,魔法抑制
缺啥补啥,闲着没事按按能强身健体,定国安邦……
/script local n,s,k,j,b,f={"tArm","lSen","hMag"},{"冰甲术","奥术智慧","魔法抑制"};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;


自动把被控制的队友变羊,小队,团队通用版
对于会控制玩家的BOSS很有用,比如哈卡,AQ神庙1
/script local n,p,i,t=4,"party";if UnitInRaid("player") then n=40;p="raid";end;for i=1,n do t=p..i;if UnitCanAttack("player",t) then TargetUnit(t);CastSpellByName("变形术");SendChatMessage("%t 被控制,我把他变羊了~",p);break;end;end;




随机变羊,猪,乌龟宏
/script local s,m,r={"",":龟",":猪"},{"%t变羊了","%t是乌龟","%t是猪"},random(3); CastSpellByName("变形术"..s[r]);SendChatMessage(m[r],"yell");
可以根据变的种类喊话,想喊什么自己改




火冲打图腾
/script local t,n,i,_={"根基","战栗","地缚","灼热","清毒"};for _,i in t do n=i.."图腾";TargetByName(n,1);end;CastSpellByName("火焰冲击(等级 1)");




/script if not buffed("Ice Block", 'player') then cast("Ice Block") end
这个命令可以狂按来释放冰箱而不用担心取消冰箱。
这包括奥术能量。

取消冰箱可以/unbuff Ice Block也可以手动点掉。

评分

参与人数 1伸手费 +5 收起 理由
狗血编剧男 + 5 幸苦了,谢谢!

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2016-6-10 03:24:12 | 显示全部楼层
这个需要经常更新吧?要不插件里面的宏都要手动录入

点评

我会尽量一次性收集起能用的宏之后更新发布  详情 回复 发表于 2016-6-10 09:26 AM
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-6-10 09:26:10 | 显示全部楼层
Jupiter2683 发表于 2016-6-10 03:24
这个需要经常更新吧?要不插件里面的宏都要手动录入

我会尽量一次性收集起能用的宏之后更新发布
回复 支持 反对

使用道具 举报

发表于 2016-6-10 09:30:19 | 显示全部楼层
感觉我还是用那个 一键恢复的那个插件

点评

realheart?  详情 回复 发表于 2016-6-10 09:54 AM
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-6-10 09:54:07 | 显示全部楼层
lotion 发表于 2016-6-10 09:30
感觉我还是用那个 一键恢复的那个插件

realheart?
回复 支持 反对

使用道具 举报

发表于 2016-6-10 12:17:25 | 显示全部楼层
分享一些个人做T使用的一些宏命令
MT其实需要的宏并不多,大部分情况需要手动处理,所以个人用的宏基本是为了方便切姿态使用。
1、切狂暴姿态,使用狂暴之怒,切回防御姿态。
/script CastShapeshiftForm(3)
/施放 狂暴之怒
/script CastShapeshiftForm(2)

其中:/script CastShapeshiftForm(1)是战斗姿态,/script CastShapeshiftForm(2)是防御姿态,/script CastShapeshiftForm(3)是狂暴姿态。
看上去这个宏非常简单,但他的优点在于,技能图标上可以显示技能CD时间,可以正常按姿态显示技能亮度,比如在防御姿态适合这个宏图标是灰色的,连续点击即可使用。
根据以上情况,还可以编辑拦截切姿态宏、惩戒痛击宏、压制宏、缴械宏、嘲讽宏等等

2、冲锋开怪宏
/script local c,f,a,b,_=CastSpellByName,GetShapeshiftFormInfo;_,_,a=f(1);_,_,b=f(2);if UnitAffectingCombat("player") then if a then c("防御姿态");elseif b then c("嘲讽");end;else if a then c("冲锋");elseif b then c("战斗姿态");end;end;
这个宏的优点在于他可以判定目前的战斗状态,非战斗状态切战斗姿态冲锋,战斗姿态切防御姿态嘲讽。连续点击即可实现。缺点在于他不能显示技能CD。

评分

参与人数 1伸手费 +2 收起 理由
狗血编剧男 + 2 谢谢!

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2016-6-10 16:59:33 | 显示全部楼层
法师的明显不幸福啊
回复 支持 反对

使用道具 举报

发表于 2016-6-10 22:59:53 | 显示全部楼层
谢谢楼主 这个完全就是神级巨作~
回复 支持 反对

使用道具 举报

发表于 2016-6-10 23:04:19 | 显示全部楼层
感谢分享~!感谢分享~!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|LUACN论坛

GMT+8, 2024-3-29 07:30 AM , Processed in 0.077451 second(s), 35 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表