Stackable, managed spawner addon for XCore. A fully configurable replacement for the vanilla spawner block: owners, stacks, protection, per-type display names, configurable drops, holograms, web dashboard, cross-server sync.
- Every placed spawner is tracked in the
xspawnerstable with owner UUID / name, type, count, location and placement date. - Ownership is enforced at break and egg-change — bypass with the
xspawners.bypasspermission. - Natural spawners can require Silk Touch to be broken (toggleable).
- Placing a spawner of the same type on top of an existing one adds to the stack (up to a configurable limit, default 1000).
- Optional merge-radius: placing within N blocks of an existing stack of the same owner/type merges into that stack (useful for dense farms).
- Stack count is shown above the block via FancyHolograms (optional).
- Spawn rate can optionally be multiplied by the stack count, with a configurable nearby-entity cap to avoid lag.
- Broken spawners drop a custom item with persistent type + count data stored in its PDC — the item can be stacked with the same-type/count via standard Minecraft stacking rules.
- Display name and lore lines come from
config.ymland use MiniMessage. - Admins can give any spawner via
/spawners give <player> <type> <count> [stack]—countis the number of inventory items handed to the player, optionalstack(default 1) is the stacked-spawner value carried by each item.
- Owners level up a managed spawner with
/spawners upgrade <rate|radius|cap>while looking at the block.rate— shaves spawn delay (default 15% per level, up to 5 levels).radius— widens the spawn range (blocks per level).cap— raises the nearby-entity cap before the spawner pauses.
- Cost scales linearly:
cost-per-level × (current-level + 1), paid via Vault. - Disabled by default — set
upgrades.enabled: trueinconfig.yml.
/spawners transfer <player>while looking at your managed spawner hands ownership to another player (the new owner receives a message).
limits.max-per-player— cap the managed spawners a single player can own (network-wide).0= unlimited.limits.max-per-chunk— cap the managed spawners inside one chunk.0= unlimited.- Both checks are skipped for
xspawners.bypass.
- Registers a custom region flag
xspawners-allow(defaultALLOW). - Set the flag to
DENYon a region to block spawner placement there. - Reflection-based — if WorldGuard is missing, the check fails open and the rest of the addon keeps working.
/spawners— admin view of every managed spawner (paginated 45/page, blinking tp / remove buttons, navigation on slots 48/49/50)./spawners <owner>— filter by owner name.- Left-click teleports to the spawner block, shift+right-click removes it from the database.
- Reflection-based FancyHolograms hook — if FancyHolograms is missing, holograms silently no-op and the rest of the addon keeps working.
- Lines configurable via
hologram.lines(placeholders:%type%,%count%,%owner%).
- UPDATE / DELETE messages broadcast on XCore's sync channel so multiple servers sharing a database stay in sync.
GET /api/xspawners/list— full list (owner, type, count, location).GET /api/xspawners/stats— total count, stack count, per-type breakdown.- Bearer-token auth (XCore's web panel token).
- All scheduling via XCore's
SchedulerAdapter. - Block mutations happen on the region thread owning the block.
- Async teleports via
teleportAsync.
| Command | Description | Permission |
|---|---|---|
/spawners |
Open the admin GUI. | none (see xspawners.admin for filtered access) |
/spawners <owner> |
Filter by owner name. | none |
/spawners notif |
Toggle your place/break alerts. | none |
/spawners upgrade <rate|radius|cap> |
Upgrade the spawner you're looking at (Vault-priced). | none (owner / xspawners.bypass) |
/spawners transfer <player> |
Transfer ownership of the spawner you're looking at. | none (owner / xspawners.bypass) |
/spawners reload |
Reload config and lang. | xspawners.admin |
/spawners give <player> <type> <count> [stack] |
Give count spawner items, each carrying a stacked-spawner value of stack (default 1). |
xspawners.admin |
| Permission | Description |
|---|---|
xspawners.admin |
Required for /spawners reload and /spawners give. |
xspawners.bypass |
Place/break spawners you don't own, skip silk-touch. |
xspawners.alerts |
Receive broadcast alerts for place/break events. |
xspawners.update |
Receive update notifications on join (default: op). |
See the fully commented config.yml for stacking, protection, notification,
hologram and item display configuration.
All visible strings live in lang.yml in MiniMessage format.
- XCore 1.0.4+ (required)
- FancyHolograms 2.8.0+ (optional — hologram-free mode is supported)
- Vault (optional — required only for the upgrade economy)
- WorldGuard (optional — for the
xspawners-allowregion flag) - PlaceholderAPI (optional)
- Minecraft 1.21.1+
- Paper / Folia
- Java 21+