
HyTickets
HyTickets是一款Hytale服务器插件,允许玩家开启、查看和关闭支持工单,同时管理员可以管理所有工单、回复、分配并传送至报告地点。
查看大图HyTickets
HyTickets 是一个面向 Hytale 服务器的完整游戏内工单系统,围绕以清晰 UI 为核心的工作流程设计(命令作为完整备选方案)。
玩家可以创建工单、浏览自己的历史记录、回复工作人员,并在问题解决后关闭工单。工作人员可以查看所有工单、分配所有权、在游戏中回复、一键接管工单,并直接传送至报告地点。
每个工单在创建时都会记录玩家的世界和坐标,使问题更容易复现和解决。
存储方式灵活:可在简单的 JSON 平面文件上运行,或为大型服务器使用 MySQL。如果从平面文件切换至 MySQL,HyTickets 可自动迁移现有工单数据。
核心亮点
- UI 优先体验:玩家和工作人员的主要界面
- 完整游戏内工作流程:创建、回复、查看、分配、关闭
- 传送至问题地点:跳转到保存的世界/坐标
- 灵活存储:JSON 平面文件或 MySQL
- 自动迁移:切换存储类型时从平面文件迁移至 MySQL
- 可选的 Discord 集成:每个工单一个线程、按钮、斜杠命令和账户关联
功能特性
玩家工作流程
- 通过消息创建工单
- 查看已开启/已关闭的工单(并可查看详细信息)
- 在自己的工单上回复工作人员
- 完成后关闭自己的工单
工作人员工作流程
- 列出所有工单(可选择按状态过滤)
- 将工单分配给自己(或在 UI 中点击接管工单)
- 在服务器内回复玩家
- 传送至工单保存的世界/坐标
- 过滤视图:已开启 / 全部 / 指派给我 / 已关闭 / 未分配
通知(仅在线时)
- 新工单创建时通知工作人员
- 工作人员回复时通知工单所有者
- 玩家回复已分配的工单时通知分配者
- 工单关闭时通知工单所有者
存储
FLATFILE_JSON(简单,零配置)MYSQL(推荐用于大规模服务器)- 更改存储类型时自动从平面文件迁移至 MySQL
UI(可选但推荐)
- 整洁的游戏内工单浏览器
- 包含首条消息预览的工单列表
- 包含完整对话和元数据的工单详情视图
- 工作人员专属操作:传送、接管工单、回复、关闭
- 工作人员专属的过滤按钮,可循环切换视图
Discord 集成(可选)
- 每个工单一个线程:在配置的频道中,每个工单对应一个内嵌消息和一个线程
- 内嵌消息上的按钮:接管 / 回复 / 关闭
- 斜杠命令:
/ticket view <id>和/ticket list [status] [assigned] - 账户关联:游戏内
/hytickets link+ Discord 中/link <code> - 角色限制:仅允许的角色 ID 可使用按钮/命令
- 工单变更时自动更新内嵌消息和线程事件行
- 切换存储类型时,Discord 映射自动从平面文件迁移至 MySQL
配置 (config.json)
核心配置
StorageType:FLATFILE_JSON或MYSQLFlatfilePath:JSON 存储的文件路径UiEnabled:true/falseTranslationsFile:翻译文件位置(相对路径)
MySQL
MySql.HostMySql.PortMySql.DatabaseMySql.UsernameMySql.PasswordMySql.UseSslMySql.TablePrefix
Discord(可选)
Discord.Enabled:启用 Discord 模块Discord.BotToken:机器人令牌Discord.GuildId:注册斜杠命令的服务器 IDDiscord.TicketChannelId:工单内嵌消息/线程的频道 IDDiscord.AllowedRoleIds:允许使用按钮/命令的角色 ID(用逗号或空格分隔)Discord.StorageType:FLATFILE_JSON或MYSQLDiscord.FlatfilePath:Discord 映射的 JSON 文件Discord.MySql.*:Discord 存储的 MySQL 设置Discord.LinkCodeExpiryMinutes:关联码过期时间Discord.EmbedColor:十六进制颜色(例如2B90D9)Discord.EmbedFooter:页脚文本Discord.EmbedIncludeLocation:在内嵌消息中包含世界/坐标
示例配置(完整)
{
"StorageType": "FLATFILE_JSON",
"FlatfilePath": "tickets.json",
"MySql": {
"Host": "127.0.0.1",
"Port": 3306,
"Database": "hytickets",
"Username": "root",
"Password": "password",
"UseSsl": false,
"TablePrefix": "hyt_"
},
"UiEnabled": true,
"Discord": {
"Enabled": false,
"BotToken": "",
"GuildId": "",
"TicketChannelId": "",
"AllowedRoleIds": "",
"StorageType": "FLATFILE_JSON",
"FlatfilePath": "discord.json",
"MySql": {
"Host": "127.0.0.1",
"Port": 3306,
"Database": "hytickets",
"Username": "root",
"Password": "password",
"UseSsl": false,
"TablePrefix": "hyt_"
},
"LinkCodeExpiryMinutes": 10,
"UseHyDiscordXLinking": false,
"EmbedColor": "2B90D9",
"EmbedFooter": "HyTickets",
"EmbedIncludeLocation": true
}
}
集成
可选的 HyDiscordX 集成将禁用 HyTickets 中的 link 功能,改为使用 HyDiscordX 中的已关联账户。要启用,请在配置中将 UseHyDiscordXLinking 设置为 true。
命令
玩家命令
权限: hytickets.command.basic
| 命令 | 描述 |
|---|---|
/hytickets |
打开游戏内工单 UI(推荐)。 |
/hytickets create [message...] |
使用完整描述创建新工单。 |
/hytickets view [id] |
查看您的工单,或按 ID 查看特定工单。 |
/hytickets reply [id] [message...] |
回复您自己的工单。 |
/hytickets close [id] |
关闭您的一个工单。 |
/hytickets link |
为您的账户生成 Discord 关联码。 |
工作人员命令
权限: hytickets.command.staff
| 命令 | 描述 |
|---|---|
/hytickets list [status] |
列出所有工单(可选择按状态过滤)。 |
/hytickets assign [id] |
将工单分配给自己。 |
/hytickets reply [id] [message...] |
回复任何工单。 |
/hytickets tp [id] |
传送至工单保存的位置。 |
Discord 命令(可选)
需要允许的角色 + 已关联的账户
| 命令 | 描述 |
|---|---|
/link [code] |
将您的 Discord 账户关联到 Hytale。 |
/ticket view [id] |
查看工单详情和线程链接。 |
/ticket list [status=open/closed] [assigned=me/any] |
使用过滤器列出工单。 |
本地化
首次运行时,会在插件数据目录中创建一个 translations.json 文件。社区翻译仓库可在此处找到,欢迎贡献:https://github.com/winglessraven/HyTicketsTranslations
编辑它以翻译 UI 标签、按钮、Discord 消息和游戏内聊天文本。可使用的变量:
{count}{filter}{page}{pages}{id}{status}{preview}{assigned}{name}{world}{coords}{role}{author}{content}{owner}{updated}{message}{thread}{minutes}{version}{location}
Discord 设置说明
- 机器人需要在工单频道拥有查看频道、发送消息、创建公开线程和在线程中发送消息的权限。
- 所有 Discord 按钮/命令操作都需要关联账户。在游戏中使用
/hytickets link,然后在 Discord 中使用/link <code>。注意:如果启用了 HyDiscordX 集成,则将使用其中的关联账户,且此命令将被禁用。
正在加载版本记录…



正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。