AFK状态

AFK状态

一个简单的便捷生活质量实用命令,用于检测挂机状态

AFKStatus - 为服务器提供简单的 AFK 检测

!\[\](https://media.forgecdn.net/attachments/description/1318335/description\_49b50151-d6ab-43be-bb54-6c133719fb55.png)

AFKStatus 是一个轻量级的 Minecraft 服务端模组,基于 NeoForge 和 Forge 模组加载器构建。它会自动跟踪玩家活动,并在玩家停止移动或聊天达到可配置的时间后,将其标记为 AFK(暂离)。玩家也可以使用简单的 /afk 命令手动切换 AFK 状态。

功能

自动 AFK 检测
通过跟踪移动和聊天活动来检测不活跃状态。玩家在超过可配置的超时时间后会被标记为 AFK,并向其他玩家广播。

手动 AFK 切换
/afk 命令允许玩家手动设置或清除 AFK 状态。

可自定义超时时间
可通过配置设置 AFK 触发延迟和可选的踢出超时时间。

可选的自动踢出
自动踢出 AFK 超过设定时间的玩家。

自定义消息和颜色
系统消息可自定义,包括颜色选项。

计分板集成
使用 Minecraft 的队伍系统为 AFK 玩家显示 [AFK] 标记。

仅服务端
无需在客户端安装。只需将模组放入服务器的 mods/ 文件夹即可。

配置

首次启动服务器后,会在你的 config/ 目录中创建一个配置文件(afkstatus-server.toml)。

afkTriggerTimer — 玩家被标记为 AFK 前的不活跃分钟数。
默认值:5
范围:1-60 分钟

afkKickTimer — 进入 AFK 后被踢出前的分钟数。
默认值:0(禁用)
范围:0-120 分钟

kickMessage — 玩家被踢出时显示的踢出消息。

systemMessages — 是否广播 AFK 状态变化。
默认值:false
选项:true / false

checkIntervalTick — 检查 AFK 状态的频率。
(20 tick = 1 秒)
默认值:20
范围:1-1200 tick

messageColor — 消息颜色。
默认值:yellow

detection.enabled — 如果为 true,鼠标视角移动(相机旋转)会计为活动。
默认值:false

detection.thresholdDegrees — 计为活动所需的 yaw/pitch 最小变化量。
默认值:5
范围:1-45 度

有效颜色:black、dark_blue、dark_green、dark_aqua、dark_red、dark_purple、gold、gray、dark_gray、blue、green、¨C25C、¨C26C、¨C27C、¨C28C、¨C29C

bypassEnabled
让 AFK 玩家不参与睡眠百分比计算

黑名单

AFKStatus 包含一个灵活的黑名单系统,用于将特定玩家排除在自动 AFK 踢出功能之外。这对于服务器管理员、受信任的玩家或需要在 AFK 时保持连接的机器人非常有用。

  • 存储:黑名单条目以 JSON 文件(afk_blacklist.json)的形式保存在 config/AFKStatus/ 目录中。
  • 命令:管理员可以在游戏内使用 /afk blacklist 子命令修改黑名单。
  • 行为:
    • 黑名单中的玩家仍会被跟踪 AFK 状态并正常标记。
    • 无论配置的踢出计时器如何,黑名单中的玩家都不会因 AFK 而被踢出。

命令

/afk — 切换你的 AFK 状态。会自动向其他人广播状态变化。

/afk help — 显示 AFKStatus 命令的帮助说明。   

以下命令需要管理员权限

/afk blacklist add — 将玩家添加到 AFK 黑名单。黑名单中的玩家可以进入 AFK,但不会被自动踢出。      

/afk blacklist remove — 将玩家从 AFK 黑名单中移除。

/afk blacklist list — 列出当前 AFK 黑名单中的所有玩家。

afk blacklist reload — 从磁盘重新加载黑名单,如果手动编辑过则很有用。

这让玩家无需移动或聊天即可手动表明自己处于 AFK 或已返回。

Createrington Skin API