[原]魔兽世界宏命令上手指南

魔兽世界宏命令完全指南 因为有些插件和宏命令是通过宏名称来调用宏的。同时 ,新建的宏被选中 ,图标显示在当前选中宏的栏位中:现在你可以写你的宏了。以下是一些普通宏命令的示例 :/say (/s, /说) /whisper (/w, /talk, /t, /告诉) /reply (/r, /回复) /emote (/e, /em, /me, /表情) /dance (/跳舞) 喜爱PVP的人 ,应该不会忘了这个:/spit (/吐口水) 把宏 放到技能栏上,我们就可以点击它来执行这些语句了,而且 还可以同时做多个动作。 阅读详情

说明:本文自发出起一个月内不接受任何形式的转载。本文中依然存在一些错误。作者不承担对魔兽世界软件进行技术支持的义务。

“宏”在程序员眼中是一个很常见的字眼,它一般指代一小段能够实现对批量的数据进行固定方式的处理的程序段。这里的“宏”和编程语言中的“宏”的区别并不是很大,只是我们编写宏的目的不是为了处理数据,而是使我们玩游戏更加得心应手。

如果你玩过EQ之类的欧美网络游戏,当然对其提供的宏功能不会陌生。不过我们今天介绍的魔兽世界(以下简称WOW)中的宏,其功能之强大可非这些游戏提供的宏命令功能所可比的。

 

 

批处理命令:最简单的宏

 

 

按下回车,打上“/p +++”……这样的命令我相信你一定用过,它的作用是给小队频道发送一条内容是“+++”的消息:这一定是队里的“奶妈”有点玩忽职守了。类似的还有“/g ××××”(公会聊天)、“/raid ××××”(团队聊天)等等,以及“/dance”(跳舞)、“/cry”(哭)等等表情命令。

最基本的宏就由这些命令构成,如果你接触过DOS中的批处理文件(*.bat),你会发现这和批处理文件的编写别无二致:将一系列命令按照顺序写出来。

让我们来写一个最简单的宏:(德鲁伊)施放休眠术并且通知小队成员不要惊醒目标。

在游戏中按下ESC,在弹出的窗口中选择“宏命令设置”;或者在游戏中按下enter键输入“/macro”并且回车;或者单击聊天信息窗口左侧最下面的气泡按钮选择“宏”,都可以进入宏命令设置窗口。首先单击“新建”按钮创建一个宏,接下来为宏取个名字并且选择一个图标。这里就选择和休眠术相同的图标,名字就叫“休眠”吧。按确定以后这个窗口关闭,接下来就可以在上一个窗口的大文本框里面输入宏的内容了:

 

 

/p [Auto]先让%t睡上20秒,谁惊动它我跟谁急!

/施放 休眠(等级 2)

 

 

然后按确定即可。这时候你就可以把宏命令设置窗口中的“休眠”图标拖动到快捷栏中取代原有的休眠图标了。我们来看看这个宏的语句:第一行是给小队频道发送一条信息,告诉队友我即将催眠目标——%t用于代表你选择的目标,比如你选择了一只淡水鳄,那么这条消息发出后“%t”就会自动被替换为“淡水鳄”,信息头部标上“[Auto]”用来区分于普通的聊天信息;第二行用于对目标施放一个二级的催眠术。

试一试,如果你现在处在一个小队里,你就会先告诉队友目标即将被催眠,接着对它使用休眠术。如果你不在小队里,会有信息提示你“不在一个小队中”,但是休眠术依然会被施放。

 

 

小技巧:如果要在宏里面加入一个施放法术的命令,可以在编写宏命令的同时打开法术书窗口,按住shift单击你要施放的法术。当然这里的法术不仅仅指魔法,也包括战士、盗贼等职业的技能。

 

 

接下来再看看这样一个宏:

 

 

/p [Auto]正在施放宁静,要命的往我身边靠。

/施放 宁静(等级 2)

 

 

这个宏的作用是在施放宁静(德鲁伊的群体治疗法术)之前提醒队友进入法术有效范围。

