ChunkGenerator
Adaptive, TPS-aware chunk pre-generator for Paper, Purpur and Folia. Auto-tuned to your CPU and heap. Pause, resume and survive restarts.
Оцените первым
42
0
Список изменений
First beta release after a round of production tuning on real hosts. The plugin now ships with auto-scaled throttle defaults calibrated against an actual container-host crash, six chunk-visit patterns, a resume command, and a simplified config aimed at public use.
Added
- Traversal patterns as an optional last argument to
/cg start. Six patterns:center(default, spiral outward from the zone center),edge(concentric rings inward from the outer perimeter to the center), andnorth/south/east/west(linear row or column sweep starting at the named edge). All patterns visit the same set of chunks; only the order differs, and the saved iterator index is pattern-aware so a paused job resumes in its own sequence. /cg resume <world>to restart a paused job from where it left off, completing the start / stop / resume / cancel quartet. Paused jobs were previously only reactivated by a server restart withauto-resume: true. New permission nodechunkgenerator.command.resume.inflight/targetpipeline pressure reading in/cg statusand the periodic console log. When chunks are being submitted but not completing (slow Paper chunk worker, stuck futures, far-out generation) the diagnosis is obvious from one command.- Startup log lines that report the resolved throttle values and
recommend a
paper-global.yml > chunk-system > worker-threadssetting matching the host's core count, so operators do not have to derive the Paper-side tuning themselves. - README sections on container hosts and
MaxRAMPercentage(Pterodactyl, Docker — heap-based monitoring cannot observe the cgroup RSS ceiling) and on maximising sustained throughput (the real ceiling is Paper's chunk worker count, not the plugin's queue depth).
Changed
config.ymlflattened and trimmed for public use. A short Basics block at the top (target-tps, bossbar / actionbar / console toggles,auto-resume) and an Advancedthrottlesection that most servers never need to touch. A banner at the very top points operators atpaper-global.yml > chunk-systemfor the actual speed lever. Thedisplay,monitoringandpersistencewrapper sections are gone — every knob lives at the root now.- Auto-scaled defaults retuned against production data and tied to
the core count rather than the heap alone, with a conservative
30 MB-per-inflight-chunk transient estimate.
max-inflight = max(64, min(cores × 32, heapMB / 60))start-inflight = max(16, cores × 6)
- Default memory thresholds lowered:
memory-backoff-pct85 → 70,memory-pause-pct92 → 80, to keep a margin from the container RSS limit that heap-based monitoring cannot see directly.
Fixed
- Kernel-OOM crash on container hosts (Pterodactyl, exit code 137) when the throttle saturated to its previous auto-scaled ceiling and Paper's chunk save thread fell behind: held chunks plus native memory exceeded the cgroup limit even while JVM heap stayed under the old 85 % backoff threshold.
- ETA no longer overflows to
Long.MAX_VALUE(rendered as2562047788015215h30m) when the smoothed speed decays toward zero. Below 0.01 chunk/s or for predicted ETAs over a year, the status returns?instead of a meaningless number. - Speed readout shows two decimals below 10 chunk/s and one decimal
below 100, so sub-1 chunk/s progress no longer rounds to a flat
0.
Migration
- Delete
plugins/ChunkGenerator/config.ymlafter upgrading so the new flat layout (with thepaper-global.ymltuning banner) regenerates. Old YAMLs still load but stay on the previous keys that the plugin no longer reads.
Файлы
ChunkGenerator-0.1.0-beta.1.jar(81.90 KiB)
ОсновнойМетаданные
Канал релиза
Beta
Номер версии
0.1.0-beta.1
Загрузчики
FoliaPaperPurpur
Версии игры
26.1.2
Загрузок
32
Дата публикации
15.05.2026