World Spawn Control (WSC) is a Minecraft server plugin for Paper that helps you control how many mobs can exist by blocking new spawns before they happen. It is built for survival, economy, and performance-focused networks where natural spawning and spawner-based spawning need different rules, and where you want separate caps per world, per chunk, per mob group (for example Animals vs Monsters), and per individual mob type.
A: Yes. It is stack-aware and built for WildStacker environments.
Q: Can I separate natural and spawner limits?
A: Yes, they are fully independent categories.
Q: Can I ignore named mobs?
A: Yes, named mobs are ignored by design.
Q: Can I apply config changes without restart?
A: Yes, use /wsc reload.
Discord server for Support and Project feedback is available here:
https://discord.gg/aS5QKrC9jJ
What this plugin actually does
- Cancels spawn attempts that would exceed your configured limits. It does not delete, clear, or mass-remove mobs that are already alive; it only stops new entities from being created when a limit would be exceeded.
- Treats natural spawning and spawner spawning as two separate categories, each with its own limits and settings. You can tune overworld, Nether, End, or any world independently.
- Supports a three-level limit system so you can match how you think about your server:
- Level 1 — World scope: global caps for that world/category (for example mobs per world).
- Level 2 — Groups: caps for custom groups you define (for example ANIMALS, MONSTERS, NETHER, END, or your own lists).
- Level 3 — Individual mobs: caps for specific EntityTypes (for example skeletons separate from zombies), plus an OTHER fallback for mobs you did not name explicitly.
- Each level has its own enforce: true/false toggle. When enforcement is on for a level, all enabled limits at that level must pass for a spawn to be allowed.
- Always ignores named mobs for counting and limiting (named entities are treated as outside the system by design).
- Hot-reloads configuration without a full server restart using /wsc reload, including rebuilding internal counters when configured so changes apply predictably after edits.
- Ships with a commented default YAML configuration that explains how limits interact (for example when a group cap is lower than a mob cap, the stricter path wins first).
- Uses versioned config files (for example config_<version>.yml) so updates stay aligned with the feature set and you are not silently loading an outdated layout.
WildStacker compatibility (optional, not required)
WildStacker is not a hard dependency. If WildStacker is present and enabled in the config, WSC integrates to treat stack sizes correctly for limits and counter updates. When a stacked spawn would overshoot a cap, WSC can trim the stack so you can land on exact numeric caps instead of only multiples of the stack size (for example useful when caps like 25 do not line up with stacks of 4). If WildStacker is not installed, the plugin still functions for normal single-entity spawns.MythicMobs compatibility (optional, not required)
MythicMobs is not a hard dependency. WSC can optionally ignore all MythicMobs spawns so custom mobs and Mythic-driven content do not interfere with your vanilla-style spawn budgets. Detection is implemented in a way that does not require MythicMobs at compile time.Commands and permissions
- /wsc reload — reload configuration and rebuild counters (permission: wsc.reload).
- General plugin access / help is gated by wsc (as implemented in the plugin).
Who this is for / common use cases
- Servers that need chunk spawn limits and worldwide mob caps without unreliable “cleanup” plugins.
- Networks that run grinders and spawners and need spawner-specific limits separate from natural mob caps.
- Admins who want per-mob fine control (for example skeleton vs creeper) plus group rollups (for example all monsters).
- Setups using multiple worlds (overworld, world_nether, world_the_end, custom worlds) with different rules per world.
Important limitations (clear expectations)
- This is a spawn cancellation plugin: it does not replace a dedicated mob cleanup/maintenance system if you need to purge existing entities.
- Named mobs are always excluded from limits; this is intentional.
- Correct behavior depends on careful config tuning when multiple limits are enabled at once; the bundled config explains evaluation order and enforce flags.
Why This Plugin Is Different
- Designed for real stacked-spawn servers (not just vanilla assumptions)
- Handles “near-cap” stacked spawn cases more gracefully
- Clearer hierarchy than flat-limit plugins
- Focused on cancel/block behavior (no forced cleanup/removal workflows)
Compatibility
- Platform: Paper
- Tested MC version: 1.21.11
- WildStacker: Supported (reflection-based integration)
- MythicMobs: Compatible (with ignore option)
- Spigot/CraftBukkit: Not officially targeted/recommended
Installation
- Stop your server.
- Place worldspawncontrol-1.0.0.jar into /plugins/.
- Start server once to generate config_1.0.0.yml.
- Edit config to your needs.
- Run /wsc reload or restart server.
- Check console/log output with debug: true during setup. This can be turned to false once you are happy with your World Spawn Control setup. No restart needed.
Support / Update Policy
- Fast bug-fix updates when reproducible logs/config are provided
- Ongoing compatibility maintenance for supported Paper versions
- Config schema remains versioned to prevent migration breakage
FAQ
Q: Does this work with WildStacker?A: Yes. It is stack-aware and built for WildStacker environments.
Q: Can I separate natural and spawner limits?
A: Yes, they are fully independent categories.
Q: Can I ignore named mobs?
A: Yes, named mobs are ignored by design.
Q: Can I apply config changes without restart?
A: Yes, use /wsc reload.
Discord server for Support and Project feedback is available here:
https://discord.gg/aS5QKrC9jJ
