• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
ChunkEntityLimiter-可限制单区块以及玩家周围的区块实体、掉落物数量

原创 开源 工具 ChunkEntityLimiter-可限制单区块以及玩家周围的区块实体、掉落物数量 2025-08-05

完成注册/登录后下载
版权类型
原创
插件中文名称
区块实体限制
插件英文名称
ChunkEntityLimiter
原帖地址
#
支持的核心(服务端)
  1. Spigot
  2. Paper
  3. Folia
  4. Purpur
  5. Leaves
  6. 其他核心
语言支持
多语言
适配版本(Java)
  1. 最新版本
  2. 26.x
  3. 1.21
  4. 1.20
[MD] # ChunkEntityLimiter **高性能实体与物品限制器,适用于 Folia、Paper、Bukkit、Purpur 和 Spigot。** 本插件通过智能限制实体和物品数量来优化服务器性能。它采用**双重检查系统**(单个区块限制 + 玩家周围区块限制),既能防止因刷怪塔或大量物品掉落导致的卡顿,又能确保重要实体受到保护。 ## 主要特性 * **原生 Folia 支持:** 完全适配 Folia 的区域线程架构。 * **智能清理逻辑:** **优先清理最老的实体**。根据实体生成时间进行移除,保留新生成的生物,清理存活时间最长的实体。 * **双重限制机制:** 同时对单个区块*和*玩家周围一组区块的实体总量进行限制。 * **精确物品计数:** 可配置选项,按物品堆叠的实际数量计数(例如,一组64个圆石计为64,而不是1)。 * **细致的通知控制:** 分别为**清理报告**和**超限警告**提供通知控制,并可配置通知范围(无、仅管理员、或附近所有玩家)。 * **性能监控:** 内置性能分析器,用于追踪清理各阶段的耗时。 ------------------------------------------------------------------------------------------------------ ## 清理逻辑 1. **分类:** 将实体分为"受保护"和"可清理"两类。 2. **保护检查:** 跳过得保护的实体(被命名、被拴住、被驯服、有装备、Boss等),除非启用了 `clean-protected-if-over-limit`。 3. **排序:** 对可清理实体按**生成时间**进行排序。 4. **执行:** 插件从**最早生成(最老)** 的实体开始移除,直到数量降至限制以下。 ------------------------------------------------------------------------------------------------------ ## 命令与权限 **主命令:** `/chunklimit` **命令别名:** `/cl`, `/climit` | 命令 | 描述 | 权限 | | :--- | :--- | :--- | | **`/chunklimit reload`** | 重新加载配置文件。 | `chunklimiter.reload` (默认:op) | | **`/chunklimit stats`** | 显示当前区块及指定半径内周围区块的详细实体统计信息。 | `chunklimiter.stats` (默认:true) | | **`/chunklimit notify [类型] [范围]`** | 设置通知偏好。<br>• **类型:** `report` (清理结果) 或 `warning` (接近上限)<br>• **范围:** `none` (关闭), `op` (仅管理员), `all` (附近所有人)<br>_示例:_ `/cl notify report op` | `chunklimiter.notify` (默认:op) | | **`/chunklimit performance [reset]`** | 查看性能指标(分类、清理等阶段的执行时间)。 | `chunklimiter.performance` (默认:op) | ------------------------------------------------------------------------------------------------------ #### config.yml ``` # 实体和物品掉落限制配置。它只会清理超出限制的部分。 entity-limits: # 每个区块允许的最大实体数量(除特殊配置外的所有实体) default-limit: 100 # 物品实体的最大数量限制(掉落物) item-limit: 300 # 检查间隔(单位:游戏刻,20 ticks = 1秒) # 为节省性能,推荐设置:600 (30秒) 或 1200 (60秒) check-interval-ticks: 600 # 是否检查玩家周围的区块。0 表示禁用。 # 例如:如果 chunk-check-radius: 1,则计算玩家周围半径 1 内所有区块(3x3)的总上限。 chunk-check-radius: 2 # 玩家周围区块实体限制的倍数。 # 例如:设置为 1.5,则周围区块的实体上限是默认值的 1.5 倍。 chunk_entity_multiplier: 1.5 # 玩家周围区块物品实体限制的倍数。 chunk_item_multiplier: 1.5 # 是否计算物品堆叠数量 # 若为 true,一组64个物品算作64。若为 false,算作1个实体。 count-item-stack-amount: false # 忽略的实体类型(不会被计数和清理) ignored-types: - IRON_GOLEM # 铁傀儡 - VILLAGER # 村民 # 忽略的物品类型(不会被计数和清理) ignored-items: - DIAMOND # 钻石 - NETHERITE_INGOT # 下界合金锭 - ENCHANTED_GOLDEN_APPLE # 附魔金苹果 # 自定义实体限制(覆盖默认限制) custom-limits: ZOMBIE: 200 # 僵尸最大数量 CREEPER: 200 # 苦力怕最大数量 ZOMBIFIED_PIGLIN: 200 # 僵尸猪灵最大数量 # 保护设置,当实体超限时,受保护实体不会被优先清理,但若受保护实体数量过多导致仍超限,它们也可能被清理。 protection: # 保护被命名的实体 protect-named-entities: true # 保护被拴住的实体(默认排除马/驴) protect-leashed-entities: true # 保护驯服的动物(狗/猫/鹦鹉等) protect-tamed-animals: true # 保护有装备的实体(包括掉落的装备) protect-equipped-entities: true # 保护Boss类实体(末影龙、凋灵等) protect-boss-entities: true # 通知设置 settings: # 当数量超限时,是否强制清理受保护的实体 # 若为 true:先清理普通实体,若仍超限则清理受保护实体。 # 若为 false:受保护实体永远不会被清理(但会占用数量名额)。 clean-protected-if-over-limit: true # 是否启用全局单区块清理(阶段1)。 # 若为 false:跳过全局扫描,仅清理玩家附近的区块(阶段2)。对于 Folia 服务端,建议设为 false 以提升性能。 clean-all-loaded-chunks: true # 清理报告通知范围(当实体被清理时) # 选项: NONE (禁用), OP (仅管理员), ALL (所有玩家) cleanup-report-scope: ALL # 超限预警通知范围(当接近上限时) # 选项: NONE (禁用), OP (仅管理员), ALL (所有玩家) overload-warning-scope: ALL # 是否向管理员 (OP) 发送全局清理报告通知(全服广播给OP) # 若为 true:OP 接收所有区块的报告。若为 false:OP 必须在附近才能收到。 op-global-cleanup-report: true # 是否向管理员 (OP) 发送全局超限预警通知(全服广播给OP) # 若为 true:OP 接收所有区块的预警。若为 false:OP 必须在附近才能收到。 op-global-overload-warning: false # 是否将清理报告发送到服务器控制台 console-cleanup-report: true # 预警通知百分比(0-100)。当实体数量达到限制的百分比时触发警告。 notify-threshold: 90 # 预警冷却时间,单位秒(防止通知刷屏) notify-cooldown: 10 # 玩家通知范围半径(单位:方块)。在此范围内的玩家会收到通知。 notification-radius: 128.0 # 设为 true 启用性能监控 performance-monitoring: false # 设为 true 启用调试模式(输出详细日志) debug-mode: false # 语言选项(en/zh) language: en ``` ---------------------------------------------------------------------------------------------------------- ### bStats ![bStats](https://bstats.org/signatures/bukkit/ChunkEntityLimiter.svg) [/MD]
后退
顶部 底部