大家好,今天给各位分享魔兽世界宏怎么用的一些知识,其中也会对魔兽世界中的“宏”怎么使用进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
一、魔兽世界中的“宏”怎么使用
首先声明:最近由于问宏的人很多,我每次都是以下面这段话回答的,可能别处看到,但绝非抄袭。
简单的说就是让PVP,SOLO,RAID中使操作更便捷或者是制造一些有趣的东西,这个是抽象的说法,下面是具体的解释和使用方法。
宏命令完全手册
一:基础教程
1.什么是宏命令?
玩过EQ的都知道一点宏的知识,比如组队时用来告诉队友你的行动,告诉目标等。最简单的比如puller常用的:/v%t过来了,大家集中火力。法师常用的:/v我要催眠%t,大家不要打醒他这些宏个性鲜明,是EQ的一大乐趣之一。
然而EQ毕竟是N年前的游戏,宏也比较简单,和它比起来。WOW的宏就复杂和强大的多了。它的函数就有上千种,如果都掌握,能实现许多匪夷所思的功能。
一个宏可以完成一个相对比较复杂的命令.比如战斗中发布命令,如果打字当然不算麻烦,但在战斗中却很要命.浪费了时间和生命.一个简单的宏便可以用一个键来完成这一切.
2.宏命令的设置流程:
首先,回车,再敲/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 aspectofmon key(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的宏函数库可以去这两个地方查:
函数的使用比较简单,学习过编程的都比较容易上手,基本的用法是在函数前加/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();
几个简单的宏
1.对自己使用绷带
/script TargetUnit(“Player”);
/use Mageweave Bandage
/script TargetLastEnemy();
*这里用的时 Mageweave Bandage,你可以改成适合你自己的绷带名
* use是 Cosmos支持的命令,你必须安装 Cosmos才能使用这个宏,如果你没有 Cosmos,使用下面的宏(绷带必须放在主背包第一格)
/script TargetUnit(“Player”);
/script UseContainerItem(0,1);
/script TargetLastEnemy();
2.对敌人的 Pet使用技能
/script TargetUnitsPet(“target”);
/cast Blind
/script TargetLastEnemy();
* Blind是技能名,你可以用自己的技能,这里用了盗贼的 Blind(我是盗贼啦,呵呵)
**/script是使用脚本的命令,可供使用的命令参考附件
**可以用 Shift+点击技能书里图标的方式在宏中添加释放技能的命令
**可以用 Shift+点击物品的方式在宏中添加物品名
3.打开所有背包
/script OpenBag(0);
/script OpenBag(1);
/script OpenBag(2);
/script OpenBag(3);
/script OpenBag(4);
打开所有背包,可能
/script OpenAllBags()
一样搞定:P
热键Shift+ B也是可以的
4.战士用,双手武器切换单手武器+盾:
首先在快捷栏10、11、12(也就是0、-、=的位置)拖上双手武器、单手武器、盾的快捷方式;
双手武器:
/script ActionButtonDown(10);ActionButtonUp(10);
单手武器+盾:
/script ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12);
以下命令全部中空格用下划线_来表示
%后面的都是变量
=各种命令分类收集=
参数设置
%t
切换当前目标命令
/target_%name
/assist_%name
/script_TargetLastEnemy();
游戏动作
/cast_%skillname(rank_%d)
/f
/script_UseAction(n%d,%d);
设置延迟命令
/pause_%d
聊天常用命令
/s_
/p_
/g_
/raid_
=应用部分说明=
聊天部分命令我就省略了…重点说明游戏中实际关系到游戏操作的命令
首先%t是指当前目标名称,%t大多是用在聊天中…比如:
…
你好,%t
我开始攻击%t,大家请注意…
Pull
/script TargetNearestEnemy();
/p Pulling%t
/script AttackTarget();
/v inc
Assist
/assist%t
/script AttackTarget();
UsePoison
/script UseContainerItem(bag,slot); PickupInventoryItem(16);
UseContainerItem(bag,slot);
PickupInventoryItem(17);
/in 1740/script DEFAULT_CHAT_FRAME:AddMessage(“Poison wearing off in one minute”)
二、魔兽世界如何用宏命令
魔兽世界对自己施放法术或者道具的宏:
/目标(你的名字)
/施放(法术名字)
具体操作如下:
第一步,首先我们需要进入到魔兽世界8.0游戏当中,然后按下ESC按键,如图所示。
第二步,之后我们在弹出来的选项中点击【界面】选项,打开设置界面,如图所示。
第三步,在宏命令界面内选择新建后输入技能名字和选择技能图标。
第四步,然后我们在里面勾选自动自我施法前面的框,即可将其设置选中,如图所示。
第五步,把宏命令的技能图标拖到技能栏就可以使用了。
三、魔兽世界宏命令怎么使用
宏命令中级进阶教程(中)――在宏里运用函数写程序从这一章开始,我开始为大家介绍函数和用函数写一些简单的程序(什么是函数?你不需要了解,知道怎么用就成),灵活的运用函数可以做到让很多人羡慕的效果。这需要大家略微了解写程序的知识,我会在讲解中进行介绍,但也需要你去消化、去琢磨。我写教程是为了让更多的人会运用宏而不是准备开个写宏的专门店。提示:即便使用函数和程序语言也很难实现2个或2个以上的动作连用(何时可以使用2个技能请参照我的教程第五章)。更多的时候是一种智能判断,如战士在切换防御姿态前先换成单手武器+盾,切换狂暴姿态时换成双武器等,希望不要再遇到让我写个机器人程序的人:(考虑到所有立志于学习宏的玩家,我是怎么麻烦怎么来!例子(一):牧师上盾并随机说话/ta=”%t,给你个有限无敌圈!”;b=”%t,把你变上帝!”;c=random(5)/t if c1 thenSendChatMessage(a) else if c2then SendChatMessage(b) elseend;end/t CastSpellByName(真言术:盾(等级9))第一句:/ta=“%t,给你个有限无敌圈!”;b=”%t,把你变上帝!”;c=random(5)/t:告诉系统下面这段文字是用宏语言写的,如果玩家想使用函数必须在每行的开始加上这一句;a=”%t,给你个有限无敌圈!”;b=”%t,把你变上帝!”:这是一个赋值语句(注意用引号把文字括起来。这是必须的,否则系统会认为是个变量而造成错误),让后面的所写的语句中‘a’代表“给你个有限无敌圈!”这几个字;‘b’代表“把你变上帝!”这几个字。无论任何时候输入%t都会转化为所选目标的名称。在这里的‘=’可以理解为‘代表’的意思而不是“等于”(什么是等于?看下文……正规的解释可不是这样的,希望我这么说能让没学过程序的人理解),宏命令中只能写入255个字符,字字如金啊!再说每次说话是输入a方便还是打一大串字方便?c=random(5):random(5)表示在1~5中间取一个随机数字。那么这句话的意思就是‘让c代表一个1~5之间的随机数字’,这个数字数字是你每点击一次宏就自动生成一次。我们整体来看看第一句的意思:“让a代表”给你个有限无敌圈!”,b代表”把你变上帝!”,c代表一个1~5之间的随机数字”。大家理解了吗?再看第二句:/tifc1 then SendChatMessage(a) else if c2 then SendChatMessage(b)elseend;end/t:我就不解释了,看上文if…..then……elseif……then……else……end;end:这是一个判断句,咱们用中文来说就是“如果…….执行……否则如果……执行……结束;结束”,(我特意把每个关键字后面的空格多加了一个,希望大家看清楚并了解“ifc1”和“ifc1”不是同一个意思。系统会认为第二个是错误的)注:‘如果’后面要跟一个判断条件,成立就直接执行下一句的内容,不成立就跳转执行否则的内容;有几个‘如果’最后就要跟几个‘结束’。如果你有5个条件,每个条件都要跟不同的结果,那你可以通过不断的‘否则如果’来完成SendChatMessage(a):这句的意思是把“a”所代表的内容以普通说话的方式表达出来,在本例的效果如同“/s%t,给你个有限无敌圈!”SendChatMessage(b):意义同上c1:这是一个判断语句,判断c是否等于1(,一个等号是赋值,两个等号才是判断,切记切记),你可以用其他判断方式“”等于、“>”大于、“<”小于、“>=”大于等于、“<=”小于等于和“~=”不等于。第二句程序的意思:如果c等于‘1’,用普通对话说:“<目标名称>,给你个有限无敌圈!”,否则,如果c等于2,用普通话说:“<目标名称>,把你变上帝”,否则结束此程序。第三句:/tCastSpellByName(真言术:盾(等级9))这句的意思是施放9级盾,相当于之前讲过的“/施放真言术:盾(等级9)”这条命令,不同的是“/施放”需要单起一行,并只能执行这一条命令。“CastSpellByName(”法术名称”)”可以插入到程序的任何地方从而实现根据不同的情况使用不同的技能。最后:请注意你的字母大小写,注意逗号,括号,冒号,引号,分号等都要用英文,if、then、else等词语后面都要加空格或者分号,在出现问题后先检查自己所写的宏里面有没有这些错误。这个宏效果是用同一技能说不同的话,总听同一句话多烦啊!20%几率说第一句,20%几率说第二句,60%几率不说话――我们之前初级教程的升级版!希望大家喜欢附加讲解内容:(一)关于SendChatMessage()这个函数的深入了解――使用格式:SendChatMessage(说话内容,说话方式,语言,频道)作用:说话我在例子中用这个函数用的非常简单,可以如果我们想大喊出来怎么办?想在行会中说话怎么办?在这里我就对“SendChatMessage()”多讲些内容,毕竟在我看来这个可能是用的最频繁的函数了例:/tSendChatMessage(“主动给钱或是由我抢劫二选一”,”say”,”通用语”,”YELL”)作用:大喊“主动给钱或是由我抢劫二选一”和在宏里面输入“/y主动给钱或是由我抢劫二选一”效果相同。
说话内容:要发送的消息
说话方式:聊天消息想要发送的类型,省略时为SAY,可使用:
1.SAY:普通说话2.WHISPER:密语,必须在参数频道中指明密语对象的名字,可配合函数UnitName(unit)使用(这个函数我们之后再说)语言:写上“通用语”“精灵语”“侏儒语”“兽人语”等等,可以省略频道:必须在参数频道中指明频道的编号,省略时为”综合”,我们还可以用以下的参数:
1.GUILD:工会 2.PARTY:小队3.RAID:组团4.YELL:大喊注意:标点符号用英文,每个内容、方式等用逗号隔开,除“说话内容”外均可以省略。(二)生成一个随机数的函数random()使用格式:random(起始值,结束值)作用:生成一个在起始值和结束值之间的随机数随机数:无起始值和结束值时位于[0,1]区间;提供单个参数n时,随机数位于[1,n]区间;提供两个参数起始值和结束值时,随机数位于[起始值,结束值]区间例:/trandom(50,100)作用:生成一个50~100之间的随机数。好了。本章教程就写到这里,例子不多,只有一个,灵活运用的效果还是很不错的。本章在介绍程序书写方法上用去了大量的篇幅,在下一篇教程中我们继续对函数的运用进行讨论。例子多多。欢迎收看!(为了减少到可以发表的字数费老劲了)二区月神殿法师QQ:8499646欢迎交流,欢迎指正!
魔兽世界宏怎么用的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于魔兽世界中的“宏”怎么使用、魔兽世界宏怎么用的信息别忘了在本站进行查找哦。
版权声明:本文《魔兽世界宏怎么用,魔兽世界中的“宏”怎么使用》由网友konglu提供,仅作为展示之用,版权归原作者及公司所有;
出于传递更多信息之目的,如果侵犯了您的权益,请您来信告知,我们会尽快删除。