萨罗斯报告系统

萨罗斯报告系统

为你的Minecraft服务器带来一个快速、可配置的工单系统。玩家在游戏中用一条命令提交工单,你立即收到Discord通知。

杂项

Header

为你的 Minecraft 服务器带来快速、可配置的工单系统。玩家只需一条命令即可在游戏内提交工单,你会立即收到丰富的 Discord 通知。


亮点

  • 通过简单命令在游戏内提交工单:/ticket <category> <reason...>
  • 支持多词分类(例如 "Staff Request"、"Player Report")
  • 智能 Tab 补全,只提示你配置的分类
  • 通过丰富嵌入实现 Discord webhook 集成
    • 可配置的嵌入颜色(十六进制)
    • 嵌入中显示玩家头像/皮肤头像
    • 使用你的消息模板,布局简洁易读
  • 完全服务端配置(通用配置);无需客户端
  • 可自定义面向用户的消息(成功/帮助/错误),支持占位符

Description

  • 工单命令

    • /ticket <category> <reason...>
    • 支持多词分类
    • 单独输入 /ticket 会显示可配置的帮助/用法消息
  • Discord 嵌入

    • 工单通过 webhook 发布到 Discord 频道
    • 颜色可配置(十六进制,例如 #5865F2)
    • 玩家的 Minecraft 头像用作头像和嵌入缩略图
    • 保留模板中的所有占位符
  • 仅服务端配置

    • 所有内容都从服务器的通用配置中配置(无客户端依赖)
    • 无论客户端语言如何,所有玩家看到的消息都相同
  • 简洁的管理体验

    • Tab 补全只显示你配置中的分类
    • 无效分类或缺少原因会返回清晰、可配置的错误

Commands

  • 基础命令:/ticket
  • 用法:/ticket <category> <reason...>
  • 示例:
    • /ticket Bug Bees are escaping the hive enclosure
    • /ticket Staff Request Please review my claim
    • /ticket Player Report Steve griefed my base at spawn

注意事项

  • 多词分类会被正确解析;剩余部分作为原因
  • 建议只显示已配置的分类

Config

所有选项都位于 config/sarosdiscordwebhook-common.toml。关键设置:

  • 核心

    • tickets.enabled — 启用/禁用该系统
    • tickets.categories — 分类列表(字符串)。支持多词条目
    • tickets.discordWebhookUrl — 你的 Discord webhook URL
    • tickets.commandPermissionLevel — 所需的原版权限等级(0–4;0 = 所有人)
    • tickets.messageTemplate — 用作嵌入描述的文本
    • tickets.embedColorHex — 嵌入颜色(例如 #5865F2)
  • 高级

    • tickets.inputTimeoutSeconds — 未来多步骤流程的会话超时
    • tickets.hideReasonInChat — 用于未来的聊天捕获流程(在默认单行命令中未使用)
  • 消息(全部为服务端;在显示的位置支持占位符)

    • tickets.messages.successSubmitted — 成功时显示
    • 占位符:{category}、{reason}
    • tickets.messages.errorInvalidCategory — 无效分类
    • tickets.messages.errorMissingReason — 缺少原因
    • tickets.messages.errorWebhookNotConfigured — 缺少 webhook
    • tickets.messages.errorOnlyPlayers — 控制台/非玩家使用
    • tickets.messages.usageHelp — 单独输入 /ticket 时显示
    • 占位符:{categories}(逗号分隔列表)
    • tickets.messages.errorNoCategories — 如果分类列表为空
    • tickets.messages.errorSendFailed — Discord 发布失败

tickets.messageTemplate 中可用的占位符(用于 Discord 嵌入内部):

  • {player}、{uuid}、{category}、{reason}、{dimension}、{x}、{y}、{z}

Discord

常见问题与提示

  • 没有内容发布到 Discord

    • 确保 tickets.discordWebhookUrl 已设置且有效
    • 检查 tickets.enabled = true
  • 玩家无法使用 /ticket

    • 降低 tickets.commandPermissionLevel(0 允许所有人使用)
  • 我想要不同的嵌入外观

    • 自定义 tickets.messageTemplate 和 tickets.embedColorHex
  • 我的分类包含空格

    • 已支持!命令会匹配输入开头最长的已配置分类

Bisect Hosting

项目支持与使用

主机:为了获得最佳性能,我推荐使用横幅中链接的 BisectHosting。

整合包:你可以自由地将我的作品包含在任何整合包中。请确保通过提供此项目页面的链接来给予适当的署名。