
AFK增强
新AFK管理模组,全面处理AFK时间/时长/原因;完整支持Placeholder API格式化。也适用于单人游戏;并可通过Placeholder API将这个信息提供给其他模组。支持Luck Permissions。
查看大图AfkPlus Fabric 模组(适用于 Minecraft)

基本描述:
- 基于 beabfc 的 AfkDisplay 的分支项目。他已允许我继续创建此模组,请查看我的“已归档问题”窗格。
- 在玩家列表中显示哪些玩家处于 AFK 状态,并查看原因、持续时间和时间。
- 完全可配置,并支持 Placeholder API,其中包括所有 Placeholder API 格式节点,例如:原生支持黄色或粗体。(您甚至可以在 AFK 原因中包含 URL!)
- 该模组现在可用于单人游戏和集成服务器(对局域网开放)。
- [新功能] 截至 2024 年 12 月,该模组已基本重写;作为基于 Fallen-Breath 的 Template Mod 架构的多版本项目。
- [新功能] 该模组现在依赖于我的新库模组 CoreLib,并且 More Color 系统也已分叉到我的 More Color API 模组中。
- 它们都包含在 AfkPlus 的 JAR 文件中。
模组重写与新特性
- 整个模组生态系统已迁移到多版本架构,以便更快速地将模组同时移植到 1.19.2-1.21.4+ 版本,并使用单一分支。
- 配置不再使用 TOML,已转换为基于数据驱动的 CoreLib JSON 配置系统;其工作方式类似于 Pat 的模组生态系统。
- 大多数玩家/服务器事件现在由 CoreLib 接口管理;仅有少数 AFK 特定例外。
- 所有命令现在均由 CoreLib 接口注册和管理。
- 所有抽象文本占位符 API 格式以及额外颜色标签现在由 More Color API 管理。请参阅
/morecolors命令。 - 所有新的抽象时间日期/持续时间格式接口均由 CoreLib 管理。
- 完全重写了基于抽象的 AfkPlayer / AFK 玩家列表系统;不再通过 Mixin 类进行管理。这有助于解决严格的模组兼容性问题;并摆脱丑陋的代码。
- 从 CoreLib 到 AfkPlus 的整个模组生态系统都拥有 API / 事件系统,供其他模组实现并在其模组中兼容。
- AfkPlus 为
Vanish、Carpet Mod和Styled Player List添加了 API 兼容处理。每个模组的集成方式根据其兼容需求而有所不同。 - 增加了几个
message选项,并将afkKick和disableDamage系统分叉到它们自己的配置类别中。有关更多默认信息,请参阅下面的配置。 - 根据请求添加了其他几个烦扰问题、错误修复和功能;例如通过多种配置选项完全配置“Gone for: XXX”消息的能力。
功能特性
- 添加了占位符
%afkplus:afk%,为您提供基本的 '[AFK]' 标签,标记给处于 AFK 状态的玩家。 - 添加了占位符
%afkplus:name%/%afkplus:display_name%,以便您可以在其他模组(例如 Styled Playerlist)下使用它作为 '%player:displayname%' 占位符的替代品。 注意,此方法旨在完全兼容 Styled Playerlist 下的 LuckPerms 前缀,因为标准的玩家列表更新方法会失败,或者如果您愿意,也可以直接使用 %afkplus:afk% 为现有名称添加格式。 - 添加了占位符
%afkplus:duration%,以便您可以获取某人进入 AFK 状态以来的时间,并支持配置格式前缀。 - 添加了占位符
%afkplus:time%,以便您可以获取某人进入 AFK 状态的时间/日期,并支持配置格式前缀。 - 添加了占位符
%afkplus:reason%,以便您可以获取某人进入 AFK 状态的原因,并支持配置格式前缀。 - 添加了占位符
%afkplus:invulnerable%,以便您可以显示所有用户的“禁用伤害”状态,类似于“[AFK]”占位符标签,但或多或少是一个“附加组件”。 - 有一个特殊的配置选项 'prettyDuration',用于以更人性化的可读格式配置 AFK 持续时间,而不是默认的 (HH:mm:ss.mss) 格式。每种方法都有其优势。(这里想到的是 Styled Nicknames 或 Styled Chat)
- 为管理员提供了几个模组/数据包冲突警告,以帮助他们更好地决定要安装哪些模组。
- 添加了 “disableDamage” 配置,使 AFK 玩家在 15 秒冷却时间后对伤害免疫。发生这种情况时,默认会强制执行一条新的可配置的全服广播消息。
- 添加了 “disableDamageCooldown” 配置,允许管理员调整玩家进入 AFK 状态后应用的默认“计时器”。
- 添加了 “whenDamageDisabled” 配置,以便您可以自定义当玩家被标记为无敌时显示的消息。
- 添加了 “whenDamageEnabled” 配置,以便您可以自定义当玩家的无敌状态被取消时显示的消息。
- 现在还检查玩家是否处于旁观模式,而不仅仅是创造模式,用于管理您的 AFK/禁用伤害状态。
- 添加了几个玩家可以在 AFK 原因中使用的颜色节点。有关显示示例,请参阅 /afkex。
- 棕色、青色、深棕色、深粉色、浅蓝色、浅棕色、浅灰色、浅粉色、青柠色、品红色、紫色、鲑鱼色、
- bluetiful、burnt_orange、canary、cool_mint、copper、powder_blue、royal_purple、shamrock、tickle_me_pink、ultramarine_blue
- 添加了 “bypassSleepCount” 配置,以便您可以允许标记为 AFK 的玩家绕过睡眠人数要求。
- 添加了 “bypassInsomnia” 配置,以便您可以允许标记为 AFK 的玩家阻止幻翼生成。
- 添加了 “/noafk” 命令,供玩家取消自身的 AFK 标记状态。
- 添加了 “displayDuration” 配置选项,以便您可以启用/禁用在 whenReturn 期间显示“已离开 XX 分钟,XX 秒”。
- 添加了额外处理,允许将 “afkTimeoutString” 设置为 "",并将 “defaultReason” 传递为 "",以获得更多的“原始” AfkDisplay 体验。
- 添加了 “AFK 踢出” 系统,可在配置的时间后自动将处于 AFK 状态的玩家从服务器中踢出。它有几个配置选项:
afkKickEnabled- (true/false) 启用 AFK 自动踢出管理器。afkKickNonSurvival- (true/false) 允许踢出创造/旁观模式的玩家。afkKickTimer- 玩家被移出服务器时超出timeoutSeconds的时间(累加),因此如果timeoutSeconds为 240,afkKickTimer设置为 3600,那么他们实际被踢出的时间是在 3840,即最长 64 分钟。afkKickSafePermissions- (权限等级 3) 默认标记为“安全”,不会被自动踢出的权限等级。(Luck Perms: afkplus.kick.safe)- 注意;如果玩家拥有
afkPlusCommandPermissions(Luck Perms: afkplus.afkplus),他们也将被标记为自动踢出安全,但此新配置允许您单独配置这些权限。
- 注意;如果玩家拥有
afkKickMessage- 发送给被踢出的玩家的消息,作为其被移出的原因。(当displayDuration启用时,会附加持续时间)whenKicked- 当玩家因 AFK 被踢出时,广播给服务器的消息。(当displayDuration启用时,会附加持续时间)- 注意:此功能 不会 自动踢出 Carpet Mod 机器人,因为服务器不会对‘假’玩家进行 tick。
- 此功能 不 适用于单人游戏/对局域网开放,并且需要专用服务器环境才能正常运行。
命令(通过 Luck Permissions 或 afk_plus 配置进行权限管理)
- '/afkplus' 使用 AfkPlusCommandPermissions (默认值: 4) 设置默认限制。(权限: afkplus.afkplus)
- 显示模组版本信息。
- '/afkplus reload' 命令。(权限: afkplus.afkplus.reload)
- 允许管理员在服务器运行时重新加载配置。
- '/afkplus ex' 命令。(权限: afkplus.afkplus.ex)
- 显示一个简单的“格式测试”,向用户展示可用的基本文本节点,这也允许他们通过点击颜色/格式进行复制/粘贴。
- '/afkplus set [玩家] [原因]' 命令。(权限: afkplus.afkplus.set)
- 允许任何管理员设置玩家的 AFK 状态,这也会移除他们的 NoAFK 状态。
- '/afkplus clear [玩家]' 命令。(权限: afkplus.afkplus.clear)
- 允许任何管理员清除玩家的 AFK 状态。
- '/afkplus damage enable [玩家]' 命令。(权限: afkplus.afkplus.damage.enable)
- 允许管理员强制启用 AFK 玩家的可受击能力,只要他们保持连接。
- '/afkplus damage disable [玩家]' 命令。(权限: afkplus.afkplus.damage.disable)
- 允许管理员在强制移除后恢复玩家使用“禁用伤害”的能力。
- '/afkplus info [玩家]' 命令。(权限: afkplus.afkplus.info)
- 允许任何管理员检查玩家的 AFK 状态,并显示其进入 AFK 状态的时间和持续时间。
- '/afkplus update [玩家]' 命令。(权限: afkplus.afkplus.update)
- 允许任何管理员强制更新某个玩家的玩家列表。
- '/afkinfo [玩家]' 使用 AfkInfoCommandPermissions (默认值: 2) 设置默认限制,(权限: afkplus.afkinfo)
- 与 '/afkplus info [玩家]' 功能相同,但可用于模组、玩家,或任何您希望配置供他人查看的方式。
- '/afkex' 使用 AfkExCommandPermissions (默认值: 0) 设置默认限制。(权限: afkplus.afkex)
- 显示一个简单的“格式测试”,向用户展示可用的基本文本节点,这也允许他们通过点击颜色/格式进行复制/粘贴。
- '/afk [原因]' 使用 AfkCommandPermissions (默认值: 0) 设置默认限制。(权限: afkplus.afk)
- 允许任何用户在使用 [原因] 的同时设置他们的 AFK 状态。
- [新功能] '/noafk' 使用 noAfkCommandPermissions (默认值: 0) 设置默认限制。(权限: afkplus.noafk)
- 允许任何用户将自身设置为基于配置的超时值不会进入 AFK 状态。
- [新功能] 'afkKickSafePermissions' (默认值: 3) 设置默认权限,用于标记 AFK 玩家不会被踢出。(权限: afkplus.kick.safe)
潜在的已知冲突(请自行选择)
- afk display 数据包 (Vanilla Tweaks 数据包,更改玩家列表显示) -- 模组会检查名称中包含任何“afk”的数据包。
- AfkDisplay -- 因为 AfkPlus 是基于此模组开发的,且其功能较少。
- AntiLogout (/afk 命令、超时处理)
- Auto AFK (/afk 命令、超时处理)
- Sessility (超时处理)
- Playtime-Tracker (超时处理)
- SvrUtil (/afk 命令,其余功能安全)
示例配置
配置位于服务器配置文件夹内的 afkplus.json 中。
{
"___comment": "AfkPlus-1.21.4-1.7.4-SNAPSHOT 配置",
"config_date": "Fri, 3 Jan 2025 00:05:08 -0500",
"afk_plus": {
"_comment01": "# 允许您禁用 /afk 命令以将自身标记为 AFK,并可附带可选的 [原因](默认值:true)",
"enableAfkCommand": true,
"_comment02": "# 允许您禁用 /noafk 命令以将自身标记为 NoAFK,这将禁用超时(默认值:true)",
"enableNoAfkCommand": true,
"_comment03": "# 允许您禁用 /afkinfo 命令,该命令允许玩家查看某人的 AFK 状态(时间、持续时间、原因)。(默认值:true)",
"enableAfkInfoCommand": true,
"_comment04": "# /afk 的默认命令权限,可通过 Luck Perms (afkplus.afk) 节点配置(默认值:0)",
"afkCommandPermissions": 0,
"_comment05": "# /noafk 的默认命令权限,可通过 Luck Perms (afkplus.noafk) 节点配置(默认值:0)",
"noAfkCommandPermissions": 0,
"_comment06": "# /afkinfo 的默认命令权限,可通过 Luck Perms (afkplus.afkinfo) 节点配置(通常用于模组)(默认值:2)",
"afkInfoCommandPermissions": 2,
"_comment07": "# /afkplus 的默认命令权限,可通过 Luck Perms (afkplus.afkplus 及 .子命令) 节点配置(默认值:3)",
"afkPlusCommandPermissions": 3,
"_comment08": "# 一个基本冷却时间配置,用于帮助防止人们刷屏 /afk 命令(默认值:5 秒)",
"afkCommandCooldown": 5,
"_comment09": "# 一个布尔值开关,用于启用/禁用模组中的调试日志消息",
"debugMode": false
},
"packet": {
"_comment01": "# 玩家被视为 AFK 前的无操作时间。设置为 -1 可禁用自动 AFK 检测。(默认值:240)",
"_comment02": "# --注意;原始 AfkDisplay 的默认超时设置为 180 秒。",
"timeoutSeconds": 240,
"_comment03": "# 认为移动过的玩家不再是 AFK(启用易绕过方法,如 AFK 池)(默认值:false)",
"resetOnMovement": false,
"_comment04": "# 认为环顾四周的玩家不再是 AFK(默认值:false)",
"resetOnLook": false,
"_comment05": "# 认为仅在挥动剑的玩家也为 AFK(默认值:false)",
"ignoreAttacks": false,
"_comment06": "# 使 AFK 玩家不计入睡眠百分比检查(默认值:true)",
"bypassSleepCount": true,
"_comment07": "# 使 AFK 玩家阻止幻翼生成尝试。(默认值:true)",
"bypassInsomnia": true,
"_comment08": "# 默认的“超时”AFK 原因(默认值:“<i><gray>timeout<r>”)",
"afkTimeoutString": "<i><gray>timeout<r>",
"_comment09": "# “ignoreAttacks” 检测的默认 AFK 超时消息",
"afkTimeoutIgnoreAttack": "<i><gray>only swinging their sword<r>"
},
"disable_damage": {
"_comment01": "# 玩家进入 AFK 状态后,在 disableDamageCooldown 秒后禁用伤害(默认值:false)",
"disableDamage": false,
"_comment02": "# 启用“禁用伤害”功能的冷却计时器。(默认值:15 秒)",
"_comment03": "# - 警告!请注意,将此值设置得过低可能会鼓励不良玩家行为。",
"disableDamageCooldown": 15,
"_comment04": "# 当 AFK 玩家被标记为无敌时显示的消息内容。",
"_comment06": "# (默认值:“%player:displayname% <yellow>is marked as <red>Invulnerable.<r>”)",
"whenDamageDisabled": "%player:displayname% <yellow>is marked as <red>Invulnerable.<r>",
"_comment08": "# 当 AFK 玩家不再被标记为无敌时显示的消息内容。",
"_comment09": "# (默认值:“%player:displayname% <yellow>is no longer <red>Invulnerable.<r>”)",
"whenDamageEnabled": "%player:displayname% <yellow>is no longer <red>Invulnerable.<r>"
},
"afk_kick": {
"_comment01": "# 启用 AFK 自动踢出系统。(默认值:false)",
"afkKickEnabled": false,
"_comment02": "# 允许踢出非生存模式的玩家(创造、旁观等)(默认值:false)",
"afkKickNonSurvival": false,
"_comment03": "# 在 `timeoutSeconds` 之后自动踢出 AFK 玩家前的时间(默认值:3600,即 1 小时)",
"_comment04": "# --注意;此值是 `timeoutSeconds` 值的“累加”,因此实际时间将为 3840,即 64 分钟。",
"afkKickTimer": 3000,
"_comment05": "# 标记玩家为“安全”而不会被自动踢出的默认权限等级,即服务器管理员(默认值:3)",
"afkKickSafePermissions": 3,
"_comment06": "# 发送给被移除玩家的踢出原因消息。可设置为 “” 以获取基本的 “AFK timeout” 原因。",
"_comment07": "# (默认值:“<copper>AFK beyond the allowed time limit set by your Administrator.<r>”)",
"_comment08": "# --注意;如果 `message.displayDuration` 设置为 true,此消息末尾会附加 AFK 持续时间。",
"afkKickMessage": "<copper>AFK beyond the allowed time limit set by your Administrator.<r>",
"_comment09": "# 当 AFK 玩家被踢出服务器时显示的消息内容。",
"_comment10": "# (默认值:“%player:displayname% <copper>was kicked for being AFK.<r>”)",
"_comment11": "# --注意;如果 `message.displayDuration` 设置为 true,此消息末尾会附加 AFK 持续时间。",
"whenKicked": "%player:displayname% <copper>was kicked for being AFK.<r>",
"_comment12": "# 玩家被踢出时的默认原因",
"_comment13": "# (默认值:“<copper>AFK timeout”)",
"whenKickedDefaultReason": "<copper>AFK timeout",
"_comment14": "# 玩家被踢出时使用的 AFK 默认持续时间前缀。所使用的持续时间格式遵循 message.duration 配置。",
"_comment15": "# (默认值:“ <gray>(Gone for: <green>”)",
"whenKickedDurationDefaultPrefix": " <gray>(Gone for: <green>",
"_comment16": "# 玩家被踢出时使用的 AFK 玩家命名持续时间前缀。所使用的持续时间格式遵循 message.duration 配置。",
"_comment17": "# (默认值:“ <gray>(%player:displayname% was gone for: <green”)",
"whenKickedDurationNamedPrefix": " <gray>(%player:displayname% was gone for: <green>",
"_comment18": "# 任一踢出持续时间前缀的后缀",
"_comment19": "# (默认值:“ <gray>)”",
"whenKickedDurationSuffix": "<gray>)"
},
"player_list": {
"_comment01": "# 为处于 AFK 状态的玩家更改玩家列表名称(默认值:true)",
"_comment02": "# -- 注意;这适用于您未使用玩家列表显示模组时。",
"enableListDisplay": true,
"_comment03": "# 如果玩家处于 AFK 状态,在玩家列表中显示的名称,并且接受格式节点",
"_comment04": "# (默认值:“<i><gray>[AFK%afkplus:invulnerable%] %player:displayname%<r>”)",
"_comment05": "# -- 注意;此功能在不使用玩家列表模组时效果最佳!*",
"afkPlayerName": "<i><gray>[AFK%afkplus:invulnerable%] %player:displayname%<r>",
"_comment06": "# 此选项设置默认的玩家列表更新间隔。此配置对修复各种玩家列表更新问题大有帮助;",
"_comment07": "# 尤其是在安装了其他玩家列表管理模组时。",
"_comment08": "# (默认值:10 秒)",
"updateInterval": 10
},
"place_holder": {
"_comment01": "# 如果玩家处于 AFK 状态,这将是占位符 %afkplus: afk% 的值。该选项接受完整的格式节点",
"_comment02": "# (默认值:“<i><gray>[AFK%afkplus:invulnerable%]<r>”)",
"_comment03": "# -- 注意;*不会* 在代码末尾放置 “<r>”(尽量不修改其默认行为)",
"afkPlaceholder": "<i><gray>[AFK%afkplus:invulnerable%]<r>",
"_comment04": "# 占位符 %afkplus:name% 用于向后移植完整的 %displayname%,供其他模组使用,例如 Styled Player List",
"_comment05": "# (默认值:“<i><gray>[AFK%afkplus:invulnerable%] %player:displayname_unformatted%<r>”)",
"_comment06": "# -- 注意;*不会* 在代码末尾放置 “<r>”(尽量不修改其默认行为)",
"afkPlusNamePlaceholderAfk": "<i><gray>[AFK%afkplus:invulnerable%] %player:displayname_unformatted%<r>",
"_comment07": "# 当玩家未处于 AFK 状态时的值,(即,默认的 “%player:displayname%”)",
"_comment08": "# -- 注意;*不会* 在代码末尾放置 “<r>”(尽量不修改其默认行为)",
"afkPlusNamePlaceholder": "%player:displayname%",
"_comment09": "# 为 %afkplus:duration% 添加格式前缀节点(默认值:<green>)",
"_comment10": "# -- 注意;在代码末尾放置 “<r>”,这用于 /afkinfo 期间",
"afkDurationPlaceholderFormatting": "<green>",
"_comment11": "# 为 %afkplus: time% 添加格式前缀节点(默认值:<green>)",
"_comment12": "# -- 注意;在代码末尾放置 “<r>”,这用于 /afkinfo 期间",
"afkTimePlaceholderFormatting": "<green>",
"_comment13": "# 为 %afkplus: reason% 添加格式前缀节点,我不确定为什么会有人想要启用此功能,因为",
"_comment14": "# 自己格式化 [原因] 是很有趣的。(默认值:无)",
"_comment15": "# -- 注意;在代码末尾放置 “<r>”,这用于 /afkinfo 期间",
"afkReasonPlaceholderFormatting": "",
"_comment16": "# 添加一个选项来配置一个基本的“附加组件”占位符,以附加到 “[AFK]” 标签上,用于标记玩家何时",
"_comment17": "# 使用 %afkplus: invulnerable% 标记为无敌(默认值:“:<red>I<r>”)",
"afkInvulnerablePlaceholder": ":<red>I<r>",
"_comment18": "# 添加一个选项,用于为 %duration% 占位符的输出使用自定义格式化程序。有效选项为:",
"_comment19": "# -- 'REGULAR' (HH:mm:ss.SSS) (默认值:REGULAR)",
"_comment20": "# -- 'PRETTY' (d' 天 'H' 小时 'm' 分钟 's' 秒')",
"_comment21": "# -- 'ISO_EXTENDED' ('P'yyyy'Y'M'M'd'DT'H'H'm'M's.SSS'S')",
"_comment22": "# -- 'FORMATTED'; 与 ISO_EXTENDED 相同,但此选项允许您设置自定义的 DurationFormatUtils 格式化程序,",
"_comment23": "# --> 更多信息请参阅:“org.apache.commons.lang3.time.DurationFormatUtils;”",
"duration": {
"option": "REGULAR",
"customFormat": ""
},
"_comment24": "# 添加一个选项,用于为 %afkTime% 占位符的输出使用自定义格式化程序。有效选项为:",
"_comment25": "# -- 'REGULAR' (yyyy-MM-dd_HH.mm.ss); 与 Minecraft 使用的格式相同,也是默认配置。(默认值:REGULAR)",
"_comment26": "# -- 'ISO_LOCAL' (yyyy-MM-ddTHH:mm:ss.n)",
"_comment27": "# -- 'ISO_OFFSET' (yyyy-MM-ddTHH:mm:ss.nZ)",
"_comment28": "# -- 'RFC1123' (EEE, dd MMM yyyy HH:mm:ss +HHMM)",
"_comment29": "# -- 'FORMATTED'; (yyyy-MM-dd_HH.mm.ss); 与 'REGULAR' 相同,但此选项允许您基于",
"_comment30": "# “java.time.format.DateTimeFormatter” 格式化器语法设置自定义格式化器;有关更多信息,请参阅该包。",
"timeDate": {
"option": "REGULAR",
"customFormat": ""
}
},
"message": {
"_comment01": "# 启用玩家进入 AFK 或返回时发送聊天消息。(默认值:true)",
"enableMessages": true,
"_comment02": "# 玩家进入 AFK 状态时的消息内容,并且接受格式节点",
"_comment03": "# (默认值:“%player:displayname% <yellow>is now AFK<r>”)",
"whenAfk": "%player:displayname% <yellow>is now AFK<r>",
"_comment04": "# 一个可选配置,用于设置 “whenAfk” 及其后跟随的持续时间/原因之间的标点符号。",
"_comment05": "# (默认值:“<yellow>,<r> ”)",
"whenAfkPunctuation": "<yellow>,<r> ",
"_comment06": "# 玩家从 AFK 状态返回时的消息内容,并且接受格式节点。",
"_comment07": "# (默认值:“%player:displayname% <yellow>is no longer AFK<r>”)",
"_comment08": "# --注意;如果 `displayDuration` 设置为 true,此消息末尾会附加 AFK 持续时间。",
"whenReturn": "%player:displayname% <yellow>is no longer AFK<r>",
"_comment09": "# “whenReturn” 持续时间的格式部分的前缀格式。",
"_comment10": "# (默认值:“ <gray>(Gone for: <green>”)",
"whenReturnDurationPrefix": " <gray>(Gone for: <green>",
"_comment11": "# “whenReturn” 持续时间的格式部分的后缀格式。",
"_comment12": "# (默认值:“<gray>)”)",
"whenReturnDurationSuffix": "<gray>)",
"_comment13": "# 通过 /afk 命令进入 AFK 状态的默认原因。无需给出原因即可留下一团烟雾。",
"_comment14": "# (默认值:“<gray>poof!<r>”)",
"_comment15": "# --注意; “” 是有效设置,并将禁用默认的 /afk 原因。",
"defaultReason": "<gray>poof!<r>",
"_comment16": "# 当玩家重复输入 '/afk' 并期望得到一个错误结果时,一个可配置的问候语。",
"_comment17": "# (默认值:“<yellow>Welcome back, <r>%player:display_name%<r>, <yellow>did you miss anything fun?”)",
"afkCooldownGreeting": "<yellow>Welcome back, <r>%player:display_name%<r>, <yellow>did you miss anything fun?",
"_comment18": "# 当玩家被 DrexHD 维护的 “melius-vanish” 标记为消失状态时发送的通用错误条件消息",
"_comment19": "# (默认值:“<red>You are vanished, and probably shouldn't be doing that.<r>”)",
"whileYourVanished": "<red>You are vanished, and probably shouldn't be doing that.<r>",
"_comment20": "# 当玩家被 DrexHD 维护的 “melius-vanish” 标记为消失状态时,以第三人称发送的通用错误条件消息",
"_comment21": "# (默认值:“<red> is vanished, and probably shouldn't be doing that.<r>”)",
"whileVanished": "<red> is vanished, and probably shouldn't be doing that.<r>",
"_comment22": "# 启用 whenReturn 消息的持续时间显示部分。请参阅下面的 “duration” 配置。",
"_comment23": "# (默认值:true)",
"displayDuration": true,
"_comment24": "# 将聊天消息、/afkinfo 和 'whenReturn' 等中的 “duration” 重新格式化为更易读的格式。",
"_comment25": "# -- 'REGULAR' (HH:mm:ss.SSS)",
"_comment26": "# -- 'PRETTY' (d' 天 'H' 小时 'm' 分钟 's' 秒') (默认值:PRETTY)",
"_comment27": "# -- 'ISO_EXTENDED' ('P'yyyy'Y'M'M'd'DT'H'H'm'M's.SSS'S')",
"_comment28": "# -- 'FORMATTED'; 与 ISO_EXTENDED 相同,但此选项允许您设置自定义的 DurationFormatUtils 格式化程序,",
"_comment29": "# --> 更多信息请参阅:“org.apache.commons.lang3.time.DurationFormatUtils;”",
"duration": {
"option": "PRETTY",
"customFormat": ""
},
"_comment30": "# 添加一个选项,用于为 /afkinfo 命令的输出使用自定义格式化程序。有效选项为:",
"_comment31": "# -- 'REGULAR' (yyyy-MM-dd_HH.mm.ss); 与 Minecraft 使用的格式相同,也是默认配置。(默认值:REGULAR)",
"_comment32": "# -- 'ISO_LOCAL' (yyyy-MM-ddTHH:mm:ss.n)",
"_comment33": "# -- 'ISO_OFFSET' (yyyy-MM-ddTHH:mm:ss.nZ)",
"_comment34": "# -- 'RFC1123' (EEE, dd MMM yyyy HH:mm:ss +HHMM)",
"_comment35": "# -- 'FORMATTED'; (yyyy-MM-dd_HH.mm.ss); 与 'REGULAR' 相同,但此选项允许您基于",
"_comment36": "# “java.time.format.DateTimeFormatter” 格式化器语法设置自定义格式化器;有关更多信息,请参阅该包。",
"timeDate": {
"option": "REGULAR",
"customFormat": ""
}
}
}
正在加载版本记录…

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