神经链接

神经链接

将你的Minecraft服务器事件发送到Discord webhooks——无需机器人,完全可在游戏内配置。

🧠 NerveLink

将你的 Minecraft 服务器连接到 Discord — 无需机器人。

NerveLink 会监听服务器事件(玩家加入、死亡、击杀、聊天、进度、命令等等),并以精美的嵌入式消息(embeds)形式直接发送到任意 Discord Webhook。所有配置都可以在游戏内完成,无需编辑任何文件。

✨ 功能特性

  • 无需机器人 — 只需创建一个 Discord Webhook 并粘贴其 URL 即可完成。
  • 16 个以上内置事件:加入/离开、死亡、进度、命令、聊天、破坏/放置方块、击杀生物、击杀 Boss、切换维度、升级、拾取物品、重生、服务器启动/停止。
  • 全面的事件检测 — NerveLink 监听 Forge 事件总线,可以捕获来自任何其他已安装模组的事件(龙、法术、机器...),无需那些模组编写任何代码。
  • 精美的 Discord 嵌入式消息 — 默认提供带有标题、消息和时间戳的彩色卡片。
  • 每个触发器完全可定制:消息、标题、颜色、冷却时间、条件、用户名和头像。
  • 完全通过聊天进行配置 — 基本使用无需编辑 JSON 文件。
  • 多语言默认配置 — 消息会根据你的游戏语言(英语/西班牙语)生成。
  • 自动重载 — 编辑配置文件后会自动重新加载。
  • 速率限制安全 — Webhook 消息通过队列发送,Discord 不会限制你的频率。
  • 面向模组开发者的公共 API(NerveLinkAPI.fire())。

🚀 快速开始

  1. 在 Discord 中:服务器设置 → 集成 → Webhook → 新建 Webhook → 复制 URL。
  2. 使用 Forge 1.20.1 启动 Minecraft 并加入世界。NerveLink 会自动在 config/nervelink/triggers.json 创建配置文件。
  3. 运行 /nervelink seturl <你的-webhook-url> 将所有触发器的 Webhook 地址一次性设置好。
  4. 完成!加入/离开、死亡、击杀生物或获得进度 —— 你都会在 Discord 频道中看到。

💬 游戏内命令

命令 作用
/nervelink seturl <url> 为所有触发器设置 Webhook URL
/nervelink add <事件> [消息] 添加一个触发器(可附带自定义消息)
/nervelink remove <事件> 移除一个触发器
/nervelink enable/disable <事件> 启用/禁用某个触发器
/nervelink list 列出当前激活的触发器
/nervelink events 列出所有可用事件
/nervelink test 向所有 Webhook 发送测试消息
/nervelink reload 手动重新加载配置

⚙️ 配置

高级用户可编辑 config/nervelink/triggers.json。每个触发器支持:

字段 描述 示例
message 包含占位符的消息 "💀 {player} 在 {coords} 死亡"
format embed、discord 或 text "embed"
title 嵌入式消息的标题 "死亡"
color 嵌入式消息的颜色(十进制) 15548997
cooldown 每 X 秒最多发送 1 条提醒 10
if 触发的条件 "dimension == minecraft:the_nether"
username / avatar_url Webhook 名称/头像 "NerveLink"
enabled 启用/禁用 true

占位符:{player}、{reason}、{advancement}、{command}、{block}、{boss}、{mob}、{entity}、{item}、{message}、{level}、{to}、{from}、{world}、{dimension}、{coords}、{x}、{y}、{z}、{time}、{health}。

条件支持 ==、!=、contains、>、<、>=、<= — 例如 "if": "entity == minecraft:zombie" 或 "if": "level >= 5"。

🪄 来自其他模组的事件

NerveLink 能捕捉到 Forge 事件总线上的所有内容。在配置中设置 "debug": true,玩一段时间,然后查看 config/nervelink/detected_events.txt — 你会找到其他模组触发的事件类名。将其中任意一个复制为触发器,即可为该事件创建 Webhook,无需任何代码。

👨‍💻 面向模组开发者

NerveLinkAPI.fire("my_event", Map.of("player", name, "message", text));

任何带有 "event": "my_event" 的触发器都会捕获该事件。你的模组在编译时不需要任何依赖 — 只需将 NerveLink 作为软依赖即可。

❓ 常见问题

  • 它能在服务器上工作吗?可以 — 客户端和服务器事件都支持,在专用服务器上运行效果也很好。
  • 我需要机器人令牌吗?不需要。只需要一个 Discord Webhook URL。
  • 我能发送到 Slack 或通用 Webhook 吗?可以 — 使用 "format": "text" 即可。
  • 我的 Webhook URL 安全吗?请像对待密码一样对待它 — 任何拥有该 URL 的人都可以向该频道发送消息。

📄 许可证

MIT — 可自由使用、修改并包含在你的整合包中。