Appearance
Configuration reference
These are the bundled defaults. Edit your installed files, not this page. Expand only the file you need.
Back up before editing. Keep YAML indentation; quote text with # or &. Missing default settings and messages are added on reload while your values are preserved. Restart after scheduler timing changes.
Common changes
| Setting | Purpose |
|---|---|
spawners.base-interval-seconds | Seconds between production cycles before upgrades |
spawners.maximum-stack | Maximum spawners in one block |
spawners.maximum-storage-stacks | Storage capacity in stacks |
spawners.public-access | Allow non-owners to access spawners |
spawners.public-controls | Allow public control actions |
spawners.hopper-output | Allow container output |
spawners.adopt-existing | Adopt existing vanilla spawners; off by default |
spawners.upgrades | Upgrade tiers and coin costs |
teleportation.warmup-seconds | Wait before teleporting |
Upgrade prices use Vault coins. Legacy shard-cost fields have no effect in this standalone plugin.
Drops and prices
In spawners.yml, loot chooses materials, amounts and chances (0–1). xp sets banked XP per roll. sell-prices sets the coin value of one item. Unpriced items stay available to collect.
Values under spawners.loot, spawners.xp or spawners.sell-prices in config.yml override the matching table entries. Apply table changes with /spawners reload. Existing spawner tables are preserved on updates; compare new defaults and merge any wanted changes yourself.
Production is periodically saved. A hard crash can lose production since the last flush; collection and sales persist immediately. Keep backups.
Default files
config.yml
yaml
#
# GsSpawners settings — restart after changing timing settings.
# Text and colors: messages.yml | Reload: /gsspawners reload
# icons.chat.mode: auto = item icon, text = symbol, off = no icon.
# Texture examples: minecraft:item/diamond, minecraft:item/emerald, minecraft:block/spawner.
# feedback.boss-bars is optional; messages and countdown text are in messages.yml.
brand: GsSpawners
feedback:
sounds: true
particles: true
titles: true
action-bars: true
chat: true
boss-bars: false
boss-bar-seconds: 3
boss-bar-color: YELLOW
boss-bar-style: PROGRESS
icons:
mode: auto
chat:
mode: auto
texture: minecraft:item/gold_ingot
text: '&#F5C451◆'
spawners:
enabled: true
adopt-existing: false
notify-when-full: true
full-notice-minutes: 60
claim-unowned: true
public-access: false
public-controls: false
hopper-output: true
storage-flush-seconds: 20
maximum-stack: 10000
stack-scaling: 1.0
require-silk-touch: true
shift-break-batch: 64
owner-only-break: true
tick-period: 20
base-interval-seconds: 30
minimum-interval-seconds: 5
base-activation-range: 24.0
maximum-storage-stacks: 54
maximum-stored-xp: 100000
xp-flush-seconds: 30
isolation:
enabled: true
radius: 12.0
bonus: 0.5
anti-esp:
enabled: true
fake-block: STONE
radius: 48
sweep-ticks: 10
raytrace-budget-per-tick: 80
upgrades:
speed:
maximum-tier: 5
coin-cost: 33750
shard-cost-from-tier: 3
shard-cost: 200
currency: coins
count:
maximum-tier: 5
coin-cost: 54000
shard-cost-from-tier: 3
shard-cost: 340
currency: coins
range:
maximum-tier: 3
coin-cost: 81000
shard-cost-from-tier: 2
shard-cost: 405
currency: coins
teleportation:
combat-tag-seconds: 15
combat-bar: true
warmup-seconds: 5
staff-bypass: true
home-cooldown-seconds: 5
tpa-request-lifetime-seconds: 60
tpa-request-cooldown-seconds: 10
punish-combat-logging: false
tpa-menu-for-friends-only: falsemessages.yml
yaml
#
# GsSpawners messages — edit the quoted text, keep the keys.
# Reload: /gsspawners reload
# Colors: '&aGreen', '&#F5C451Gold', '#F5C451Gold', '<#F5C451>Gold', '§aGreen'.
# Keep placeholders such as {amount}; their values come from the plugin.
# Use an empty string '' to hide an individual message. Icons are in config.yml.
# format = layout; action-bar/boss-bar = live status; messages = chat feedback.
# overrides preserves older custom overrides; new setups use readable keys below.
format:
prefix: '{icon} &#F5C451{brand} &8› '
chat: '{prefix}{tone} &f{message}'
action-bar: '{message}'
boss-bar: '{message}'
tones:
success: '&a✓'
error: '&c!'
warning: '&e!'
info: '&b➜'
denied: '&d!'
action-bar:
teleport: '&7Teleport to &f{destination} &8· &b{seconds}s &8· &7Do not move'
teleport-bypass: '&aTeleporting to {destination} &7(staff bypass)'
teleport-complete: '&aTeleporting to {destination}'
teleport-cancelled: '&cTeleport cancelled: {reason}'
combat: '&c⚔ In combat &f{opponent} &7{health} HP &8· &e{seconds}s'
combat-ended: '&a✓ Out of combat'
spawner-stacked: '&a{mob} Spawner &8· &f{stacked} stacked'
boss-bar:
teleport: '&fTeleport to {destination} &8· &e{seconds}s'
combat: '&cIn combat with {opponent} &8· &f{seconds}s'
messages:
gs-plugin:
admin-permission-required: admin permission required.
golden-menu-listener:
that-menu-action-failed-check-your-balance: that menu action failed. Check your balance or inventory before
retrying.
prompts:
type-in-chat-or-cancel-expires-in: '{question} — type in chat, or ''cancel''. Expires in 60s.'
input-cancelled: Input cancelled.
input-is-limited-to-160-characters: Input is limited to 160 characters.
the-action-failed-contact-an-administrator: The action failed. Contact an administrator.
spawner:
world-unavailable: that world is not loaded.
teleported: teleported to your {mob} spawner.
received: you received {amount}× {mob} spawner.
claimed: this {mob} spawner had no owner, so it is yours now.
no-mob: that spawner has no mob set.
placement-failed: Storage unavailable; placement cancelled.
placed: placed a {mob} spawner. Right-click it to collect its drops.
wrong-mob: that is a {mob} spawner; this one holds {mob2}.
stack-limit: this spawner is already at the stack limit of {maximum}.
not-owner: This spawner belongs to someone else.
silk-touch-required: Use Silk Touch to mine this spawner.
empty-before-mining: Collect or sell the stored loot and claim XP before mining the final spawner.
empty-slot-required: Make an empty inventory slot first.
mining-failed: Storage unavailable; nothing was mined.
mined: Collected {taken} spawner(s). {remaining} remain.
storage-full: your {mob} spawner store is full at {remaining} items, so it has stopped producing. Sell or collect
it to start it again.
no-sell-price: nothing in this spawner has a sell price yet.
sold: '&aSold {amount} items for &#F5C451{coins} coins.'
no-xp: there is no experience banked here yet.
claimed-xp: claimed {claimed} experience from the spawner.
more-storage: this store holds more kinds than one page shows; collect some to see the rest.
upgrade-unaffordable: You cannot afford this upgrade.
mine-last: mine the last one with Silk Touch to remove the block.
inventory-full: Your inventory is full. The remaining items are safe in the spawner.
started: '&aSpawner started.'
paused: '&eSpawner paused.'
storage-empty: There are no items to collect.
collected: '&aCollected {amount} items. &7Still stored: {remaining}.'
collected-material: '&aCollected {amount} {item}. &7Still stored: {remaining}.'
withdrawn: Withdrew {amount} spawners. {remaining} remain in the stack.
stacked: 'Added {amount} {mob} spawners. Stack: {stacked}.'
teleport:
in-combat: you cannot teleport to {destination} during combat. Wait {remaining}s.
already-pending: you already have a teleport counting down.
cancelled: 'your teleport was cancelled: {reason}.'
admin:
reloaded: '&aSettings and messages reloaded.'
usage: /{command} admin | setbrand <name> | set <key> <value> | reload | audit
permission: '&cYou need {permission}.'
brand-updated: Brand updated to {brand}.
setting-updated: Updated {setting}.
console: Use setbrand, set, reload or audit from console.
audit-empty: No uncertain payments awaiting review.
audit-results: '{entries}'
errors:
detail: '&c{detail}'
action-failed: '&cThe action failed. Check your balance before retrying or contact staff.'
license:
pending: 'Activation pending. Use /{command} license status. Support: https://discord.gg/QPYeUjBxYe'
status: '{status}
Installation: {installation}
Support: {support}'
command:
give-usage: /spawners give <player> <mob> <amount>
reload-denied: You cannot reload the spawner tables.
tables-reloaded: 'Reloaded spawners.yml: {amount} mob loot tables.'
give-denied: You cannot give spawners.
player-offline: That player is not online.
unknown-mob: 'Unknown mob: {mob}.'
invalid-amount: Enter a whole number.
amount-range: The amount must be between 1 and 1000.
given: Gave {amount} {mob} spawners to {player}.
reasons:
moved: 'you moved'
damage: 'you took damage'
overrides: {}spawners.yml
yaml
#
# GsSpawners — spawners.yml
# Spawner tables: what each mob produces, the experience it banks, and what its drops sell for.
#
# Edit this file to change mob drops, XP and prices. Apply with /spawners reload.
#
# loot what one production cycle can produce. 'chance' is 0-1 and is rolled once per stacked
# spawner per count tier, so a 16x stack with count tier 1 rolls each line 32 times.
# A mob with no block here produces nothing — that is the menu's "No loot table".
# xp experience banked per roll. Scaled by the same multiplier loot is: stack size, count
# tier and the isolation bonus all apply. A mob absent here banks none.
# sell-prices what one item pays when a store is sold from the spawner menu, in coins. Anything
# without a positive price stays in storage for collection by hand.
#
# config.yml's own spawners.loot, spawners.xp and spawners.sell-prices still override this file, per
# mob and per material, so a server that already tuned them there keeps its numbers.
#
# Existing tables are preserved on updates. Compare new defaults and merge wanted changes manually.
config-version: 1
loot:
# Farm animals. Cheap to buy, cheap per cycle, and the food economy runs on them.
COW:
- { material: BEEF, amount: 2, chance: 1.0 }
- { material: LEATHER, amount: 1, chance: 0.5 }
MOOSHROOM:
- { material: BEEF, amount: 2, chance: 1.0 }
- { material: LEATHER, amount: 1, chance: 0.5 }
- { material: RED_MUSHROOM, amount: 1, chance: 0.4 }
PIG:
- { material: PORKCHOP, amount: 2, chance: 1.0 }
SHEEP:
- { material: MUTTON, amount: 2, chance: 1.0 }
- { material: WHITE_WOOL, amount: 1, chance: 0.6 }
CHICKEN:
- { material: CHICKEN, amount: 1, chance: 1.0 }
- { material: FEATHER, amount: 1, chance: 0.6 }
RABBIT:
- { material: RABBIT, amount: 1, chance: 1.0 }
- { material: RABBIT_HIDE, amount: 1, chance: 0.5 }
- { material: RABBIT_FOOT, amount: 1, chance: 0.1 }
BEE:
- { material: HONEYCOMB, amount: 1, chance: 0.3 }
TURTLE:
- { material: TURTLE_SCUTE, amount: 1, chance: 0.2 }
SQUID:
- { material: INK_SAC, amount: 2, chance: 1.0 }
GLOW_SQUID:
- { material: GLOW_INK_SAC, amount: 2, chance: 1.0 }
COD:
- { material: COD, amount: 1, chance: 1.0 }
SALMON:
- { material: SALMON, amount: 1, chance: 1.0 }
TROPICAL_FISH:
- { material: TROPICAL_FISH, amount: 1, chance: 1.0 }
PUFFERFISH:
- { material: PUFFERFISH, amount: 1, chance: 1.0 }
# Overworld hostiles. What a dungeon spawner would have given, minus the fighting.
ZOMBIE:
- { material: ROTTEN_FLESH, amount: 2, chance: 1.0 }
- { material: IRON_INGOT, amount: 1, chance: 0.04 }
HUSK:
- { material: ROTTEN_FLESH, amount: 2, chance: 1.0 }
- { material: IRON_INGOT, amount: 1, chance: 0.04 }
DROWNED:
- { material: ROTTEN_FLESH, amount: 2, chance: 1.0 }
- { material: COPPER_INGOT, amount: 1, chance: 0.11 }
- { material: NAUTILUS_SHELL, amount: 1, chance: 0.03 }
SKELETON:
- { material: BONE, amount: 2, chance: 1.0 }
- { material: ARROW, amount: 2, chance: 0.5 }
STRAY:
- { material: BONE, amount: 2, chance: 1.0 }
- { material: ARROW, amount: 2, chance: 0.5 }
BOGGED:
- { material: BONE, amount: 2, chance: 1.0 }
- { material: ARROW, amount: 1, chance: 0.5 }
SPIDER:
- { material: STRING, amount: 2, chance: 1.0 }
- { material: SPIDER_EYE, amount: 1, chance: 0.33 }
CAVE_SPIDER:
- { material: STRING, amount: 2, chance: 1.0 }
- { material: SPIDER_EYE, amount: 1, chance: 0.33 }
CREEPER:
- { material: GUNPOWDER, amount: 2, chance: 1.0 }
SLIME:
- { material: SLIME_BALL, amount: 2, chance: 1.0 }
ENDERMAN:
- { material: ENDER_PEARL, amount: 1, chance: 1.0 }
PHANTOM:
- { material: PHANTOM_MEMBRANE, amount: 1, chance: 0.5 }
WITCH:
- { material: REDSTONE, amount: 2, chance: 0.5 }
- { material: GLOWSTONE_DUST, amount: 1, chance: 0.4 }
- { material: SUGAR, amount: 1, chance: 0.4 }
- { material: GLASS_BOTTLE, amount: 1, chance: 0.3 }
- { material: GUNPOWDER, amount: 1, chance: 0.3 }
GUARDIAN:
- { material: PRISMARINE_SHARD, amount: 2, chance: 1.0 }
- { material: PRISMARINE_CRYSTALS, amount: 1, chance: 0.4 }
PILLAGER:
- { material: ARROW, amount: 2, chance: 0.5 }
- { material: EMERALD, amount: 1, chance: 0.1 }
VINDICATOR:
- { material: EMERALD, amount: 1, chance: 0.2 }
# Golems. Built rather than bred, so they pay in metal.
IRON_GOLEM:
- { material: IRON_INGOT, amount: 3, chance: 1.0 }
- { material: POPPY, amount: 1, chance: 0.2 }
SNOW_GOLEM:
- { material: SNOWBALL, amount: 4, chance: 1.0 }
# Nether. The expensive end of the shard shop, and the only skull line in the game.
BLAZE:
- { material: BLAZE_ROD, amount: 1, chance: 1.0 }
- { material: GLOWSTONE_DUST, amount: 1, chance: 0.2 }
MAGMA_CUBE:
- { material: MAGMA_CREAM, amount: 1, chance: 1.0 }
WITHER_SKELETON:
- { material: BONE, amount: 2, chance: 1.0 }
- { material: COAL, amount: 1, chance: 0.5 }
- { material: WITHER_SKELETON_SKULL, amount: 1, chance: 0.025 }
ZOMBIFIED_PIGLIN:
- { material: ROTTEN_FLESH, amount: 1, chance: 1.0 }
- { material: GOLD_NUGGET, amount: 2, chance: 1.0 }
- { material: GOLD_INGOT, amount: 1, chance: 0.08 }
PIGLIN:
- { material: GOLD_NUGGET, amount: 2, chance: 0.5 }
HOGLIN:
- { material: PORKCHOP, amount: 3, chance: 1.0 }
- { material: LEATHER, amount: 1, chance: 0.5 }
GHAST:
- { material: GUNPOWDER, amount: 1, chance: 1.0 }
- { material: GHAST_TEAR, amount: 1, chance: 0.5 }
STRIDER:
- { material: STRING, amount: 2, chance: 1.0 }
BREEZE:
- { material: BREEZE_ROD, amount: 1, chance: 0.5 }
# End. Only ever handed out by staff, and priced for it.
SHULKER:
- { material: SHULKER_SHELL, amount: 1, chance: 0.25 }
# Experience banked per roll. Roughly what killing the mob by hand pays, so a spawner farm is worth
# about what grinding it would be. Iron and snow golems pay nothing in vanilla; here they pay, because
# a golem spawner is bought with shards and an XP button that never lights up reads as broken.
xp:
# Animals
COW: 3
MOOSHROOM: 3
PIG: 3
SHEEP: 3
CHICKEN: 2
RABBIT: 2
BEE: 3
TURTLE: 2
SQUID: 2
GLOW_SQUID: 3
COD: 1
SALMON: 1
TROPICAL_FISH: 1
PUFFERFISH: 1
# Overworld hostiles
ZOMBIE: 5
HUSK: 5
DROWNED: 5
SKELETON: 5
STRAY: 5
BOGGED: 5
SPIDER: 5
CAVE_SPIDER: 5
CREEPER: 5
SLIME: 4
ENDERMAN: 5
PHANTOM: 5
WITCH: 6
GUARDIAN: 10
PILLAGER: 5
VINDICATOR: 5
# Golems
IRON_GOLEM: 10
SNOW_GOLEM: 4
# Nether
BLAZE: 10
MAGMA_CUBE: 6
WITHER_SKELETON: 5
ZOMBIFIED_PIGLIN: 5
PIGLIN: 5
HOGLIN: 5
GHAST: 5
STRIDER: 3
BREEZE: 10
# End
SHULKER: 5
# What one item pays when a store is sold from the spawner menu.
#
# This is the table that makes a large farm playable: a thousand spawners produce more rotten flesh
# than any inventory can carry, so a store is sold where it stands instead of being hauled to a shop.
# Priced at the shop's own rate wherever the shop trades the item, so selling from a spawner is never
# better or worse than selling by hand. Ores are deliberately low: they are absent from shop.yml on
# purpose, to keep the Auction House the place ore is traded.
sell-prices:
# Food and animal drops
BEEF: 3.50
PORKCHOP: 3.50
MUTTON: 3.50
CHICKEN: 3.00
RABBIT: 3.00
COD: 3.00
SALMON: 3.50
TROPICAL_FISH: 8.00
PUFFERFISH: 6.00
LEATHER: 10.00
RABBIT_HIDE: 2.50
RABBIT_FOOT: 25.00
FEATHER: 2.00
WHITE_WOOL: 2.00
RED_MUSHROOM: 2.00
HONEYCOMB: 6.00
TURTLE_SCUTE: 30.00
INK_SAC: 3.00
GLOW_INK_SAC: 8.00
# Hostile drops
ROTTEN_FLESH: 1.00
BONE: 3.00
ARROW: 1.50
STRING: 3.50
SPIDER_EYE: 4.00
GUNPOWDER: 6.00
SLIME_BALL: 6.00
MAGMA_CREAM: 8.00
ENDER_PEARL: 30.00
PHANTOM_MEMBRANE: 20.00
PRISMARINE_SHARD: 4.00
PRISMARINE_CRYSTALS: 8.00
GHAST_TEAR: 40.00
BREEZE_ROD: 80.00
BLAZE_ROD: 60.00
SHULKER_SHELL: 250.00
WITHER_SKELETON_SKULL: 400.00
# Witch brewing stock
REDSTONE: 3.00
GLOWSTONE_DUST: 4.00
SUGAR: 2.00
GLASS_BOTTLE: 2.00
# Metals, flowers, and the rest
IRON_INGOT: 12.00
COPPER_INGOT: 6.00
GOLD_INGOT: 14.00
GOLD_NUGGET: 1.50
EMERALD: 20.00
COAL: 4.00
NAUTILUS_SHELL: 45.00
POPPY: 1.00
SNOWBALL: 0.50