FiveM 服务器的 Discord 机器人:连接实际能带给你什么
同步身份组、检查白名单、从 Discord 运行服务器命令。哪些值得用,哪些最好别碰,以及设置时需要注意什么。

几乎每个 FiveM 服务器旁边都有一个 Discord 服务器。通常两者各自独立、互不相连:身份组在 Discord 中分配,然后在游戏里再手动分配一遍;有人在一个文本文件里维护白名单;要运行服务器命令,就得有服务器面板的访问权限。
把两者连接起来,恰好能解决这三件事。它解决不了的,见下文。
你首先需要什么
连接通过你 FiveM 服务器上的一个脚本,外加一个脚本用来向我们表明身份的密钥来实现。两者缺一,什么都不会发生,包括那些你意想不到的功能,比如游戏内通知。
生成密钥时有一件事真的很重要:你只能看到它一次。 直接把它复制到 config.lua 中。关掉窗口就意味着要生成一个新的并填进去,只要你知道这一点就无伤大雅,但如果你为了找它花上十分钟就会很烦人。
完整的分步设置说明见 FiveM 文档。
同步身份组
大多数人开始使用的就是这个功能。你创建映射,每条映射把一个 Discord 身份组对应到一个 FiveM 组,玩家连接时就会获得对应的组。没有匹配任何映射的人会进入 user。
这里有一个细节决定了是成功还是困惑:映射从上到下检查,第一个匹配项获胜。 你的管理员几乎肯定也拥有支持人员身份组。如果支持人员排在更上面,你的管理员在游戏里就是支持人员,而排查问题所花的时间,恰恰取决于什么时候有人去看一眼顺序。
所以:最高的身份组放在最上面,然后用一个拥有多个身份组的账户测试一次。别用你自己的,你的账户什么都有。
白名单
不再维护一份标识符列表,而是由 Discord 身份组决定谁可以连接。对于有申请流程的角色扮演服务器,这才是真正的收获:被接受的人获得一个身份组,整个流程就到此为止。
大多数人在拒绝消息上偷工减料。它出现在连接窗口中,往往是被拒玩家从你的服务器读到的唯一内容。“你不在白名单中”是一条死胡同。写清楚去哪里申请,最好附上链接。这只需一次性花两分钟,却能让你的团队省去在工单里回答同一个问题。
从 Discord 使用 RCON
/fivemrcon 让你的团队可以直接从 Discord 运行服务器命令,无需服务器面板的访问权限。
这是我最建议你在开启前好好考虑一下的功能。RCON 意味着对服务器命令的完全访问。因此有两件事不是选项,而是必需的:
- 只允许你真正信任的组。 不是“整个团队”,而是本来就会拥有这种访问权限的那些组。
- 设置一个日志频道。 每条发出的命令都会记录在那里。没有它,你就创造了一种控制服务器的方式,而事后没有人能还原是谁做了什么。
如果你对这两个问题中的任何一个不确定,就不要开启 RCON。其他功能与它相互独立地运行。
两个小附加功能
游戏内抽奖。 当抽奖在 Discord 中开始时,玩家会看到一个界面,可以在一分钟内参加,获奖者也会在游戏中显示。这很有用,因为它恰好能触达那些正在游戏、因此没在看 Discord 的人。
游戏内支持通知。 当有人加入支持语音频道时,拥有对应身份组的团队成员会在游戏中收到提示。那里的冷却时间并不是可有可无的:没有它,一个连续两次切换频道的玩家就会变成一连串通知。
这个连接不是什么
它不能替代任何管理系统、经济管理或玩家数据库。它把两个原本需要分别维护的系统之间的身份和权限连接起来,并让一些 Discord 事件在游戏中可见。仅此而已,而这是刻意为之的。
如果你刚刚开始,经过验证的顺序是:先设置身份组同步,并用测试账户验证它;然后如果需要,再设置白名单;RCON 放在最后,如果要用的话。