欢迎来到 AllClear Mod 的使用文档!
Need a English edition wiki? Check THIS! : https://github.com/EndDream1227/allclear/wiki
这是什么?
用于清理掉落物的服务器管理 mod,由我和 d 指导共同编写,适用于 Minecraft Java 游戏服务器,在本地游戏中同样适用
对比其它的清理掉落物 mod 会更加轻量化,更适合小型或原版型 mod 服务器并且更加智能,绝大多数文本内容支持自定义,绝大多数参数都支持通过配置文件修改
目前该 mod 支持以下功能:
* 可定期清理地面掉落物
* 可在掉落物较少时自动进入睡眠模式
* 可通过配置文件修改清除时间间隔
* 可通过配置文件修改提示文本信息
* 可更改提示文本的显示方式 (对话框和副标题形式两种)
* 可设置黑名单以过滤高价值物品
* 多项功能支持指令控制
* 可自动检测服务器 tps,当掉落物过多造成 tps 过低时能强制清除所有掉落物,支持通过配置文件设置 tps 阈值和强制清理时间间隔
如果你还在为生电服 / 工业服产线爆仓导致服务器炸服而苦恼,那么快来试试这个 mod 吧!
注意:该 mod 目前为测试版,目前所有内容不代表其最终成品,目前测试版仅支持 Minecraft-1.21.1-neoforge 版本
CurseForge 上的该项目:https://www.curseforge.com/minecraft/mc-mods/allclear
Github 仓库:https://github.com/EndDream1227/allclear
Mod功能&配置文件
mod 的配置文件一般位于 游戏主目录 \.minecraft\versions\[版本]\config\allclear-common.toml
当游戏第一次启动时,配置文件会自动生成
定时清理
能定时清除服务器中的所有掉落物
其定时周期,提示文本均支持自定义
#清理间隔(tick),20 tick = 1 秒
#默认: 1800 tick (90秒)
# Default: 1800
# Range: > 20
cleanIntervalTicks = 1800
#倒计时提示的秒数列表
#默认: [30, 10, 5, 4, 3, 2, 1]
countdownTimes = [30, 10, 5, 4, 3, 2, 1]
#(旧版)清理前提示文本,使用 {seconds}
broadcastBefore = "§e[AllClear] §a将在 §b{seconds}秒 §a后清理地面物品!"
#(旧版)清理后提示文本,使用 {count}
broadcastAfter = "§e[AllClear] §a已清理 §c{count} §a个掉落物品"提示文本显示模式
可设置提示文本所显示的位置,目前支持两种模式:“聊天栏(dialog)“和”副标题(subtitle)”模式,聊天栏模式表示提示文本会出现在聊天栏,副标题模式表示文本会像原版副标题一样出现在物品栏上方
所有提示文本均可在配置文件中修改
#提示文本模式: 'dialog' 或 'subtitle'
textMode = "dialog"
#聊天栏清理前提示,可用 {seconds}
dialogBroadcastBefore = "§e[AllClear] §a将在 §b{seconds}秒 §a后清理地面物品!"
#聊天栏清理后提示,可用 {count}
dialogBroadcastAfter = "§e[AllClear] §a已清理 §c{count} §a个掉落物品。"
#聊天栏低TPS提示,可用 {count}, {threshold}
dialogLowTpsMessage = "§e[AllClear] §c检测到服务器负载过高(TPS低于 {threshold}),已自动清理 {count} 个物品"
#标题清理前提示,可用 {seconds}
subtitleBroadcastBefore = "§e[AllClear] §a将在 §b{seconds}秒 §a后清理地面物品!"
#标题清理后提示,可用 {count}
subtitleBroadcastAfter = "§e[AllClear] §a已清理 §c{count} §a个掉落物品"
#标题低TPS提示,可用 {count}, {threshold}
subtitleLowTpsMessage = "§e[AllClear] §c检测到服务器负载过高(TPS低于 {threshold}),已自动清理 {count} 个物品"黑名单
可使用黑名单过滤物品,在黑名单中的物品不会被自动清除,这样你就可以让高价值物品不被清除!
添加物品进入黑名单,以及其相关提示文本均支持通过配置文件修改,同时也支持 /allclear blacklist 添加物品进入黑名单
#黑名单物品列表
#格式:物品ID或标签,如 'minecraft:diamond', '#minecraft:music_discs'
blacklist = []
#添加物品到黑名单成功
blacklistAddSuccess = "§a[AllClear] §a已添加 {item} 到黑名单"
#添加物品到黑名单失败
blacklistAddFail = "§c[AllClear] §c添加失败:{item} 已在黑名单中或无效"
#从黑名单移除物品成功
blacklistRemoveSuccess = "§a[AllClear] §a已从黑名单移除 {item}"
#从黑名单移除物品失败
blacklistRemoveFail = "§c[AllClear] §c移除失败:{item} 不在黑名单中"静默模式
睡眠模式,这个 mod 现在能自动检测游戏内掉落物数量,当游戏中长期掉落物过少,mod 将会进入睡眠模式来避免不必要的活动,能减少提醒量并节省性能
检测掉落物的周期,睡眠模式的持续时长,进入睡眠模式的掉落物数阈值,以及所有提示文本均可通过配置文件修改
#自动静默的物品总数阈值(低于此值则自动暂停定时清理)
# Default: 10
# Range: > 0
autoSilenceItemThreshold = 10
#自动静默持续时间(秒)
# Default: 60
# Range: 5 ~ 3600
autoSilenceDurationSeconds = 60
#自动静默检测间隔(tick)
#例如 10分钟 = 12000 tick
#默认: 12000 (10分钟)
# Default: 12000
# Range: > 20
autoSilenceCheckIntervalTicks = 12000
#自动静默启用时的提示文本
#可用 {count}
autoSilenceOnMessage = "§e[AllClear] §a物品数量较少,自动静默已启用"
#自动静默解除时的提示文本
autoSilenceOffMessage = "§e[AllClear] §a自动静默已解除"
#启用静默模式时的提示
sleepmodeOnMessage = "§a[AllClear] §a静默模式已启用"
#禁用静默模式时的提示
sleepmodeOffMessage = "§c[AllClear] §c静默模式已禁用"
#静默模式未启用时执行 sleep/wakeup 的报错信息
sleepmodeNotAvailable = "§c[AllClear] §c静默模式不可用,请尝试/allclear sleepingmode on"低 tps 强制清除
mod 会自动检测服务端的 tps,当 tps 过低时,且游戏内掉落物数量超过一定时,就会触发强制清除以保护游戏,这个功能对于生电服 / 工业服十分有用,有效的解决了爆仓或忘关机器导致的掉落物过多,从而造成的炸服,同时因只在掉落物过多时才起用,能避免服务器 tps 波动而造成不必要的强制清理
tps 以及掉落物数量的阈值,强制清除的时间间隔,以及所有提示文本均可通过配置文件修改
#触发低 TPS 自动清理的阈值(例如 15.0)
#设置为 0 禁用
# Default: 15.0
# Range: 0.0 ~ 20.0
lowTpsThreshold = 15.0
#低 TPS 自动清理的最小间隔(秒)
# Default: 60
# Range: 10 ~ 3600
autoCleanCooldown = 60
#强制清除的物品总数阈值(TPS低且超过此值时强制清理)
# Default: 500
# Range: > 0
forceClearItemThreshold = 500
#聊天栏低TPS提示,可用 {count}, {threshold}
dialogLowTpsMessage = "§e[AllClear] §c检测到服务器负载过高(TPS低于 {threshold}),已自动清理 {count} 个物品"
#标题低TPS提示,可用 {count}, {threshold}
subtitleLowTpsMessage = "§e[AllClear] §c检测到服务器负载过高(TPS低于 {threshold}),已自动清理 {count} 个物品"掉落物数量检测器
能检测游戏中掉落物的数量,检测器有两种模式,检测所有区块(All)和检测已加载区块(loaded),检测所有区块会更好的保护服务器的安全,但是会占用大量服务器性能,在高峰时期可能会适得其反;检测已加载区块更为推荐,对服务器的保护更平均,占用的服务器性能会比检测所有区块模式降低 90% 左右
检测模式,检测间隔时间,以及其提示文本均可通过配置文件修改
#物品总数统计更新间隔(tick)
# Default: 200
# Range: 20 ~ 1200
itemCountUpdateIntervalTicks = 200
#区块遍历模式: ALL(所有区块), LOADED(已加载区块)
#Allowed Values: ALL, LOADED
chunkScanMode = "LOADED"
#区块遍历模式切换成功
chunkModeChanged = "§a[AllClear] §a区块扫描模式已切换为: {mode}"
#切换到 all 模式时的确认提示
chunkModeConfirm = "§c警告:切换到全区块扫描模式会消耗更多性能,可能造成服务器卡顿。请在 {seconds} 秒内再次输入此指令以确认"
#全区块扫描模式确认等待时间(秒)
# Default: 10
# Range: 1 ~ 60
chunkModeConfirmSeconds = 10
#全区块扫描模式切换已取消(超时)
chunkModeTimeout = "§c[AllClear] §c全区块扫描模式切换已取消(超时)"Mod指令
*/allclear now:立刻启动一次掉落物清理
*/allclear on|off:在游戏中控制 mod 的启动 / 关闭
*/allclear sleepmode:默认为关闭(off),当设置为关闭,静默模式整个功能都不会启用,当设置为开启(on)时,静默模式功能才会启用
*/allclear sleep:: 强制让 mod 进入静默模式,但静默模式功能禁用时无法使用
*/allclear wakeup [number]:: 强制让 mod 脱离静默模式,需跟数字表示持续多长时间,其支持通过数字后缀来设置较长时间,例如:100 表示 100tick,100s 表示 100 秒,100d 表示 100 个游戏日,100td 表示 100 个现实天数
*/allclear text dialog|subtitle:切换提示文本的显示模式,有对话框(dialog)和副标题(subtitle)两种模式
*/allclear chunks all|loaded:切换物品检测器的扫描模式,全部区块(all)和仅已加载区块(loaded)