一份关于如何在 Windows 和 macOS 上为 World of Warcraft 下载和安装插件的指南。
魔兽世界称之为插件(addons)而非 mods,这也是这些指南中少数几个游戏本身就是为接受它们而设计的例子之一。暴雪提供了插件 API、角色选择界面上的插件管理屏幕,以及一份公开的政策,规定了插件可以做什么、不可以做什么。这里没有 mod 加载器,没有注入器,也没有需要打补丁的东西。你只需把文件夹放到正确的位置,游戏就会加载它。
我们的示例是 Details! Damage Meter,其下载量已超过 3.67 亿次,是该游戏历史上安装量最多的插件之一。
系统要求
- 一台运行 Windows 10 或更高版本的 PC,或一台 Mac。两者都完全受支持,本指南中的所有内容在两者上都适用。
- 通过 Battle.net 启动器安装的 World of Warcraft。
- 极少的磁盘空间。插件是 Lua 和 XML 文本文件,偶尔带一些贴图,所以即使是一大堆插件也占用不了多少空间。
- 如果手动安装,需要一个解压工具。Windows 和 macOS 都原生支持
.zip。
插件是官方许可的。暴雪发布了一份 UI Add-On Development Policy(UI 插件开发政策),规定了相关规则,只要插件遵守该政策,使用它们就没有封号风险。不允许的是替你自动进行游戏操作,而 CurseForge 或 Wago 上的插件都不会这么做。
魔兽世界插件的工作原理
一个插件就是一个包含 Lua 脚本、XML 布局文件和一个 .toc 清单文件的文件夹。魔兽世界在启动时会扫描一个特定文件夹,读取每个 .toc,并加载它找到的内容。
底层不需要安装任何框架。没有东西需要钩住游戏,没有东西需要注入,也没有任何东西在魔兽世界自身的脚本沙盒之外运行。
版本(Flavors)
这是最容易让人困惑的部分,因为魔兽世界已经不再是单一的一款游戏了。
正式服(Retail)和每条怀旧服(Classic)线路运行的是独立的客户端,拥有各自独立的插件文件夹和插件构建版本。CurseForge 的插件页面会列出该插件支持哪些版本(flavors),而 Details! 目前支持:
| Flavor | What it is |
|---|---|
| Retail | The current expansion, on the 12.x client |
| Classic | Classic Era |
| Classic TBC | The Burning Crusade Classic |
| MoP Classic | Mists of Pandaria Classic |
| Titan Reforged Classic | The newer Classic line |
下载了错误的版本,会导致插件要么完全不显示,要么显示为灰色的“已过期”状态。插件管理器会根据你指向的安装位置,自动为你选择正确的版本,这也是使用管理器的一个不错的理由。
插件存放位置
每个版本在你的魔兽世界安装目录中都有自己的文件夹。在 Windows 上,正式服(Retail)的路径是:
C:\Program Files (x86)\World of Warcraft\_retail_\Interface\AddOns
在 macOS 上:
/Applications/World of Warcraft/_retail_/Interface/AddOns
其他版本使用相同的目录结构,只是文件夹名称不同,例如 _classic_era_ 或 _classic_。如果你安装了公共测试服,还会有一个 _ptr_。
每个插件都是 AddOns 目录下的一个文件夹,文件夹名称与插件名相同。Details! 安装后会生成一个名为 Details 的文件夹。
注意 - 如果 AddOns 文件夹还不存在,就自己创建一个。只有在需要用到它时,系统才会自动生成这个文件夹。
使用 CurseForge App 安装
最常见的方式,也是 CurseForge 插件页面默认假定你会用的方式。
- 下载 CurseForge app。有一个轻量级的独立版本,和一个带游戏内功能的 Overwolf 版本;两者都可以用,独立版本更轻量一些。Windows、macOS 和 Linux 版本都有提供。
- 打开它,让它检测你的魔兽世界安装。它会分别识别出每个版本。
- 打开 World of Warcraft 部分,选择你想添加插件的那个版本。
- 搜索 Details! Damage Meter 并点击 Install。
- 该应用会下载对应版本的正确构建,并将其放入正确的
AddOns文件夹中。
这个应用还会处理更新,这才是使用它的真正原因。魔兽世界的插件每次内容更新都会出问题,能够一键更新三十个插件,在这里比在大多数游戏中更为重要。
使用 WowUp 安装
WowUp 是一款免费、开源、由社区打造的插件管理器,提供 Windows、macOS 和 Linux 版本。它可以从多个插件站点拉取内容,而不只是一个,这一点很有用,因为并不是所有插件都在 CurseForge 上。
- 从 wowup.io 下载 WowUp。
- 首次启动时,它会扫描你的魔兽世界安装位置,并列出它找到的每个版本。
- 打开 Get Addons,搜索 Details! Damage Meter 并安装。
- 使用 My Addons 查看你已有的插件并进行更新。
WowUp 还可以“认领”你手动安装的插件,将它们与其来源相匹配,使其开始获得更新。如果你手头有一堆多年前手动安装的插件,把 WowUp 指向那个文件夹,是让整批插件重新纳入管理的快速方法。
使用 Wago App 安装
Wago Addons 是另一个主要的插件托管平台,同样的团队还运营着 wago.io,用于 WeakAuras 及其他导入字符串。Wago App 用于管理来自其目录的插件。
- 从 addons.wago.io/app 下载该应用。
- 让它找到你的魔兽世界安装。
- 浏览或搜索,然后安装。
Wago App 真正的优势在于其余的 Wago 生态系统。如果你已经在从那里导入 WeakAuras 字符串或 UI 整合包,拥有一个能同时管理插件的应用会很方便。
提示 - 如果可以的话,不要在同一个安装上同时运行两个插件管理器。它们都会试图“占有”同一批文件夹,结果会导致插件重复或更新到一半的问题。选一个就够了。
手动安装
值得了解一下,而且在魔兽世界里确实很简单。
- 前往 CurseForge 上的Details! Damage Meter页面。
- 在Files下,选择与你的flavor匹配的文件。对于当前资料片,那就是Retail版本。
- 下载
.zip。 - 解压它。
- 将解压出的文件夹
Details复制到你的Interface\AddOns文件夹中。 - 如果WoW正在运行,重启它。
结果应该是:
World of Warcraft\_retail_\Interface\AddOns\Details\
里面包含插件的 .toc 文件和它的Lua文件。
警告 - 插件文件夹要直接放在 AddOns 里,并且文件夹名称必须与插件所期望的一致。嵌套的 AddOns\Details-v1.2.3\Details\ 不会加载,散落在 AddOns 里的零散Lua文件同样不会加载。有些插件会在一个zip里附带多个文件夹,比如一个主插件加一个库,这些文件夹都要并排放进 AddOns 中。
TMC App
最后一个选项是我们自己的产品,不过要说明的是,就管理器而言,WoW已经是这系列指南中支持最完善的游戏了。TMC App提供一键安装、sandboxes(每个游戏可命名的mod配置文件,拥有各自的部署方式)、带实时延迟图的服务器浏览器,以及RCON功能。
**World of Warcraft并不在其支持的游戏列表中。**在CurseForge app、WowUp和Wago App之间,插件管理在这里已经是一个被解决的问题,所以它在我们的排名中排得比那些完全没有像样工具的游戏更靠后。我们宁愿这样说,也不愿硬凑列表。
**该应用也仍处于非常早期的开发阶段。**它的README将其称为“部分测试过”,这个描述相当公允。如果你在其他游戏中使用它,并希望它支持WoW,提出来是让它排上日程最快的方法。
它是基于GPL-3.0协议的开源项目,地址在github.com/modcommunity/tmc-app。Bug、功能请求以及“请支持这个游戏”之类的诉求都可以提交到issue tracker,欢迎提交pull request,而添加一款游戏实际上只需要四个JSON文件而不需要写代码,所以为WoW贡献支持是完全可行的。
安装方法:
- Linux:一行命令,无需root权限,也不需要包管理器。
curl -fsSL https://raw.githubusercontent.com/modcommunity/tmc-app/main/scripts/install.sh | sh
- Windows:从[releases页面](https://github.com/modcommunity/tmc-app/releases)获取
setup.exe或setup.msi。也有便携版,不过它不会注册启动器条目或tmc://链接处理程序。 - macOS:从同一个releases页面获取
.dmg。
在游戏内启用插件
安装还不算完全搞定。
- 启动WoW并进入角色选择界面。
- 点击左下角的AddOns。
- 确保你的插件已被勾选。
- 进入游戏世界。
新安装的插件通常默认是启用的,但当你刚装的东西没有出现时,这是首先要检查的地方。
插件列表默认是按角色区分的,有一个All下拉菜单可以将你的选择应用到所有角色。当你想让某个角色装伤害统计插件,而不想在你的银行小号上也开启时,这很有用。
进入游戏后,/reload 可以在不重新登录的情况下重新加载界面,从而应用插件文件的更改。有些插件还会注册自己的斜杠命令,Details!用的是 /details。
设置与存档数据
插件设置并不与插件本体存放在一起,而是存放在 WTF 文件夹中,和你其余的界面配置放在一起:
World of Warcraft\_retail_\WTF\Account\<ACCOUNT>\SavedVariables
具体角色的数据则存放在下面按服务器和角色区分的文件夹中。
这带来两个有用的结果。更新或重装插件不会丢失你的配置,因为配置存放在完全不同的位置。而备份你的 WTF 文件夹就等于备份了你整个UI设置,这在大版本更新前非常值得做。
让插件在补丁后继续正常工作
每次WoW内容更新都会提升界面版本号,任何 .toc 里仍写着旧版本号的插件都会被标记为过期并禁用。
遇到这种情况时:
- **先更新你的插件。**大多数作者会在补丁发布后几小时内推送兼容版本,而插件管理器能让你一键完成更新。
- 如果某个插件还没更新,你可以在角色选择界面的AddOns界面里勾选Load out of date AddOns。这通常能正常工作,因为界面版本号只是一个声明。有时会持续报错,这种情况下就禁用它并等待更新。
- **大型资料片补丁会破坏更多东西。**预计需要几天而不是几小时,插件才能追上进度。
提示 - 如果补丁后你的UI出现问题,最快的排查方法是先禁用所有插件,确认默认UI正常,然后分批重新启用插件。
卸载
通过管理器卸载时,从插件列表中卸载即可,文件夹会被自动移除。
手动卸载时,从 Interface\AddOns 中删除插件的文件夹。
无论哪种方式,插件的存档变量都会保留在 WTF 中。这是故意的,这样重装后你的设置就能恢复。如果你想要真正的干净重装,也可以顺便删除 SavedVariables 文件夹中对应的 .lua 文件。
故障排查
**插件没有出现在AddOns列表中。**文件夹结构不对。检查是否存在嵌套文件夹,应该是 AddOns\Details\Details.toc 而不是 AddOns\Details-12.1\Details\Details.toc。
插件出现在列表中但呈灰色。它被禁用了,或者被标记为过期。勾选它,如果需要的话再勾选Load out of date AddOns。
**安装到了错误的flavor。**这非常常见。确认你的管理器指向的是 _retail_ 而不是Classic安装,反之亦然。
**补丁后到处都是Lua报错。**更新你的插件。如果某个插件仍然不听话,就禁用它,并查看它的CurseForge页面是否有兼容版本。
**插件加载了,但窗口不见了。**很多插件都有锁定或隐藏开关,有些还会记住一个屏幕外的位置。先检查插件自身的选项;对于Details!来说就是 /details。作为最后手段,可以删除它的存档变量文件来重置它。
**两个管理器互相冲突。**它们都在管理同一个文件夹。选一个保留,卸载另一个。
暴雪自带的界面设置被重置了。 检查一下你是否删除或移动了 WTF 文件夹里的内容。这个文件夹里既存放着暴雪的设置,也存放着插件数据。
结语
WoW 插件是这整套指南中安装起来最简单的一个。没有加载器,游戏本身就内置了管理界面,而像 CurseForge app 或 WowUp 这样的管理器,能把整个流程简化成搜索加点击安装。
真正会造成问题的其实只有两件事:版本分支(flavor)和补丁。确保你安装的是正确的客户端,并且要预留几分钟时间,在每次内容更新后更新一下插件。
对于那些支持度不如这款游戏好的游戏,我们自己的 TMC App 就是为此而生的。它是开源的,仍处于早期开发阶段,欢迎大家提供反馈。
另请参阅
- CurseForge 上的 World of Warcraft 插件
- Wago Addons
- WowUp
- Details! Damage Meter 的 GitHub 源码
- World of Warcraft 官方 Discord
- TMC App
我们会尽力让这篇指南保持最新,但 WoW 的补丁和插件管理器都在不断变化。如果这里的某项说明和你实际看到的情况不符,请提交反馈,或在本指南的 GitHub 仓库中提交一个 pull request。
如果你有任何问题,或者需要任何与模组相关的帮助,欢迎加入我们的 Discord 服务器!

