GroupeZ Docs
Configuration

Main Configuration

Main configuration options for zSpawner

This page covers the main configuration options available in config.yml.

General Settings

# Displays more information in the console
# Enable this when reporting issues to support
enableDebug: false

# Enables time debugs for performance measurement
enableDebugTime: false

# Data update interval in milliseconds (default: 2 minutes)
updateInterval: 120000

Storage Configuration

zSpawner supports SQLite and MySQL/MariaDB storage backends.

SQLite

Default storage option, requires no additional configuration:

storage: SQLITE

MySQL / MariaDB

For production environments:

storage: MYSQL

database-configuration:
  table-prefix: "zspawner_"
  user: homestead
  password: secret
  port: 3306
  host: 192.168.10.10
  debug: false
  database: zspawner
OptionDescription
table-prefixPrefix for all database tables
userDatabase username
passwordDatabase password
portDatabase port
hostDatabase host address
debugEnable database debug logging
databaseDatabase name

Spawner Items

Configure the items players receive when given spawners:

items:
  CLASSIC:
    material: SPAWNER
    name: "&6&lSpawner &r&8- &f%type%"
    lore:
      - "&8Place the spawner on the ground"
    flags:
      - HIDE_POTION_EFFECTS

  GUI:
    material: SPAWNER
    name: "&6&lSpawner &r&8- &f%type%"
    lore:
      - "&8Place the spawner and find"
      - "&8it in the &7/spawners"
    flags:
      - HIDE_POTION_EFFECTS

  VIRTUAL:
    material: SPAWNER
    name: "&6&lSpawner &r&8- &f%type%"
    lore:
      - "&8Virtual spawner, place it to use it"
    flags:
      - HIDE_POTION_EFFECTS
PlaceholderDescription
%type%Entity type name (e.g., "ZOMBIE", "SKELETON")

Explosion Protection

Configure how spawners behave when hit by explosions:

# Disable spawner destruction by explosions
disableSpawnerExplosion:
  GUI: true
  CLASSIC: true
  VIRTUAL: true  # Always true, cannot be changed

# Drop spawners when destroyed by explosion
dropSpawnerOnExplose:
  GUI: false
  CLASSIC: false
  VIRTUAL: false  # Always false

# Protect natural (vanilla) spawners from explosions
disableNaturalSpawnerExplosion: false

# Drop natural spawners when destroyed by explosion
dropNaturalSpawnerOnExplose: false

Chunk Limit

Limit the number of spawners that can be placed per chunk:

chunkLimit:
  # Enable chunk spawner limiting
  enable: false

  # Global limit per chunk
  global: 5

  # Per-entity limits
  limits:
    - SKELETON: 10

Block Blacklist

Prevent spawners from being placed on certain blocks:

blacklistBlocks:
  - CHEST
  - DROPPER
  - TRAPPED_CHEST
  - CAULDRON
  - FURNACE
  - ENDER_CHEST
  - BEDROCK
  - BREWING_STAND
  - DISPENSER
  - OBSIDIAN
  - SPAWNER
  - DIAMOND_BLOCK
  - GOLD_BLOCK
  - IRON_BLOCK
  - NETHERITE_BLOCK

Owner Break Permission

Allow spawner owners to break their GUI spawners:

# Owner can break to move spawner back to /spawners
ownerCanBreakSpawner: true

Entity Materials

Configure the display material (spawn egg) for each entity type in GUIs:

entitiesMaterial:
  - ZOMBIE: ZOMBIE_SPAWN_EGG
  - SKELETON: SKELETON_SPAWN_EGG
  - CREEPER: CREEPER_SPAWN_EGG
  - SPIDER: SPIDER_SPAWN_EGG
  - BLAZE: BLAZE_SPAWN_EGG
  # ... more entities

You can use zMenu materials including custom heads:

entitiesMaterial:
  - ZOMBIE: "hdb:12345"  # HeadDatabase
  - SKELETON: "base64:..."  # Base64 texture

Material Blacklist

Prevent certain items from being stored in virtual spawners:

blacklist-materials:
  - BOW
  - GOLDEN_SWORD

Virtual Spawner Break

Allow breaking blocks/entities where virtual spawners would spawn:

breakUpVirtualSpawner: true

Experience Settings

Give experience directly to players from virtual spawners:

give-player-experience: false

Deposit Reason

Message format for economy transactions:

deposit-reason: "Sale of x%amount% %item% for %price% (Spawner)"

Example Complete Configuration

enableDebug: false
enableDebugTime: false
storage: SQLITE
updateInterval: 120000

database-configuration:
  table-prefix: "zspawner_"
  user: homestead
  password: secret
  port: 3306
  host: 192.168.10.10
  debug: false
  database: zspawner

items:
  CLASSIC:
    material: SPAWNER
    name: "&6&lSpawner &r&8- &f%type%"
    lore:
      - "&8Place the spawner on the ground"
  GUI:
    material: SPAWNER
    name: "&6&lSpawner &r&8- &f%type%"
    lore:
      - "&8Place and access via &7/spawners"
  VIRTUAL:
    material: SPAWNER
    name: "&6&lSpawner &r&8- &f%type%"
    lore:
      - "&8Virtual spawner"

chunkLimit:
  enable: true
  global: 10
  limits:
    - SKELETON: 20
    - BLAZE: 5

disableSpawnerExplosion:
  GUI: true
  CLASSIC: true
  VIRTUAL: true

dropSpawnerOnExplose:
  GUI: false
  CLASSIC: false
  VIRTUAL: false

ownerCanBreakSpawner: true
breakUpVirtualSpawner: true
give-player-experience: false

On this page

GroupeZ MCP

Documentation in your AI

MCP lets your AI search GroupeZ documentation and read current examples to help you configure your plugins.

Read-only · No documentation API key needed

1. Copy the server URL

Transport: HTTP (Streamable HTTP). Authentication: none. Your tool uses its own model and subscription limits.

  1. Open Plugins in ChatGPT on the web, then + → Add custom MCP server.
  2. Name it ‘GroupeZ Documentation’, paste the URL above and choose ‘No authentication’. Create and install the plugin.
  3. In a conversation, type @ and select the plugin before asking. If needed, enable search, get_page and list_pages in its settings.
Official setup guide

3. Ask a question

Use GroupeZ MCP to help me create a zMenu inventory. Search relevant pages, read the examples and cite your sources.
Other clients and troubleshooting

For clients using mcpServers, adapt this example to their format:

{
  "mcpServers": {
    "groupez-docs": {
      "url": ""
    }
  }
}

Available tools are search, get_page and list_pages. Refresh the connector’s tools after updates. If your AI cannot access them, check that the connector is enabled in the conversation and your account allows custom MCP servers. Opening the URL in a browser is not an MCP test.