XSpawners
Stackable, Managed Spawners for XCore
Built on XCore — The modular Minecraft server framework
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Replace vanilla spawners with a fully managed stackable system — ownership, protection, custom drops, holograms, alerts, a paginated admin GUI and a per-spawner management menu.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- Owner tracking — every managed spawner remembers its placer.
- Protection — only the owner can break or mutate, silk-touch required for naturals.
- Egg-change block — prevents type swaps with a spawn egg.
- Place on top — placing a same-type spawner over an existing one adds to the stack.
- Shift + Right-click with a spawner item of the same type → merges into the stack without consuming a block.
- Merge-radius — optional merge with same-owner same-type spawners within N blocks.
- Stack cap configurable (default 1000).
- Spawn-rate multiplier — spawn count scales with the stack.
⬆ Upgrades (Vault economy)
- Three upgrade tracks —
rate(faster spawning),radius(wider spawn range),cap(higher nearby-entity cap). - Owner-paid —
/spawners upgrade <rate|radius|cap>while looking at the block, cost scales per level via Vault. - Fully configurable — max level and cost per track. Disabled by default (
upgrades.enabled).
/spawners transfer <player>while looking at your spawner hands ownership over — the new owner gets notified.
- Per-player cap — limit how many managed spawners a player can own network-wide.
- Per-chunk cap — limit managed spawners inside a single chunk to keep farms in check.
- Both bypassed by
xspawners.bypass.0= unlimited.
🛡 WorldGuard Integration
- Registers a custom region flag
xspawners-allow(defaultALLOW). - Set it to
DENYon a region to block spawner placement there. - Optional — fails open if WorldGuard isn't installed.
🎛 Per-spawner management GUI
- Shift + Left-click a managed spawner → opens a dedicated menu.
- Displays type, owner, stack count, placed date, coordinates, spawn rate, entity cap.
- Take 1 : extracts a single spawner item from the stack.
- Take all : breaks the block and gives a single item representing the whole stack.
- Persistent data — type + count in the item PDC.
- Configurable name and lore via
spawner-item.*. - Admin give —
/spawners give <player> <type> <count> [stack](count= items,stack= stacked spawners per item, default 1).
- Live stack count + type + owner above each block, rendered by FancyHolograms.
- Optional — the addon runs fine without it, just no holograms.
🖱 Admin GUI
- /spawners — paginated list of every managed spawner, live refresh.
- /spawners <owner> — filter by owner name.
- Click actions : left = teleport, shift + right = remove.
- YAML-defined layout in
guis/spawners.ymlandguis/spawner_manage.yml.
- Stored in XCore's shared database.
- Cross-server sync via XCore's sync channel.
- Auto-save every N minutes.
- Configurable broadcasts on place / break.
- Per-player toggle via
/spawners notif(permissionxspawners.notif). - Gated by
xspawners.alerts.
- REST endpoints for full list and per-type stats.
- Same bearer token as XCore's web panel.
- Folia-ready — block and entity operations on the owning region thread.
- Fully localized — every string in
lang.yml, MiniMessage format.
/spawners— admin GUI./spawners <owner>— filter by owner./spawners notif— toggle alerts (requiresxspawners.notif)./spawners upgrade <rate|radius|cap>— upgrade the spawner you're looking at (Vault-priced)./spawners transfer <player>— transfer ownership of the spawner you're looking at./spawners reload— reload config, lang and GUI YAML./spawners give <player> <type> <count> [stack]— admin give.countis the number of items handed to the player, optionalstackis the stacked-spawner value baked into each item (default 1).
xspawners.admin—/reloadand/give.xspawners.bypass— break or interact with spawners you don't own, skip silk-touch and placement limits.xspawners.alerts— receive place / break broadcasts.xspawners.notif— toggle your own place / break alerts via/spawners notif.xspawners.update— receive update notifications on join (default: op).
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Requirements
☐ Paper 1.21.1+ (Folia compatible)
☐ Java 21+
☐ XCore (framework)
☐ FancyHolograms 2.8.0+ (optional — for stack count holograms)
☐ Vault (optional — required for the upgrade economy)
☐ WorldGuard (optional — for the
☐ PlaceholderAPI (optional)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Installation
1. Place
2. Place
3. (Optional) Install
4. Start the server
5. Configure
6. Customize messages in
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Links
Documentation
Discord
Website
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Screenshots
Made with
by Xyness
☐ Paper 1.21.1+ (Folia compatible)
☐ Java 21+
☐ XCore (framework)
☐ FancyHolograms 2.8.0+ (optional — for stack count holograms)
☐ Vault (optional — required for the upgrade economy)
☐ WorldGuard (optional — for the
xspawners-allow region flag)☐ PlaceholderAPI (optional)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. Place
XCore.jar in plugins/2. Place
XSpawners.jar in plugins/XCore/addons/3. (Optional) Install
FancyHolograms for stack-count holograms4. Start the server
5. Configure
plugins/XCore/addons/XSpawners/config.yml6. Customize messages in
plugins/XCore/addons/XSpawners/lang.yml━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Made with