使用简单的枚举命令的方式写出来的宏能够实现一些普通的功能,当然不正当的使用也可能给其它玩家带来麻烦(例如:使用宏刷屏,这样有可能打乱聊天频道的秩序,并有可能导致你的名字进入成百上千人的屏蔽名单)。在WOW中文官方网站http://www.wowchina.com/info/basic/emotion.htm上给出了一系列的表情命令,可以用于宏的编写。在游戏中输入/help可以获取部分命令列表,它们都可以写入宏中。

 

 

函数使用:接触LUA语言

 

 

LUA是一种脚本语言,在WOW里面,这种语言得到了广泛的应用。你可以使用它配合XML语言编写插件,当然这要求你有一定的编程功底;它也被应用到WOW的宏当中,使用LUA语言编写的宏所具有的功能可以强大到难以想象的程度,当然这依然是和你的编程水平所挂钩的,但是我相信一些简单的LUA语句并不会让你感到头疼。

我们先看一个例子:

 

 

/Assist ×××

/script PetAttack();

 

 

这个例子可以用于猎人或者术士,前提是猎人或者术士带着宠物。第一行依然是一个普通的命令语句,这是在较高级副本中常用的一个命令,作用是协助指定的队友进行攻击,命令中的×××可以替换为任何一个队友的名字(别打错别字哦),一般应该是队中的坦克;第二句就用到了一个LUA语句:

首先使用/script来区分这是一个LUA语句而非普通的命令,在一个空格后面跟上这个LUA语句。在这个例子中,我们调用了一个函数“PetAttack();”它的作用是命令宠物攻击目标。很显然,这个宏的作用就是:把目标转向队伍中坦克正在顶的敌人,然后命令宠物上去攻击它。最后请注意,一切函数语句的后面都要加上一个半角的分号(“;”)。

 

 

再来看看这个例子:

/target ×××

/施放 回春术(等级 8)

/script TargetLastEnemy();

/script AttackTarget();

 

 

这个宏的作用是(在战斗中)给自己加血,然后继续攻击目标。第一行使用/target命令选定目标,这里把×××换成自己的名字以示选定自己;第二行的命令用于施放一个等级8的回春术(你可以把它换成你常用的治疗法术,但一定要是瞬发法术);接下来的两行分别用到了两个函数:TargetLastEnemy();这个函数用于把目标转向上次选定的敌人;AttackTarget();这个函数用于攻击选定的敌人。

暴雪为WOW提供了很多函数接口,你可以在http://www.wowwiki.com/index.php/World_of_Warcraft_API查阅到全部开放函数的信息和一些没有开放的(术语叫undocumented)函数的信息,不过这就不仅仅要求你有一定的编程功底了,你的英文也得过关才行。在“基本功能的载体:常用函数”一节我给出了一些常用的函数。

 

 

 

 

延时操作:COSMOS插件的应用

 

 

在上一个例子中,我们使用的治疗法术一定要是瞬发的。这是因为法术后面的语句不会等到法术施放完毕之后再执行,而是在法术开始发出后立即执行。所以这时候选定目标并对其进行攻击是没有效果的。如果要在这里用上非瞬发法术(例如:治疗之触),则必须用到延时语句:让TargetLastEnemy()语句在施放法术后3.5秒再执行(治疗之触的吟唱时间是3.5秒)。

WOWLUA接口中并没有与延时有关的函数,如果要在宏中实现延时,我们要用到一个叫做COSMOS的插件。

COSMOS的官方网站地址在http://www.cosmosui.org/,你可以从这里下载到COSMOS。注意这是一个英文插件集合,并且有可能和你安装的其它插件集合或者插件相冲突。安装之后就可以在宏中使用延时命令了。例如,上面一个例子可以改成:

 

 

/target ×××

/施放 治疗之触(等级 7)

/in 3.5 /script TargetLastEnemy();

/script AttackTarget();

 

 

