ClearAllItems - 一款专为 Folia 1.21.11 服务端设计的高性能全图容器清理插件

原创 工具 ClearAllItems - 一款专为 Folia 1.21.11 服务端设计的高性能全图容器清理插件 2026-03-14

完成注册/登录后下载
版权类型
原创
插件中文名称
地图容器清理
插件英文名称
ClearAllItems
原帖地址
#
支持的核心(服务端)
  1. Folia
适配版本(Java)
  1. 1.21
【Folia】ClearAllItems - 高性能物品清理插件 v1.0




📖 插件简介

ClearAllItems 是一款专为 Folia 1.21.11 服务端设计的高性能物品清理插件,支持清理指定世界所有已生成区块内的物品。采用异步分批处理技术,完美适配Folia的区域化调度系统,确保清理过程不影响服务器TPS。




✨ 核心特性

🎯 强大的清理功能
  • ✅ 扫描所有已生成区块 - 通过读取region文件,自动扫描世界中所有已生成的区块
  • ✅ 智能清理模式 - 支持清理所有物品或仅清理非原版物品(自定义物品)
  • ✅ 清理地面掉落物(Item实体)
  • ✅ 清理各类容器内物品(箱子、漏斗、熔炉、发射器、投掷器、潜影盒、木桶、酿造台等)
  • ✅ 清理展示框/物品展示框内的物品
  • ✅ 清理盔甲架上的装备和手持物品
  • ✅ 清理矿车箱子、漏斗矿车内的物品

🚀 技术优势
  • ⚡ 完美适配Folia - 使用RegionScheduler和GlobalRegionScheduler,完全兼容区域化调度
  • 🔥 异步处理 - 分区块异步处理,避免服务器卡顿
  • 📊 批次处理 - 可配置每批次处理的区块数量和间隔时间
  • 📈 进度追踪 - 实时显示清理进度和统计信息
  • 📝 详细日志 - 记录清理过程的详细信息,支持导出到文件
  • 🛡️ 安全机制 - 清理前确认提示,支持暂停/恢复/终止任务
  • ⚙️ 高度可配置 - 支持配置清理目标、批次大小、间隔时间等




📥 下载与安装

环境要求
  • 服务端: Folia 1.21.11 或更高版本
  • Java版本: Java 21 或更高版本

安装步骤
  1. 下载插件jar文件
  2. 将jar文件放入服务器的 plugins 文件夹
  3. 重启服务器或使用 /reload confirm 重载插件
  4. 插件会自动生成配置文件 plugins/ClearAllitems/config.yml




🎮 指令使用

主指令
/clearallitems <子指令> [参数]

子指令列表

指令说明用法
start开始清理任务/clearallitems start [世界名] [模式]
confirm确认清理任务/clearallitems confirm
pause暂停清理任务/clearallitems pause
resume恢复清理任务/clearallitems resume
stop停止清理任务/clearallitems stop
status查看清理进度/clearallitems status
reload重载配置文件/clearallitems reload
help显示帮助信息/clearallitems help

清理模式

模式参数说明
清理所有物品all清理所有物品(默认模式)
仅清理非原版物品custom只清理带有自定义属性的物品

非原版物品判定标准
  • 带有 CustomModelData 的物品
  • 带有 Lore(描述文本)的物品
  • 带有 Unbreakable(无法破坏)属性的物品
  • 带有自定义显示名称的物品

使用示例

# 清理当前所在世界的所有物品
/clearallitems start

# 清理指定世界的所有物品
/clearallitems start world all

# 仅清理指定世界的非原版物品(保留原版物品)
/clearallitems start world custom

# 确认清理
/clearallitems confirm

# 查看清理进度
/clearallitems status

# 暂停/恢复/停止清理
/clearallitems pause
/clearallitems resume
/clearallitems stop




🎯 使用场景

场景1:清理服务器中的所有物品
/clearallitems start world all
适用于:服务器重置、清理刷怪塔掉落物、清理卡顿物品等

场景2:仅清理自定义物品(保留原版物品)
/clearallitems start world custom
适用于
  • 清理RPG服务器的自定义装备和道具
  • 清理带有特殊属性的物品
  • 保留玩家的原版资源(如钻石、铁锭等)
  • 清理插件生成的自定义物品




