DontSpawn!

plugin to block entity spawning

42

Quick challenge

How far can you run before the mobs catch you?

DontSpawn!

DontSpawn (Paper Plugin)

DontSpawn is a lightweight yet powerful Paper plugin that provides advanced, fine-grained control over entity spawning. Create flexible rules to block spawns globally or based on specific contexts such as world, biome, region, or spawn reason — all managed through a clean and intuitive `/dt` command system.

Built for modern Paper servers with performance and scalability in mind.

---

Features

- Block entity spawns by scope: - Global - World - Biome - Region - SpawnReason - Region selection system with a wand (no manual coordinate typing). - Per-player region border preview using particles (only visible to the viewing player). - Persistent JSON storage (`regions.json`, `rules.json`). - Optimized spawn listener designed for high-performance servers. - Clean, structured command architecture.

---

Requirements

- Java: Paper (Minecraft 1.21.x, tested on 1.21.1) - Java: Java 21 recommended for 1.21.x servers

---

Installation

1. Download the plugin `.jar` file. 2. Place it inside your server’s `plugins/` folder. 3. Restart the server. 4. Use `/dt` to manage rules and regions.

---

Commands

Main command: `/dontspawn`

Aliases: `/dt`, `/ds`

---

Spawn Rules

``` /dt disable <global|world|region|biome|reason> <entity> [value] /dt enable <global|world|region|biome|reason> <entity> [value] /dt list /dt info /dt reload ```

Examples

``` /dt disable global ZOMBIE /dt disable world SKELETON world /dt disable biome SPIDER PLAINS /dt disable reason ZOMBIE SPAWNER /dt disable region CREEPER spawn ```

Use `enable` with the same arguments to revert a rule.

---

Regions (Wand + Preview)

``` /dt wand ```

- Left-click a block → Position 1 - Right-click a block → Position 2

After selecting both corners, the plugin will guide you to finalize and save the region.

``` /dt view ```

Toggle region border visualization for yourself using particle outlines.

---

Permissions

Permissions use the `dontspawn.*` namespace, including:

- `dontspawn.disable` - `dontspawn.enable` - `dontspawn.wand` - `dontspawn.view` - `dontspawn.reload` - and others as needed

---

Data Files

DontSpawn stores persistent data inside its plugin folder:

- `regions.json` — Saved regions - `rules.json` — Saved spawn rules

---

Support & Issues

Source Code: https://github.com/zHolyWhite/DontSpawn

Bug Reports: https://github.com/zHolyWhite/DontSpawn/issues

When reporting an issue, please include:

- Paper build/version - Plugin version - Full console stacktrace - Steps to reproduce

ADS