1.12宏命令基础教学(更新V1.02)
发表于 : 2017-12-20 10:42:17
前言
因被老G的公益行为所感动,并致12年前的青春,在官服决定开放怀旧服之际,决定写下本《宏基础教学》来支持公益与情怀。同时感谢所有在本文档编著中帮助过的作者的朋友以及所有参考文档的作者们!
“枪是无罪的,有罪的是扣动扳机的人”。写此教程目的是60年代繁琐的技能列表,为了完善游戏体验,帮助PvE玩家解放双手降低错误而写。我不期望我的宏被用在大号虐杀小号、群号围殴单号上。当然宏并不是万能的,码农们都知道代码不可能没有bug。我们要做的是尽可能在完善的条件下达到最顺畅的技能输出。一般情况下,宏将3个以内的技能捆绑一起并通过相应的判断条件有限释放。会有人可否一键全技能,答案虽然是肯定的,但需要臃肿的代码量来支持,复杂的条件判断及循环增加了巨大的开发和维护成本,不一定能带来流畅的体验。所以请根据实际情况在最性价比的情况下编写实用的宏命令。
因本教学手册编写仓促,还有很多的API函数未列式解释。其余相关扩展待日后更新,如有需要还请自行验证。同时希望大家对不足之处提出宝贵建议指正,也可将未解释部分提供解析内容,非常感谢!
目录
一、支持插件
二、Lua语句
2.1 Lua简介
2.2 语法测试环境配置
2.2.1 编译软件部署
2.2.2 Lua编译器与编译软件关联
2.3 Lua基础语法
2.3.1 数据类型
2.3.2 变量
2.3.3 循环
2.3.4 流控制
2.3.5 运算符
2.3.6 函数
2.3.6.1 动作条定义
2.3.6.2 姿态定义
2.3.6.3 动作条
2.3.6.4 增益Buff/减益Debuff
2.3.6.5 宠物
2.3.6.6 法术技能
2.3.6.7 单位
2.3.6.8 针对目标
三、实例分析
战士
圣骑
猎人
萨满
盗贼
小德
术士
法师
牧师
其他
四、备注与附件
变更记录
版本号 更新日期 描述
1.0 20171220 初稿定稿。确定手册基础架构与内容。
1.02 20180112 新增“人物装备定义”索引,装备、背包部分函数。
一、 支持插件
“工欲善其事,必先利其器”。众所周知,早起的wow版本中blz开放了大量的API,为玩家带来了各种便利。但又因为某些原因这些api并不能非常好的应用到一起。所以推荐几款非常不错的宏插件,它们可以让这些API结合的无比强大。
未避免涉及文档著作权等问题,这里只简略表述其功能,并附上附件。详情请自行搜索。
1)supermacro 超级宏——支持2000字节的宏语句。官方开放的宏长度只有250字节,足足翻了8倍。下图显示7000字节,LZ没验证。
附件:因附件数量限制,放于最后。
2)Buff&Debuff函数——将原有的buff/debuff判断语句精简到只需要一个函数上。大大节省宏长度
附件:因附件数量限制,放于最后。
3)CleverMacro——支持WOW2.0的api使用在1.12版本上。2.0开放的API请自行搜索。
附件:因附件数量限制,放于最后。
图样,红框表示“Buff&Debuff函数”应用 二、 Lua语句
2.1 Lua简介
Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
顺带提下《魔兽世界编程宝典--World of Warcraft Addons完全参考手册》,这本书详细编写了WOW中所包含的宏命令编写及插件制作,有兴趣的同学可以自行学习。附件中提供译本下载。因附件数量限制,放于最后。
本教程针对初学者,综合上述内容并精简。提供基础Lua语法及技能类API知识。进阶学习者可参照附件文档或自行搜索深入内容。
2.2 语法测试环境配置
2.2.1 编译软件部署
感谢”BL-ZS-怪兽”同学提供建议使用Sublime_Text3来编译Lua语法验证语句是否存在错误。
下载地址:因附件数量限制,放于最后。
解压即可,双击打开,弹出界面如下(作者已经安装相关插件,原始是英文界面。以下操作均以中文称呼,请自行翻译): 点击工具栏“工具”,选择“命令面板”,选择上图红框,在新窗口中输入“localization”,会弹出中文插件,选择安装即可(作者已安装故不再显示)。安装完毕后自动更新至中文界面。 重复“install package”操作,输入LuaFormat,并自行安装。安装完毕后可以再“工具”-“编译系统”中查看是否有Lua编译确认安装成功。 2.2.2 Lua编译器与编译软件关联
Lua编译器,类似Java的JDK,用以系统识别其语言。这类往上有很多教材,不作累述。
附件提供下载:
需配置环境变量。如下图在Path变量下增加编译器路径,确认退出即可。 通过cmd命令提示符窗口,验证Lua编译器部署成功。 打开sublime_text3编译工具,菜单中的“工具->编译系统->新编译系统”来新建一个编译系统配置文件,在配置文件中使用下面的配置代码覆盖:
{
"cmd": ["$lua编译器路径/$lua文件名.exe", "$file"],
"file_regex": "^(?:lua:)?[\t ](...*?):([0-9]*):?([0-9]*)",
"selector": "source.lua"
}
注意红色部分需要根据实际环境修改调整(即环境变量配置路径,并增加编译器文件名),斜杠符号为“/”,非window默认斜杠。保存退出。
新建文件,输入Lua语句,保存时注意以“.lua”后缀名结尾,如下图。 保存后,界面中按“F7”运行,下框正常打印,表示关联部署正常。
因被老G的公益行为所感动,并致12年前的青春,在官服决定开放怀旧服之际,决定写下本《宏基础教学》来支持公益与情怀。同时感谢所有在本文档编著中帮助过的作者的朋友以及所有参考文档的作者们!
“枪是无罪的,有罪的是扣动扳机的人”。写此教程目的是60年代繁琐的技能列表,为了完善游戏体验,帮助PvE玩家解放双手降低错误而写。我不期望我的宏被用在大号虐杀小号、群号围殴单号上。当然宏并不是万能的,码农们都知道代码不可能没有bug。我们要做的是尽可能在完善的条件下达到最顺畅的技能输出。一般情况下,宏将3个以内的技能捆绑一起并通过相应的判断条件有限释放。会有人可否一键全技能,答案虽然是肯定的,但需要臃肿的代码量来支持,复杂的条件判断及循环增加了巨大的开发和维护成本,不一定能带来流畅的体验。所以请根据实际情况在最性价比的情况下编写实用的宏命令。
因本教学手册编写仓促,还有很多的API函数未列式解释。其余相关扩展待日后更新,如有需要还请自行验证。同时希望大家对不足之处提出宝贵建议指正,也可将未解释部分提供解析内容,非常感谢!
目录
一、支持插件
二、Lua语句
2.1 Lua简介
2.2 语法测试环境配置
2.2.1 编译软件部署
2.2.2 Lua编译器与编译软件关联
2.3 Lua基础语法
2.3.1 数据类型
2.3.2 变量
2.3.3 循环
2.3.4 流控制
2.3.5 运算符
2.3.6 函数
2.3.6.1 动作条定义
2.3.6.2 姿态定义
2.3.6.3 动作条
2.3.6.4 增益Buff/减益Debuff
2.3.6.5 宠物
2.3.6.6 法术技能
2.3.6.7 单位
2.3.6.8 针对目标
三、实例分析
战士
圣骑
猎人
萨满
盗贼
小德
术士
法师
牧师
其他
四、备注与附件
变更记录
版本号 更新日期 描述
1.0 20171220 初稿定稿。确定手册基础架构与内容。
1.02 20180112 新增“人物装备定义”索引,装备、背包部分函数。
一、 支持插件
“工欲善其事,必先利其器”。众所周知,早起的wow版本中blz开放了大量的API,为玩家带来了各种便利。但又因为某些原因这些api并不能非常好的应用到一起。所以推荐几款非常不错的宏插件,它们可以让这些API结合的无比强大。
未避免涉及文档著作权等问题,这里只简略表述其功能,并附上附件。详情请自行搜索。
1)supermacro 超级宏——支持2000字节的宏语句。官方开放的宏长度只有250字节,足足翻了8倍。下图显示7000字节,LZ没验证。
附件:因附件数量限制,放于最后。
2)Buff&Debuff函数——将原有的buff/debuff判断语句精简到只需要一个函数上。大大节省宏长度
附件:因附件数量限制,放于最后。
3)CleverMacro——支持WOW2.0的api使用在1.12版本上。2.0开放的API请自行搜索。
附件:因附件数量限制,放于最后。
图样,红框表示“Buff&Debuff函数”应用 二、 Lua语句
2.1 Lua简介
Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
顺带提下《魔兽世界编程宝典--World of Warcraft Addons完全参考手册》,这本书详细编写了WOW中所包含的宏命令编写及插件制作,有兴趣的同学可以自行学习。附件中提供译本下载。因附件数量限制,放于最后。
本教程针对初学者,综合上述内容并精简。提供基础Lua语法及技能类API知识。进阶学习者可参照附件文档或自行搜索深入内容。
2.2 语法测试环境配置
2.2.1 编译软件部署
感谢”BL-ZS-怪兽”同学提供建议使用Sublime_Text3来编译Lua语法验证语句是否存在错误。
下载地址:因附件数量限制,放于最后。
解压即可,双击打开,弹出界面如下(作者已经安装相关插件,原始是英文界面。以下操作均以中文称呼,请自行翻译): 点击工具栏“工具”,选择“命令面板”,选择上图红框,在新窗口中输入“localization”,会弹出中文插件,选择安装即可(作者已安装故不再显示)。安装完毕后自动更新至中文界面。 重复“install package”操作,输入LuaFormat,并自行安装。安装完毕后可以再“工具”-“编译系统”中查看是否有Lua编译确认安装成功。 2.2.2 Lua编译器与编译软件关联
Lua编译器,类似Java的JDK,用以系统识别其语言。这类往上有很多教材,不作累述。
附件提供下载:
需配置环境变量。如下图在Path变量下增加编译器路径,确认退出即可。 通过cmd命令提示符窗口,验证Lua编译器部署成功。 打开sublime_text3编译工具,菜单中的“工具->编译系统->新编译系统”来新建一个编译系统配置文件,在配置文件中使用下面的配置代码覆盖:
{
"cmd": ["$lua编译器路径/$lua文件名.exe", "$file"],
"file_regex": "^(?:lua:)?[\t ](...*?):([0-9]*):?([0-9]*)",
"selector": "source.lua"
}
注意红色部分需要根据实际环境修改调整(即环境变量配置路径,并增加编译器文件名),斜杠符号为“/”,非window默认斜杠。保存退出。
新建文件,输入Lua语句,保存时注意以“.lua”后缀名结尾,如下图。 保存后,界面中按“F7”运行,下框正常打印,表示关联部署正常。