Cobblemon区块管理器

Cobblemon区块管理器

一个用于 Minecraft 1.21.1 上 Cobblemon 1.7+ 的服务器端 Fabric 模组,管理每个区块的宝可梦实体密度以减少服务器卡顿。

优化

CobbleChunkManager

一个用于 Minecraft 1.21.1 上 Cobblemon 1.7+ 的服务端 Fabric 模组,用于管理每区块的宝可梦实体密度,以减少服务器卡顿。

功能

生成阻止(Spawn Prevention) — 挂接到 Cobblemon 的生成事件,并在已达到实体预算(默认每区块 16 个)的区块中取消宝可梦生成。这是主要的性能特性——它从一开始就阻止实体被创建,从而减少服务器上的实体总数。

热力图系统(Heatmap System) — 追踪每个已加载区块的活动:宝可梦数量、玩家存在、活跃战斗。每个区块被分类为 HOT(有玩家/战斗的活跃区域)、WARM(中等活动)或 COLD(空旷/闲置)。每 5 秒扫描 50 个区块。

预算强制执行(Budget Enforcement) — 每 10 秒查找超出实体预算的区块,并使用配置的策略处理多余的野生宝可梦:

  • MIGRATE — 将多余的传送到附近有空间的区块
  • DESPAWN — 移除多余的野生宝可梦
  • MIGRATE_THEN_DESPAWN(默认) — 先尝试迁移,无法重新安置的则移除

只有不在战斗中或不忙碌的野生宝可梦会受到影响。已拥有的宝可梦绝不会被触及。

AI 节流(AI Throttling) — 对 COLD 区块中的宝可梦禁用原版 AI(寻路、移动目标)。仅在区块的热度等级发生变化时触发,因此每 tick 的开销几乎为零。

命令

  • /ccm heatmap [radius] — 以可视化网格显示附近区块的热度等级和实体数量
  • /ccm status — 当前区块的详细信息
  • /ccm budget — 服务器范围的预算概览,列出超出预算的区块
  • /ccm migrate — 手动触发当前区块的溢出处理
  • /ccm reload — 热重载配置文件

配置

所有值均可通过 config/cobble_chunk_manager.json 配置——阈值、预算限制、扫描间隔、溢出策略、迁移行为。