Cactbot 是一个 ACT 悬浮窗,为 Final Fantasy XIV 提供战斗辅助。该项目依赖于 OverlayPlugin,并且作为 Advanced Combat Tracker 的插件安装。
Cactbot 提供以下悬浮窗:
安装 4.6.1 版本及以上的 .NET Framework。
你必须启用最终幻想 14 的 DirectX 11 模式。
你需要安装 64 位版本的 Advanced Combat Tracker。
如果你刚刚安装了 ACT,你会看到一个启动向导。否则,你需要通过点击 Options
,然后点击 Show Startup Wizard
打开启动向导。
在启动向导中,选择 FFXIV Parsing Plugin
,然后单击 Download/Enable Plugin
按钮。这将把解析插件下载到 %APPDATA%\Advanced Combat Tracker\Plugins\FFXIV_ACT_Plugin.dll
,并在插件列表中启用它。
其他 FFXIV 插件指南:
此时,如果选择 插件
标签,然后切换至 插件列表
,你的插件列表中应当如下所示:
单击 Get Plugins
可以打开 ACT 插件安装程序。
选择 Overlay Plugin
,然后单击 Download and Enable
按钮。
这会将 OverlayPlugin 下载到 %APPDATA%\Advanced Combat Tracker\Plugins\OverlayPlugin
文件夹中,并自动在插件列表中启用 OverlayPlugin.dll
。
注意,你必须使用 当前最新 版本的 OverlayPlugin,而不是原本 RainbowMage 的版本或 hibiyasleep 的 fork 版本。
同样是在 Plugins
标签中,点开 Plugin Listing
标签,然后选择 Get Plugins
。
选择 Cactbot
,然后单击 Download and Enable
按钮。
这会将 Cactbot 下载到 %APPDATA%\Advanced Combat Tracker\Plugins\cactbot\cactbot
文件夹中,并在插件列表中启用 CactbotOverlay.dll
。
由于 Cactbot 的依赖关系,它需要在 FFXIV 解析插件和 OverlayPlugin 之后加载。正确的顺序应该是:
最后,重启 ACT。
下面的例子展示了如何设置 raidboss 悬浮窗模块。设置其他的 Cactbot 悬浮窗的操作也类似这样。
Plugins
标签页,然后跳转到其中的 OverlayPlugin.dll
标签页。单击 “新建” 按钮,然后在 “预设” 列表中选择 Cactbot Raidboss
。
此时,你应该能看到屏幕上会出现测试用 UI。这是 Cactbot 提供的默认测试用 UI,一个较大的虚线红色边框,以及蓝色的背景,可以帮助你在屏幕上调整悬浮窗的位置大小等。当你在悬浮窗的配置面板中锁定该悬浮窗时,这些测试用 UI 都将消失。在你完成了调整悬浮窗大小和位置之后,应该始终保持锁定悬浮窗。
你可以输入任意的名字作为悬浮窗的名称,例如 raidbossy
。
单击 确定
按钮将其添加为悬浮窗。则它将会出现在 Plugins
-> OverlayPlugin.dll
标签页的悬浮窗列表中。
将悬浮窗拖放到所需的位置。
在 Raidboss
悬浮窗的 通用
选项卡中,勾选 锁定悬浮窗
和 鼠标穿透
复选框。一旦悬浮窗被锁定,测试用的进度条,文本,红色虚线边框,以及蓝色阴影背景都将会消失。
如果要测试 Raidboss 插件,请传送到盛夏农庄,然后在聊天框输入 /countdown 5
并回车。
请先遵循上述的步骤安装好 Cactbot。有两种方式可以安装依赖:通过脚本 或 手动。
curl
(用于下载依赖项)node --import node --loader=ts-node/esm ./util/fetch_deps.ts
脚本Advanced Combat Tracker.exe
到 cactbot/plugin/ThirdParty/ACT/
下SDK文件夹
和 FFXIV_ACT_Plugin.dll
到 cactbot/plugin/ThirdParty/FFXIV_ACT/
下libs文件夹
和 OverlayPlugin.dll
到 cactbot/plugin/ThirdParty/OverlayPlugin/
下该文件夹应如下所示(请注意,将来文件结构可能会随着更新而更改):
ThirdParty
|- ACT
| |- Advanced Combat Tracker.exe
|- FFXIV_ACT
| |- SDK
| | |- FFXIV_ACT_Plugin.Common.dll
| | |- FFXIV_ACT_Plugin.Config.dll
| | |- FFXIV_ACT_Plugin.LogFile.dll
| | |- FFXIV_ACT_Plugin.Memory.dll
| | |- FFXIV_ACT_Plugin.Network.dll
| | |- FFXIV_ACT_Plugin.Overlay.dll
| | |- FFXIV_ACT_Plugin.Parse.dll
| | |- FFXIV_ACT_Plugin.Resource.dll
| |- FFXIV_ACT_Plugin.dll
|- OverlayPlugin
|- libs
| |- HtmlRenderer.dll
| |- Markdig.Signed.dll
| |- Newtonsoft.Json.dll
| |- OverlayPlugin.Common.dll
| |- OverlayPlugin.Core.dll
| |- OverlayPlugin.Updater.dll
| |- SharpCompress.dll
| |- System.ValueTuple.dll
| |- websocket-sharp.dll
|- OverlayPlugin.dll
Browse
按钮,然后导航至构建完成的 bin/x64/Release/CactbotOverlay.dll 文件。然后单击 Add/Enable Plugin
按钮。如果你不是 Cactbot 开发人员,并且尝试修改 Cactbot,添加自己的个人触发器。你不应直接修改本地的 Cactbot 文件,而应该参考 自定义文档 进行自定义。
安装 NPM 并启动 Webpack,请按照下列步骤操作:
npm install
。npm run build
或 npm start
。Cactbot 理应在 Node LTS 版本运行,若你在 LTS 上遇到问题,请提出一个 issue。
关于使用 Webpack 的更多信息,请参见 贡献文档 。
Cactbot 的所有 UI 模块都包含在 ui/ 文件夹中。如果你按照上述说明安装了 Cactbot,则很有可能是 %APPDATA%\Advanced Combat Tracker\Plugins\cactbot\cactbot\ui\
。
每个 Cactbot UI 模块都应当作为单独的悬浮窗添加。有关配置的更多信息,请参见 添加悬浮窗模块 部分。
要使用该悬浮窗,定位到 Cactbot 下面的 ui/raidboss/raidboss.html 或使用 Cactbot Raidboss
预设。
此悬浮窗提供预知战斗事件的时间轴,以及文本和音频提示,以帮助提高团队对 Raid 的意识。这些文字和声音警报一般基于战斗时间轴,或是来自游戏中发生的日志消息。简单地说,这是一个类似于 ACT 的 “自定义触发器” 的功能。该模块被设计为类似于《魔兽世界》的 BigWigs Bossmods 插件的外观和感觉。
此页面 列出了当前 Cactbot 中支持的副本。我们会持续添加更多支持 (随时欢迎贡献代码!) 尽管许多旧副本仍未支持。
战斗时间轴原本是设计为用于 ACT 时间轴插件的文件,不过增加了一些扩展语法。这里是原插件的 文档。
这里有三个等级的警报提示,重要性从低到高分别为:info(信息)
、alert(警告)
和 alarm(警报)
。文本信息只会有这三种等级,等级越高,越重要,则文字会越大,颜色也会越醒目。如果你更喜欢文本到语音 (TTS),你也可以配置成语音提示。
在 ui/raidboss/data 文件夹下存放了定义了文本显示和声音提示的时间轴和触发器等,时间轴文件拥有 .txt
扩展名,而触发器文件则为 .ts
扩展名。
在下方的截图中,高亮的是 Raidboss 模块,其中时间轴用红色圆圈圈出,文本警报用黄色圆圈圈出,可见的是 警告
等级的文字提示。
如果在编写触发器或时间轴,并要对其进行测试,你可以使用此处的 Raidboss 模拟器:ui/raidboss/raidemulator.html。
但是,目前只能在浏览器中加载它,不支持加载为悬浮窗。该模拟器在最新版本的 Chrome 中可以完美运行,理论上在其他浏览器中也可以运行,但是并没有测试过。
如果你想让模拟器使用 ACT 的设置和用户触发器,你可以通过以下操作步骤启用 OverlayPlugin WS 服务器:
如果你正在为 Cactbot 仓库开发触发器,你可以通过 npm run start
启动本地开发服务器,并在Chrome中访问 http://127.0.0.1:8080/ui/raidboss/raidemulator.html?OVERLAY_WS=ws://127.0.0.1:10501/ws
。
如果你正在开发用户自定义触发器,你可以在 Chrome 中访问 https://overlayplugin.github.io/cactbot/ui/raidboss/raidemulator.html?OVERLAY_WS=ws://127.0.0.1:10501/ws
。
如果你正在尝试复现一个问题,你可以在 Chrome 中访问 https://overlayplugin.github.io/cactbot/ui/raidboss/raidemulator.html
。在这种情况下,你不需要运行WS服务器。
成功加载网页后,继续按照以下说明使用模拟器。
Load Encounter
。如果模拟器无法正常工作,请检查控制台中是否显示了错误日志。
要使用该悬浮窗,定位到 Cactbot 下面的 ui/oopsyraidsy/oopsyraidsy.html 或使用 Cactbot OopsyRaidsy
预设。
此悬浮窗提供错误追踪和死亡报告。Oopsy Raidsy 模块可以检查战斗中出了什么问题,以及队友死亡的原因,以减少攻略副本的时间。在战斗中,仅显示一定数量的错误(以避免混乱),但脱战后可以显示完整的可滚动列表。
当某人死亡时,TA 遭受伤害的最后一个伤害事件会记录在日志中。例如,当日志显示:”:skull: Poutine: Iron Chariot (82173/23703)”,这意味着 Poutine 最有可能死于 Iron Chariot 这个技能,造成了 82173 伤害,且当时他具有 23703 的血量。血量值由于服务器更新周期的存在可能有数秒的延迟。短时间内被多个伤害技能致死的情况下,具体致死的是哪一个可能不准确。
当错误本身可以避免时,oopsy 会将其记录为警告(:warning:)和失败(:no_entry_sign:)消息,并说明出现了什么问题。
ui/oopsyraidsy/data 文件夹中为每个副本指定了错误触发器。
点击 Oopsy 的每一行即可复制该行的内容到剪贴板中。(你可能需要先解除 OverlayPlugin 选项中的 允许鼠标穿透
复选框。)
要使用该模块,定位到 Cactbot 下面的 ui/raidboss/jobs.html 或使用 Cactbot Jobs
预设。
该模块分为三个部分:悬浮窗顶部中间的资源区、顶部右方的团辅区、以及底部的监控区。
通过用户面板设置可以更改部分外观和行为,例如只显示团辅区,以及缩小资源区和监控区之间的空隙等。
但 jobs 模块的可自定义程度比较低,如冷却提示阈值、各界面元素顺序等暂不支持调整。
在此截图中,以赤魔法师的 jobs 模块为例。上半是游戏内的 UI 显示、下半是 jobs 模块的显示。体力条、魔力条、赤魔法师的黑 / 白魔元信息位于中间的紫色框内,其右侧的黄色框内是团辅监控图标。底部红色框内的 4 个方框分别是赤飞石预备持续时间、赤火炎预备持续时间、飞刺冷却时间和六分反击冷却时间。
要使用该悬浮窗,定位到 Cactbot 下面的 ui/raidboss/eureka.html 或使用 Cactbot Eureka
预设。
该悬浮窗会自动追踪 NM 或 CE 的出现和死亡,以及博兹雅地图上的冲突战。还会显示特殊天气 / 夜晚计时器以及粘贴到聊天中的优雷卡追踪器链接。聊天中的所有坐标信息也都会临时显示在地图上。
当前,该悬浮窗不会直接读取优雷卡追踪器的信息。但如果你点击优雷卡追踪器左侧红色的 “复制已杀死的 NM” 按钮来复制当前已死 NM 的列表,则可以将其粘贴到游戏中,例如/echo 冷却中的NM: 蝎子 (7m) → 魔界花 (24m) → 独眼 (54m)
,以便该模块从此列表自动同步数据。
如果你看不到表情符号,请确保已安装此 Windows 更新。
要使用该悬浮窗,定位到 Cactbot 下面的 ui/radar/radar.html 或使用 Cactbot Radar
预设。
该悬浮窗可让你发现附近的狩猎怪(S 级,A 级等)。当一个狩猎怪出现时,该模块会显示一个箭头(基于角色面向)指向该狩猎怪并会显示你与该狩猎怪之间的距离。
控制面板中的选项可以设置显示哪位玩家开了狩猎怪,还可以配置 Radar 模块的显示方式。你还可以为不同等级的狩猎怪设置自定义选项(例如用声音提示 S 级怪,但是忽略 B 级怪),或为你想监控的任何目标名称添加自定义触发器。
有关更多选项,请参见 cactbot/user/radar-example.js
文件。
Cactbot 可以与为 OverlayPlugin 的数据统计功能设计的任何 DPS 统计悬浮窗共同使用,并可以选择通过 Cactbot 附加的 JavaScript API 扩展更多功能。Cactbot 还可以在团灭时自动停止统计,因此你可以将 ACT 的战斗时间配置为无限。
xephero DPS 统计悬浮窗采用与 ACT 原生一致的统计模型。
rdmty DPS 统计悬浮窗采用与 ACT 原生一致的统计模型,并采用了 fflogs 的颜色策略。
这个小悬浮窗可以显示你在高难度副本中当前的重试次数。此功能是为主播或经常录屏的玩家准备的。通过这个数字,你可以轻松浏览视频并查找到特定的某场战斗来进行检阅。
你可以通过在游戏聊天窗口中键入 /echo pullcounter reset
来重置当前副本 / 区域的重试计数。你也可以直接在 %APPDATA%\Advanced Combat Tracker\Config\RainbowMage.OverlayPlugin.config.json
文件中修改该计数。
要使用该悬浮窗,定位到 Cactbot 下面的 ui/test/test.html 或使用 Cactbot Test
预设。
该悬浮窗仅用于 Cactbot 所用变量的可视化测试,并不适合在正常游戏时使用。该模块可用来测试所有数据的获取是否正常、模块能否按照预期正常工作,或用来调试悬浮窗的错误。
您可以在 此链接 中查看 Cactbot 的常见问题解答。
大部分的 Cactbot 配置可通过 ACT 内的 Cactbot 控制面板来完成。
你可以在插件 -> OverlayPlugin.dll-> Cactbot 找到 Cactbot 的控制面板。
如果你想使用 TTS 播报 RaidBoss 模块的警报,你可以将 “默认警报提示信息输出方式” 选项修改为 “只使用 TTS” 或 “文字显示与 TTS”。你还可以对任意触发器进行特殊设置。
如果你出于某些原因(???),不想听到 Cactbot 的准备确认提示音,你也可以在此控制面板中禁用它。请转到 Raidboss -> 通用触发器 -> General-> General Ready Check,并将其设置为 禁用
。
此处的选项会存储于 %APPDATA%\Advanced Combat Tracker\Config\RainbowMage.OverlayPlugin.config.json
文件中。不建议直接编辑该文件,因为它必须是标准的 JSON,如果该文件被错误地修改,ACT 可能无法启动。
强烈建议你通过此控制面板而不是用户文件来完成大部分的配置。cactbot/user/
中的文件功能更加强大并且可以覆盖控制面板中的任何配置。然而,cactbot/user/
内的文件会静默覆盖控制面板的配置,这导致行为与控制面板显示不一致而造成困惑。
有关自定义 JavaScript 和 CSS 文件的更多详细信息,请参见本文档。
Cactbot 已在当前版本的国际服(英语、德语、法语、日语)、中国服以及韩国服经过测试并可以正常工作。某些翻译工作仍在进行中。点击 Cactbot 覆盖率页面 获取更多信息。
Cactbot 基于 Apache License, Version 2.0 开放源代码。
FINAL FANTASY 是史克威尔艾尼克斯控股公司 (株式会社スクウェア・エニックス・ホールディングス,Square Enix Holdings Co., Ltd.) 的注册商标。
《最终幻想》艺术作品和图标基于 「FINAL FANTASY® XIV 素材使用许可」(英文:FINAL FANTASY® XIV Materials Usage License 日文:ファイナルファンタジーXIV 著作物利用条件),以非商业方式二次使用。
有关其他内嵌项目的详细信息,请参见 LICENSE 文件。