
ChunkSpawnerLimiter
Limit entities & blocks in a chunk.
- Загрузки
- 8K
- Подписчики
- 22
- Обновлён
- 6 февраля 2026 г.
- Лицензия
- MIT
Опубликован 7 февраля 2024 г.
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:
Video by BeanHosting Oficial
Thank you Cyprias for making the original version of this plugin.
Ченджлог
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
New unified configuration system
config.ymlandblocks.ymlmerged- Removed obsolete options and added new ones
- Stronger, more sensible defaults
Default config:
https://github.com/sarhatabaot/ChunkSpawnerLimiter/blob/5.0.0/src/main/resources/config.yml
Optional entity group overrides via config
Improved world enable/disable logic (exclude vs excluded handling fixed)
Configurable periodic chunk inspection (default: every 60 seconds)
Entity Handling & Enforcement
- New
modesystem replacingkill-instead-of-remove
Available Modes
enforce(default, recommended) – prevent spawn + remove excessenforce-kill– prevent spawn + kill excessprevent– prevent spawn if limit is reached (CreatureSpawnEvent)kill– kill excess entitiesremove– remove excess entitiesAutomatic 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)
- Removed some options & added new ones
- More powerful defaults. See it here: https://github.com/sarhatabaot/ChunkSpawnerLimiter/blob/5.0.0/src/main/resources/config.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 г.
What's Changed
- Better Task cancelling by @PanSzelescik in https://github.com/sarhatabaot/ChunkSpawnerLimiter/pull/84
Full Changelog: https://github.com/sarhatabaot/ChunkSpawnerLimiter/compare/v4.4.0...v4.4.1
Комментарии
Загружаем…