⚙️ 配置文件

配置文件位于 plugins/ClearAllitems/config.yml

任务配置
代码:
task:
  chunks-per-batch: 100      # 每批次处理的区块数量
  batch-interval-ms: 50      # 批次间隔时间(毫秒)
  confirm-before-clear: true # 是否需要确认
  timeout-seconds: 0         # 超时时间(0=禁用)

性能调优建议
  • 小型服务器(1-10人):chunks-per-batch: 50-100, batch-interval-ms: 50
  • 中型服务器(10-50人):chunks-per-batch: 100-150, batch-interval-ms: 100
  • 大型服务器(50+人):chunks-per-batch: 150-200, batch-interval-ms: 150

清理目标配置
代码:
targets:
  dropped-items: true        # 地面掉落物
  containers:
    enabled: true
    chest: true              # 箱子
    barrel: true             # 木桶
    shulker-box: true        # 潜影盒
    hopper: true             # 漏斗
    # ... 更多容器类型
  item-frames: true          # 展示框
  armor-stands: true         # 盔甲架

日志配置
代码:
logging:
  verbose: true              # 详细日志
  save-to-file: true         # 保存到文件
  log-file: "clear-logs.txt" # 日志文件路径
  progress-interval: 50      # 进度报告间隔




🔐 权限节点

权限节点说明默认
clearallitems.*所有权限OP
clearallitems.use使用清理指令OP
clearallitems.admin管理员权限(重载配置)OP




💡 工作原理

Folia适配说明

本插件完全适配Folia的区域化调度系统:

  1. 区域调度器(RegionScheduler) - 用于处理特定区块的任务
    • 每个区块的清理操作都在其所属区域的线程中执行
    • 确保线程安全,避免跨区域访问
  2. 全局调度器(GlobalRegionScheduler) - 用于协调整体任务
    • 任务管理、进度统计等全局操作
    • 批次间的延迟调度
  3. 异步区块加载 - 使用 World.getChunkAtAsync() 异步加载区块
    • 避免阻塞主线程
    • 提高处理效率




❓ 常见问题

Q: 插件会删除区块或方块吗?
A: 不会。插件只清理物品,不会删除任何区块或方块。例如,箱子方块会保留,只是清空其中的物品。

Q: 清理过程中服务器会卡顿吗?
A: 不会。插件采用分批异步处理,每批处理后会有延迟,确保服务器TPS稳定。

Q: 可以清理未加载的区块吗?
A: 插件只清理已加载的区块。如果需要清理整个世界,建议先使用其他工具预加载区块。

Q: 清理任务可以中断吗?
A: 可以。使用 /clearallitems pause 暂停,/clearallitems resume 恢复,/clearallitems stop 终止。

Q: 为什么需要确认?
A: 清理操作不可逆,确认机制可以防止误操作。可以在配置文件中关闭此功能。




📊 性能优化建议

大地图优化
  1. 调整批次大小:根据服务器性能调整 chunks-per-batch
  2. 增加批次间隔:如果TPS下降,增加 batch-interval-ms
  3. 分时段清理:在服务器低峰期执行清理任务
  4. 关闭详细日志:设置 verbose: false 减少日志输出
  5. 使用暂停功能:如果TPS下降,暂停任务等待恢复

内存优化
  • 插件采用流式处理,不会一次性加载所有区块到内存
  • 每批处理完成后会释放资源
  • 日志文件采用缓冲写入,减少IO开销




📝 更新日志

v1.0 (2026)
  • ✨ 初始版本发布
  • ✅ 完整的Folia适配
  • ✅ 分批异步处理
  • ✅ 详细的日志记录
  • ✅ 任务控制功能(暂停/恢复/停止)
  • ✅ 高度可配置
  • ✅ 智能清理模式(支持仅清理非原版物品)





⚠️ 重要提示

本插件专为 Folia 服务端设计,不兼容传统的 Bukkit/Spigot/Paper 服务端。

如需在传统服务端使用,请使用其他插件。




💬 技术支持

如遇到问题或有功能建议,欢迎在帖子下方留言反馈!
作者
九零
下载
2
查看
75
首次发布
最后更新

评分

0.00 星 0 次评分
后退
顶部 底部