跳到主要内容

游戏与 API

描述

用户指南

把各类游戏的 API 接入您的服务器:成员绑定自己的账号、查看战绩、关注游戏服务器状态,并在排行榜上一较高下。开箱即用地内置 23 款游戏,您也可以自行添加更多。

功能介绍​

  • 让每位成员将自己的游戏账号绑定到服务器。
  • 按需显示玩家战绩。
  • 在一条持续更新的消息中发布某款游戏的服务器状态,还可以重命名一个语音计数频道。
  • 自动将某款游戏的新闻推送到指定频道。
  • 生成已绑定账号成员的排行榜。
  • 对部分游戏的数据库提供查询功能。
  • 构建器让您无需编写代码即可接入任何返回 JSON 的 API。

快速开始(管理员)​

  1. 打开仪表板,进入游戏与 API 模块的目录选项卡。
  2. 找到您的游戏并点击启用。该游戏的设置会随即打开。
  3. 如果游戏标注了"需要密钥",请在API 密钥卡片中粘贴您的密钥。若显示"TennoCore 密钥",则表示已提供密钥,您无需操作。
  4. 按需启用各项自动化:新闻、状态、排行榜——每一项都需要指定频道和间隔时间。
  5. 用测试按钮确认 API 有响应,然后点击保存。
  6. 向成员公布 /game list:他们可以在其中查看可用的游戏,并用 /game link 绑定账号。

命令​

所有命令对全体成员开放,涉及账号绑定时会以私密方式回复。

命令描述
/game list列出服务器上已启用的游戏,以及各自支持的功能。
/game link打开一个表单,将您的账号绑定到所选游戏。
/game unlink解除您在该游戏上的账号绑定。
/game stats显示某位成员的战绩(默认为您自己)。
/game status显示该游戏服务器的状态。
/game lookup在游戏数据库中查询某个条目。
/game leaderboard对已绑定账号的服务器成员进行排名。

机器人内置的游戏​

内置 23 个连接器。每个连接器提供一项或多项能力:玩家战绩、服务器状态、新闻、查询。

游戏能力API 密钥
Apex Legends玩家战绩需要
Brawl Stars玩家战绩需要
Chess.com玩家战绩不需要
Clash Royale玩家战绩需要
Destiny 2玩家战绩需要
Epic Games – 免费游戏新闻不需要
Fortnite玩家战绩需要
Free-To-Game – F2P 新作新闻、查询不需要
Genshin Impact玩家战绩不需要
Hypixel (Minecraft)玩家战绩需要
League of Legends玩家战绩、服务器状态需要
Lichess玩家战绩不需要
Minecraft – 玩家玩家战绩不需要
Minecraft – 服务器服务器状态不需要
osu!玩家战绩需要
Pokédex (PokéAPI)查询不需要
RAWG – 游戏数据库查询、新闻需要
Roblox玩家战绩不需要
Status(通用 Statuspage)服务器状态不需要
Steam – 游戏动态新闻不需要
Steam – 个人资料玩家战绩需要
Valorant玩家战绩需要
Warframe – 世界状态服务器状态、新闻不需要

在仪表板中设置​

本模块由五个选项卡组成。

  • 目录——所有可用游戏,可按分类或名称筛选。每张卡片会标示该游戏的能力以及是否需要密钥。提供启用、复制(基于现有连接器创建新的)按钮,以及指向该 API 文档的链接。
  • 我的游戏——本服务器已启用的游戏:状态、已开启的自动化、绑定账号数量、密钥来源、最近一次遇到的故障。配置按钮会打开设置项:
    • 通用:游戏处于启用或暂停状态,以及成员绑定账号后自动授予的角色。
    • API 密钥:您的密钥,加密存储且永不回显。留空表示不做修改。
    • 连接器参数:该游戏专有的设置(Steam 应用 ID、大区等)。
    • 新闻:频道、间隔(5 至 1440 分钟,默认 30)以及可选的角色提及。
    • 状态:面板所在频道、间隔(默认 10 分钟),以及语音计数频道及其名称模板。
    • 排行榜:频道、间隔(默认 60 分钟)以及所依据统计项的提示。
    • 每项自动化都配有立即发布按钮。
  • 构建器——创建自定义连接器:基本信息、鉴权方式、需要成员填写的字段、调用步骤,以及所生成消息的描述。测试台会发起一次真实调用并展示响应的结构树:点击某个值即可复制其路径,用于显示配置。
  • 玩家——服务器所有已绑定的账号,可以为某位成员解除绑定。
  • 日志——最近 50 次对外 API 调用,含耗时、结果和错误详情。

须知事项​

  • 游戏必须先启用才会存在。 命令的自动补全只会列出已启用的游戏,且仅列出与所用命令兼容的游戏:只提供新闻的游戏不会出现在 /game stats 中。
  • 绑定会立即校验。 /game link 会发起一次真实的 API 调用:若找不到该账号,则不会保存任何内容,成员会收到游戏返回的错误。因此已绑定的账号一定是有效的账号。
  • 绑定表单最多 5 个字段,这是 Discord 的限制。
  • API 密钥采用混合模式:您的密钥始终优先;若未填写,则在存在时使用 TennoCore 的全局密钥。填写自己的密钥可获得独立配额。已保存的密钥永远不会在界面中回显。
  • 配额:每个连接器都定义了自己的调用上限(通常为每服务器每分钟 30 次)。超出后机器人会提示需要等待一分钟。响应会缓存几分钟,从而吸收重复请求。
  • 排行榜:最多查询 40 个已绑定账号,显示前 20 名。调用会刻意分散,以免耗尽服务器的配额——若绑定的成员很多,请设置较长的间隔。若连接器未定义所依据的统计项,排行榜会保持为空。
  • 新闻推送的首次运行:不会发布任何内容,机器人只是记录已有的历史条目。这是刻意设计,以免刷屏。从下一次运行开始才会发布。
  • 语音计数频道:Discord 只允许每 10 分钟重命名 2 次。间隔设置过短会被 Discord 静默忽略。
  • /game list 最多显示 25 款游戏,自动补全最多 25 条建议。
  • 移除某款游戏会清除其设置和新闻历史,但会保留成员已绑定的账号。
  • 本模块的消息采用 Discord 的新版显示格式:每个字段各占一行,不做分栏排布。
  • 自定义连接器:所调用的地址必须指向公开的 API。出于安全考虑,任何内网或私有地址都会被拒绝。
  • 调用日志保留 7 天。
  • 本模块位于仪表板的"开发中"分类:其界面仍可能变化。