这里改动的重点在第三行,在原有语句之前加上了“/in 3.5。它的作用就是提供3.5秒的延时,在这个延时之后继续执行下面的语句。依次类推,延时2秒即为/in 2,延时10秒即为/in 10,等等等等。

 

 

条件判断语句:具体情况具体对待

 

 

接下来这个例子使用到了条件判断语句:

 

 

/target ×××

/script

    if(UnitMana("×××") >= 545) then

        CastSpellByName("治疗之触(等级 7)");

    else if(UnitMana("×××") >= 445) then

        CastSpellByName("治疗之触(等级 6)");

    else

        UseContainerItem(0, 2);

    end

end

 

 

这个例子首先将目标定为自己,接下来用了一个条件判断语句:获取指定对象的法力值,接下来判断:如果法力值大于或者等于545(足以施放7级治疗之触),则施放7级治疗之触;如果小于545,再进行判断:如果法力值大于或者等于445,则施放6级的治疗之触。如果法力值不足445,则使用最右侧背包里面第二格的物品,我们假设它是超强治疗药水。

来解释一下这个宏里面使用到的函数:UnitMana()函数用于获取指定对象的Mana值(针对不同职业,可能是法力值、能量值或怒气值,下同),括号里应该指定对象的名字,这里当然就是你自己了。注意名字要用双引号(半角)括起来(下同)。CastSpellByName()函数在这里用于替代“/施放”命令,因为这个施放过程实际上是包含在一个宏语句里面的,而“施放”语句只能做为一个单独的宏语句出现。在括号内应该指定法术的完整名称,包括它的等级,并且同样应该用双引号(半角)括起来(下同)。UseContainerItem()也是一个很实用的函数,它的作用是使用指定背包中指定位置的物品。括号中用逗号隔开两个数字,第一个指定背包的序号,在游戏屏幕的右下角从右到左数,第一个背包编号为0,第二个编号为1,依此类推。第二个数字指定物品处在指定背包的哪个位置,打开一个背包从左到右、从上到下数依次是123……。

再来看看if结构是怎么写的。首先是if语句,接下来跟着一个括号,里面是判断条件语句,接下来跟着一个then。如果括号中的判断条件成立,那么执行then后面的句子;如果不成立,则跳到下面一个else或者end语句。else语句指定判断条件不成立的情况下该执行什么,在else后面还可以跟上if进行其它判断。一个if语句结束后应该跟上一个end语句来宣布它的结束。

由于这个宏中的一个LUA语句是多行的,所以最后必须跟上一个end来表示这个LUA语句的结束。

使用条件判断语句还能实现其它一些功能,例如根据友方的等级对它施放增益法术(高等级的增益法术对低级的目标无效)、根据友方生命值的多少来对它施放不同等级的治疗法术,以及根据敌人生命值的多少来确定使用哪个等级的法术攻击它,以最大限度的节约法力值等等。这些语句中可能使用到的一些函数我都在“基本功能的载体:常用函数”一节给出了简单的说明。

 

 

基本功能的载体:常用函数

这里列举了一些常用的函数,函数后面跟的括号里面如果有内容,这些内容被称为“参数”。

如果参数没有加上双引号,那么参数应该是数值。如果加上了双引号,参数应该是指定的名称,并且这些名称也应该加上一对半角双引号。

更完整的函数列表请参考“函数使用:接触LUA语言”一节中给出的地址。

 

 

·ActionButtonDown(id)ActionButtonUp(id):对快捷栏(左下角具有12个空位的工具栏)的操作。前一个表示在指定的快捷栏空位上按下鼠标键,后一个表示在指定的栏位上松开鼠标键。同时使用这两个函数可以实现使用快捷栏的法术、技能或者物品。括号中的id应该替换为快捷栏位的序号,从左到右依次是123……12

例如:/script ActionButtonDown(10);ActionButtonUp(10); 这个宏可以使用快捷栏第十格的法术、技能或者物品。

·BonusActionButtonDown(id)BonusActionButtonUp(id):对附加动作栏(对于猎人、术士是宠物技能栏,对于德鲁伊是形态切换栏,等等)的操作。类似上一条对快捷栏的操作。

