Перейти к содержимому
Mineforgian

ChunkSpawnerLimiter

Limit entities & blocks in a chunk.

Загрузки
8K
Подписчики
22
Обновлён
6 февраля 2026 г.
Лицензия
MIT

Опубликован 7 февраля 2024 г.

Discord online users

wiki

ChunkSpawnerLimiter

Limits entities & blocks in chunks.

Features

  • Limit any entity per chunk.
  • Limit any block per chunk. (Disabled by default, enable in blocks.yml)
  • Notify players when a limit has been reached via in-game messages or titles.
  • Configurable messages & titles
  • Check limits with any spawn reason: Mob spawn from portal? No problem. A player built an iron golem, sure!
  • Preserve unique entities (named, special meta data)
  • Exclude worlds from being checked by CSL.
  • Pre-made mob groups: Want to limit all animals? Just use the "ANIMAL" group. (Custom groups coming soon)
  • Modded blocks & entities coming soon.

Commands & Permissions

  • /cslreload or /csl reload - Reloads the config.
    • Permission: csl.reload
  • /cslinfo or /csl info - Shows the current spawn reasons & entity limits.
    • Permission: csl.info
  • /cslsettings or /csl settings - Shows the current settings & messages.
    • Permission: csl.settings

📹 Featured Videos

Here are some community-made tutorials and showcases:

Spanish Showcase:

ChunkSpawnerLimiter (CONTROLS Entities and Blocks by CHUNK)

Video by BeanHosting Oficial

Thank you Cyprias for making the original version of this plugin.

Metrics for CSL

Ченджлог

5.0.1Релиз26.1, 26.1.1, 26.1.2 · 6 февраля 2026 г.
  • Fixed GH-104 - Console spam when using spawn eggs.
5.0.0Релиз1.21.9, 1.21.10, 1.21.11 · 4 февраля 2026 г.

v5.0.0 is a complete rewrite of ChunkSpawnerLimiter, focused on performance.


Requirements

  • Java 21+
  • Minecraft 1.8.8 → 1.21.10

Core Rewrite & Architecture

  • Complete internal rewrite of CSL
  • Major performance improvements across all systems
  • Automatic Minecraft version detection for proper CraftBukkit/NMS handling
  • Automatic world size detection — no manual configuration required
  • Cached world lists in config (O(n) → O(1) access)
  • Significant performance improvements in PluginConfig

Configuration Changes


Entity Handling & Enforcement

  • New mode system replacing kill-instead-of-remove

Available Modes

  • enforce (default, recommended) – prevent spawn + remove excess

  • enforce-kill – prevent spawn + kill excess

  • prevent – prevent spawn if limit is reached (CreatureSpawnEvent)

  • kill – kill excess entities

  • remove – remove excess entities

  • Automatic player killing when limits are exceeded (configurable)

  • Spawn eggs are returned to players if consumed while a limit is already reached

  • Improved entity/block removal logic

  • Player notification system for chunk limit violations


Testing & Quality Assurance

  • Major test suite expansion
  • Separate test suites for:
    • Legacy versions (1.8–1.12)
    • Modern versions (1.17+)
    • Unit tests
  • Improved concurrent testing stability
  • Fixed race conditions and resource leaks
  • Resolved missing dependencies and classpath issues

Technical Improvements

  • Complete NMS Block Scanner rewrite
  • Improved version compatibility and reliability
  • Enhanced debug logging for NMS initialization
  • Major performance fix for chunk unload handling

Bug Fixes

  • Fixed CraftBukkit package detection (v1_20_R1, etc.)
  • Fixed world filtering logic (isWorldDisabled)
  • Fixed bad performance on chunk unload
  • Fixed concurrent test race conditions
  • Fixed test compilation and dependency issues

Build & Dependencies

  • Added Adventure API, bStats, and correct API versions for tests
  • Streamlined Gradle build configuration
  • Improved shadow JAR relocation for better library compatibility

