玩家日志
按玩家记录整局游戏的行为轨迹,并在管理面板的插件页中提供查阅,便于事后追溯与审计。
插件 ID: gg.empostor.playerlog · 数据文件: Data/PlayerLogData.json
这是独立插件,不随 Empostor 内置。未安装时管理面板里不会出现任何玩家日志入口;安装 .dll 并重启后,导航栏的 Plugins 区会出现 Player Log。
| 参考内容 | 位置 |
|---|---|
| 配置 | 无 |
| 指令 | 无 |
| 管理面板 | 插件页 Player Log(见在管理面板中使用) |
| HTTP API | GET /player-log/export(需管理面板会话 Cookie) |
与内存中查询不同,该插件会把滚动历史持久化到磁盘,服务器重启后仍然存在。
记录的事件类型
每条记录的 Type 取值如下:
| Type | 触发时机 |
|---|---|
Connect | 客户端连接到服务器。 |
Join | 玩家加入游戏。 |
Leave | 玩家离开游戏。 |
Chat | 玩家发送聊天消息。 |
Game | 房间创建、开始或结束。 |
Task | 玩家完成任务。 |
Murder | 玩家被击杀。 |
Report | 报告尸体。 |
Meeting | 会议开始或结束。 |
Vent | 玩家进出通风管道。 |
Vote | 玩家投票。 |
Exile | 玩家被投票出局。 |
每条记录包含以下字段:
| 字段 | 说明 |
|---|---|
Time | 事件发生的 UTC 时间。 |
Type | 上表中的事件类型。 |
ClientId | 客户端数字 ID(若有)。 |
PlayerName | 事件发生时的游戏昵称。 |
FriendCode | 好友代码(若已知)。 |
GameCode | 当前房间的房间代码。 |
Detail | 事件的具体描述。 |
在管理面板中使用
在管理面板导航栏的 Plugins 区打开 Player Log 插件页,可以:
- 用 Player 下拉筛选,选项为
All players或某个#ID 昵称 (好友代码)。 - 用 Page 下拉翻页,每页 100 条。
- 点 Export as JSON 得到导出体积提示,再打开
/player-log/export下载 JSON(需要管理面板会话 Cookie;加?clientId=123可只导出单个玩家)。 - 用 Clear logs 下拉选择范围(全部 / 1 小时 / 24 小时 / 7 天 / 30 天),再点 Clear Logs 执行清理。
导出支持单个玩家与全量日志两种粒度,便于把证据交给其他管理员核查。

存储与留存
日志上限为 10,000 条。超出后每写入一条新记录,就会丢弃最旧的一条,因此文件大小始终可控。
| 项目 | 值 |
|---|---|
| 路径 | Data/PlayerLogData.json(旧版 Data/player_logs.json 会自动迁移) |
| 格式 | JSON 记录数组 |
| 最大条数 | 10,000(超出后丢弃最旧) |
| 持久化 | 重启后保留 |
注意规模
繁忙的服务器一天内就可能写满 10,000 条。如需长期留存,请定期导出并清理日志。
隐私提示
玩家日志可能包含 IP 地址、好友代码等可识别个人信息。请妥善保管导出文件;若服务器处理个人数据,请一并检查隐私政策页面。