·CURRENT_ACTIONBAR_PAGEChangeActionBarPage():前者用来指定当前快捷栏的页数,后者用于切换快捷栏的页。

例如,把快捷栏翻到第5页:/script CURRENT_ACTIONBAR_PAGE=5;ChangeActionBarPage();

·AssistByName("name")AssistUnit("unit"):均用于协助指定的对象进行攻击,效果等同于/Assist命令。把“name”、“unit”替换成需要协助的对象的名字。

·CastPetAction(index):施放宠物技能,把index替换为对应的宠物技能编号。

·PetAttack()PetAggressiveMode()PetDefensiveMode()PetWait()PetFollow():第一个命令宠物进攻目标;第二个让宠物进入攻击模式,第三个使宠物进入防御模式,第四个让你的宠物等待,最后一个让宠物跟随你。

·PetDismiss():解散你的宠物。

·CastSpellByName("name"):施放指定的法术。把“name”替换成法术的完整名称(包括等级)。

·TargetByName("name")TargetUnit("unit")TargetUnitsPet("unit"):前二者将目标转向指定的对象,后者将目标转向指定对象的宠物(如果有的话)。把“name”和“unit”替换成目标的名字。

·TargetLastEnemy()TargetNearestEnemy()TargetNearestFriend()TargetNearestPartyMember():依次是将目标转向最近攻击的敌人、离自己最近的敌人、离自己最近的友方目标和离自己最近的队友。

·ToggleBag(id):打开或者关闭指定的背包,id为背包的编号,从右到左依次是01234

·FollowUnit("unit"):跟随对象。把“unit”替换成目标的名字。

·UnitHealth("unit")UnitHealthMax("unit")UnitLevel("unit")UnitMana("unit") UnitManaMax("unit"):依次返回指定对象的生命值、生命上限、等级、Mana值、Mana上限。把“unit”替换成目标的名字。

 

 

无限种可能:深入探索研究

 

 

应用了LUA语言的WOW宏能够提供无限种可能的功能,以上所说到的只是皮毛而已。你能做的还包括使用循环语句遍历队友,给他们一个一个的加上增益法术;配合COSMOS插件的延迟功能实现自动从一个地点跑到另一个地点;以及编写宏自动整理背包、自动跟随队友挂级等等。虽然基本上不可能使用宏写出外挂来,但是编写巧妙的宏能提供的功能并不比外挂弱多少,而且请注意,这是暴雪和第九城市官方承认的方式,你在光明正大的享受宏给你带来的方便快捷和乐趣。这一切都在于你对WOW,对LUA语言,对WOW的函数接口的探索和研究。

魔兽世界宏命令实战技巧:从入门到精通 本文系统介绍了《魔兽世界宏命令的实战技巧,从基础创建到高级应用。宏命令作为游戏效率倍增器,能帮助玩家简化操作、优化输出循环与治疗链,并实现PVP中的快速控制与反应。文章详细解析了/cast、/use等核心命令,以及条件判断、鼠标指向治疗等进阶技巧,旨在帮助玩家从入门到精通,显著提升游戏体验与竞技水平。 阅读详情

相关推荐

魔兽世界宏命令新手入门:从零开始打造你的第一个战斗宏

本文为《魔兽世界》新手玩家提供宏命令入门指南,详细讲解如何从零开始创建第一个战斗宏。内容涵盖宏命令的基础概念、界面操作、核心/cast命令的编写方法,以及鼠标指向宏、组合技能等实用技巧,旨在帮助玩家简化操作、提升战斗效率,快速上手这一强大游戏工具。

yhn45678901的博客 469

宏命令指引

宏命令指引

weixin_51122280的博客 11万+

宏命令完全手册

宏命令可以用在各个方面,这个文档有助于帮助大家学习下宏命令在非办公系统中地应用。

宏命令全表

宏命令全表

weixin_51122280的博客 14万+