Upcoming (Post-5.0.0)

  • Optional third-party region support (non-chunk based), low priority (5.1.0)
  • Advanced per-entity preservation logic
5.0.0-RC5Бета1.21.9, 1.21.10, 1.21.11 · 28 января 2026 г.
  • Fixed bad performance on chunk unload.
  • Eggs should be returned to players on consumption if limit was reached.
  • Cached world list in config (O(n) per access → O(1) per access)
5.0.0-RC4Бета1.21.9, 1.21.10, 1.21.11 · 3 января 2026 г.

TLDR:

Improved performance in regards to the blocks & entities features. Please report any issues on the discord, as I'm still testing performance issues.

Changelog: v5.0.0-RC3 to v5.0.0-RC4

🧪 Testing & Quality Assurance

  • Comprehensive test suite expansion - Added extensive unit and integration tests across multiple Minecraft versions
  • Multi-version test support - Implemented separate test suites for legacy (1.8-1.12), modern (1.17+), and unit tests
  • Test framework improvements - Enhanced concurrent testing, fixed race conditions, and improved resource management

🔧 Technical Improvements

  • NMS Block Scanner overhaul - Complete rewrite of the block scanning system with better version compatibility
  • Version detection system - Added automatic Minecraft version detection for proper CraftBukkit package handling
  • Debug logging enhancement - Added detailed logging for troubleshooting NMS initialization issues

🐛 Bug Fixes

  • CraftBukkit package detection - Fixed ModernNmsScanner to properly detect versioned CraftBukkit packages (v1_20_R1, etc.)
  • World filtering logic - Corrected isWorldDisabled() method to properly handle "excluded" vs "exclude" mode checking
  • Test compilation issues - Resolved missing dependencies and classpath problems across all test suites
  • Concurrent test race conditions - Fixed thread safety issues in test execution

📦 Dependencies & Build

  • Test dependencies - Added adventure API, bStats, and proper API versions for all test configurations
  • Gradle configuration - Streamlined build process with proper test suite organization
  • Library relocation - Improved shadow jar configuration for library compatibility

🎯 Configuration & Features

  • Notification system - Added player notification features for chunk limit violations
  • Inspection frequency - Configurable periodic chunk inspection (default: every 60 seconds)
  • World filtering - Enhanced world enable/disable functionality
  • Removal modes - Improved entity/block removal logic and player kill options
5.0.0-RC1Бета1.21.8, 1.21.9, 1.21.10 · 19 октября 2025 г.

5.0.0 is a complete re-write of CSL.

  • Java 21+ Required
  • New config (Merged config.yml + blocks.yml)
  • 1.8.8 -> 1.21.10 Support
  • Automatic world size detection, no need to set in config.
  • Overriding entity groups in config (optional).
  • Better performance (finally)
  • Automatically kill players if a limit has been reached.
  • Replaced kill-instead-of-remove with a new "mode" setting:
    • Options: enforce (default - recommended), enforce-kill, prevent, kill, remove kill -> "kill-instead-of-remove" prevent -> don't spawn the mob if the limit is reached (using CreatureSpawnEvent) enforce -> prevent+remove enforce-kill -> prevent+kill

Upcoming Features

  • Possible third party region support instead of chunks (later, low priority, 5.1.0)
  • Advanced per entity preservation

https://github.com/sarhatabaot/ChunkSpawnerLimiter/releases/tag/v5.0.0-RC1

4.4.4Релиз1.21.6, 1.21.7, 1.21.8 · 3 августа 2025 г.
  • Fixed an NPE GH-#89.
  • Code cleanup & optimizations.
4.4.2Релиз1.21.3, 1.21.4, 1.21.5 · 23 апреля 2025 г.
  • Fixes an issue where an illegal state is triggered.

https://github.com/sarhatabaot/ChunkSpawnerLimiter/releases/tag/v4.4.2

4.4.1Релиз1.21.3, 1.21.4, 1.21.5 · 22 апреля 2025 г.

Комментарии

Загружаем…