魔兽世界 | 宏命令教程与思考

前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 一、什么是宏命令 有了宏命令,可以很大程度的解放双手,开启懒人脸滚键盘模式,本篇文章就简单讲解一下基本宏指令,并尝试完成一套一件输出宏 二、基本宏速查表 #showtooltip 多用于宏命令的开头,让按钮显示技能的说明和技能的图标 /cast xxx 施放技能,如/

RichardsZ_的博客 5万+

魔兽世界十大必学宏命令实战指南

记住,好的宏命令能提升操作效率,但最终决定战斗胜负的,还是玩家对职业机制的理解和临场应变能力。这个宏将伏击、锁喉等技能整合在一起,根据目标状态自动选择最合适的起手方式,是PVP中的杀手锏。这个宏能在开启符文武器增效的同时,根据当前符文情况自动选择最优输出技能,特别适合血DK在团队副本中的使用。这个宏整合了恶魔守卫的拦截、旋风斩等技能,并加入了自动切换攻击目标的逻辑,让恶魔守卫的AI更加智能。萨满的图腾种类繁多,这个宏可以根据不同场合(单体输出、AOE、治疗)自动部署最合适的图腾组合,省去了手动选择的时间。

RubyLion28的博客 1532

魔兽世界宏命令完全指南:从菜鸟到高手的快速进阶教程

还在为复杂的技能组合而头疼吗?想要一键释放多个技能却不知从何下手?魔兽世界API工具正是为你准备的完美解决方案!这个强大的平台不仅让你轻松创建和分享宏命令,更为插件开发者提供完整的API查询服务,让每个玩家都能成为艾泽拉斯的"技术大师"。 ## 🎯 宏命令基础:新手必学的核心概念 ### 什么是宏命令?为什么你需要它? 宏命令就像是游戏中的"智能快捷键",通过一个按键完成多个复杂操作。想象

gitblog_00899的博客 1123

魔兽世界全职业实战宏命令大全:从PVE到PVP

这样不仅能避免游戏内频繁修改的麻烦,还能和其他玩家分享你的宏命令配置。作为一个从60年代玩到现在的老玩家,我深知宏命令魔兽世界中的重要性。一个好的宏可以让你在PVE和PVP中事半功倍,今天就和大家分享一些我多年积累的实用宏命令经验。坦克时这个宏特别实用,能在格挡后立即使用复仇,最大化仇恨输出。建议放在最顺手的键位,比如数字键1。这个平台最方便的地方是可以直接看到宏命令的效果预览,不用进游戏就能测试,节省了很多时间。建议放在容易按到的键位,比如Q或E。战士作为近战职业的代表,宏命令的使用尤为重要。

NightshadeRaven21的博客 1573

魔兽世界】WLK版本的常规宏教程

因为老婆第一次玩WOW,看到魔兽世界技能那么多头都大,遇到敌人紧张后导致治疗和攻击技能分不清,学习WOW宏解决这些问题。宏有一点没写对都会导致无法正常使用。

PYB 5万+

魔兽世界宏命令终极教程:5分钟从菜鸟变高手

还在为复杂的技能操作手忙脚乱吗?想在激烈的战斗中一键释放完美连招?魔兽世界宏命令就是你通往高玩之路的秘密武器!这个强大的工具平台不仅能帮你轻松创建智能宏命令,更为插件开发者提供了完整的API查询服务,让你在艾泽拉斯的冒险中如虎添翼。 ## 为什么你的操作总是慢人一步? ### 技能释放延迟的真相 每次战斗中,你都需要在短时间内完成多个操作:选择目标、判断时机、点击技能。这种传统操作方式存在天

gitblog_00250的博客 1343

魔兽世界API查询与宏命令分享终极指南:5分钟快速上手

还在为魔兽世界插件开发而苦恼吗?这个开源项目为你提供了完整的API查询工具和宏命令分享平台,让插件开发变得简单高效!无论你是刚入门的新手还是资深开发者,这里都有你需要的资源和工具。 ## 🔧 新手必看:环境配置一步到位 ### 快速安装依赖 首次使用项目时,只需要在项目根目录运行一条命令即可完成所有依赖安装: ```bash go mod tidy ``` ### 智能数据库连接 项目内置

gitblog_00353的博客 952

魔兽世界API工具完整指南:从宏命令创建到插件开发的终极教程

还在为魔兽世界复杂的技能组合而烦恼吗?想要一键释放多个技能却不知从何下手?魔兽世界API工具正是为你量身打造的完美解决方案!这个强大的开源平台不仅让普通玩家轻松创建和分享宏命令,更为插件开发者提供完整的API查询服务,让每个艾泽拉斯的冒险者都能成为真正的"技术大师"。 ## 🎯 项目核心功能介绍 ### 宏命令创建与分享平台 魔兽世界API工具的核心功能之一就是宏命令管理。通过[route

gitblog_00424的博客 1101

WOW宏

你最后说的技能和动作条的位置 13-24 第二动作条 25-36 右边动作条 37-48 右2动作条 49-60 右下动作条 61-72 左下动作条 73-84 战斗姿态下的动作条 85-96 防御姿态下的动作条 97-108 狂暴姿态下的动作条 解释几个函数: CastShapeshiftForm 改变姿势(1为战斗,2防御,3狂暴) CastSpellByName( ) 按技能名称施法,括

KeNtEr' Blog 1817

魔兽世界宏命令(自用版)

以下为目前自用宏分享,自测过,按需更新。

那个那个鱼的博客 5万+

cmake取消宏定义_魔兽怀旧服,牧师实用宏

相信很多人都知道WOW中的斜杠"/"和表情命令.宏可以将这些命令按照自己对条件的设置串联起来,比如:/Kneel是让你跪下来的动作而/say就是最基础的对话动作我们现在用一个宏把他们串起来:第一行内容:“/Kneel”第二行内容:“/say 如果你不嫁给我,那么我就一辈子不起来…” ”这样你的人物就会先下跪再说:"如果你不嫁给我,那么我就一辈子不起来…"宏可以应用所有WOW中已经定义了的...

weixin_35819860的博客 2608

魔兽世界宏命令零基础入门:5分钟学会第一个宏

最近在玩魔兽世界的时候,发现老玩家们都在用宏命令来简化操作,作为一个完全不懂编程的新手,我决定从头学起。经过一番摸索,终于搞清楚了宏命令的基本用法,现在分享给大家这个超级简单的入门教程。比如同时使用技能和道具,或者在不同的情况下自动选择不同的技能施放。它提供了即时预览功能,可以实时看到宏命令的效果,还能直接在网页上测试各种组合,不用反复登录游戏调试。让我们从最简单的开始:创建一个一键施放技能的宏。这个宏的意思是:按住Shift键时施放炎爆术,否则施放火球术。这些是最基础的命令,几乎每个宏都会用到。

NightshadeRaven21的博客 1142

魔兽世界 宏命令 记录

自己记录的魔兽 宏命令 记录

weixin_40011280的博客 1万+

零基础入门:魔兽世界宏命令制作5分钟教程

上找到了很多现成的宏模板,直接复制修改特别方便,还能实时预览效果。他们的拖拽式界面对新手特别友好,不用记复杂语法就能组合出实用宏命令。建议大家可以先从这里的基础模板开始尝试,熟练了再自己创作更复杂的宏。作为一个刚接触魔兽世界的新手,最让我头疼的就是各种复杂的操作和技能组合。今天就来分享下我的学习心得,用最简单的步骤带大家快速上手宏命令制作。把常用的3-4个输出技能按优先级排列,按住一个键就能自动按顺序释放,再也不用担心手忙脚乱。遇到危险时按一下,自动释放减伤+回血+保命技能,手残党福音。

YellowSun24的博客 423
上一篇: [原]乱七八糟
下一篇: [译]坦克的对比:德鲁伊 VS 战士
sworddx
博客等级 码龄24年 84粉丝 87原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值