# Distributing Spawners

## Distributing spawners

Wild spawners are intended to flow from the server economy into players' hands — they're the "valuable item players earn or buy", not a thing players craft.

This page covers how to plug `/tcpws give` into the systems your server already uses.

### The base command

```
/tcpws give <preset-id> [player] [amount]
```

Examples:

```
/tcpws give goblin_camp Steve 1
/tcpws give legendary_dragon_lair Steve
/tcpws give goblin_camp Steve 5
```

If you omit `[player]`, it defaults to the command sender (so an admin running it from chat gets the spawner). For console + shop plugin use, always pass the player explicitly.

The recipient gets an enriched trial-spawner item with the preset's display name, lore, and the `tcp:preset_id` PDC tag that marks it as a wild-preset spawner.

### Tebex / Buycraft

Tebex and Buycraft work with simple console commands. Add this to your package's command list:

```
tcpws give legendary_dragon_lair {username} 1
```

Replace `{username}` with whatever Tebex placeholder your version uses for the buying player's name (varies by Tebex format — `{player_name}`, `{player}`, or `{username}` are the common ones).

### EssentialsX shops / Signs

Most EssentialsX-based shops support running console commands as sale rewards:

```yaml
# essentials shop
DragonLair:
  display: '<gradient:red:gold>Dragon Lair Spawner</gradient>'
  cost: 50000
  command: 'tcpws give legendary_dragon_lair {PLAYER} 1'
```

(Exact YAML key depends on your shop plugin — Sign Shop, ChestShop, QuickShop all have an "execute command" feature.)

### CMI

CMI's shop module accepts console commands directly. In your shop's item config:

```
{
  "command": "tcpws give legendary_dragon_lair {playername} 1"
}
```

### CrazyCrates / similar (non-VaultCrates)

You probably already have CrazyCrates set up; if you want to use those for spawner rewards instead of (or alongside) TCP-VaultCrates, just put the command in the prize:

```yaml
prizes:
  legendary-spawner:
    type: cmd
    chance: 1
    commands:
      - 'tcpws give legendary_dragon_lair %player% 1'
```

(If you're using TCP-VaultCrates instead, see VaultCrates integration → — there's a native `wild-spawner` loot entry type that calls this command for you.)

### BetonQuest / Quests / BeautyQuests

Every major quest plugin supports console commands as rewards. Sample BetonQuest event:

```
events:
  give_dragon_spawner: command tcpws give legendary_dragon_lair %player% 1
```

Sample Quests reward:

```yaml
rewards:
  - command: 'tcpws give legendary_dragon_lair {player} 1'
```

### Vanilla mob drops (with a drop plugin)

Plugins like **MobsManager**, **MythicMobs** (its drop tables), or **EcoSkills** can run commands on mob death:

```yaml
# mythicmobs droptables
goblin_chief_drops:
  - tcpws give legendary_dragon_lair {killer} 1 0.05  # 5% chance
```

(Exact syntax depends on the plugin.)

### Vote rewards

VotifierPlus + plugin → run a console command on each vote. Add to your reward list:

```
tcpws give common_spawner {player} 1
```

Most servers gate these behind cumulative votes — "vote 50 times to earn one Common Spawner" — using a counter plugin.

### Manual issuance (for staff)

Staff giving spawners as compensation, contest prizes, or special events:

```
/tcpws give common_spawner LuckyPlayer 1
```

Same command, just run by an op in chat. The recipient gets the spawner immediately.

### Drop chains: spawners that drop more spawners

Want a spawner mob to drop more spawners? Configure key drops via VaultCrates where each opened crate has a `wild-spawner` loot entry:

```
mob death → key drops → player opens crate → crate drops a wild_spawner item
```

Three plugins, one self-contained progression loop.

### Permissions for shop / event commands

By default, `/tcpws give` requires `tcpws.give` (which itself defaults to op). Most shop plugins run commands as console — console always has all permissions, so you don't need to grant `tcpws.give` to anyone.

Players running `/tcpws give` themselves need the permission. Don't grant it to everyone — that's the back-door for free spawners.

### Tracking issuances

The plugin doesn't keep an internal "who got which spawner when" log in v1.0. If you need an audit trail, configure your shop / quest / crate plugin to log its own issuances — most have built-in logging.

### Pricing tips

Only useful if you sell spawners on a webstore:

* **Common spawners** (zombies, skeletons): $1–$3 each, or bundle in a "starter pack" for $5.
* **Themed spawners** (bandit camps, goblin nests): $3–$8 each.
* **Premium spawners** (custom MythicMobs, lore-based names with `griefing-protection: true`): $10–$30 each — the protection toggle is what makes them feel "yours forever."
* **Legendary one-of-a-kind** spawners (ominous, with a custom name that nobody else can ever get): $50–$200 — events, charity-tier rewards.

The spawner mining + re-deploy mechanic is the real value-add for buyers. They're not buying a one-time spawn; they're buying a thing they can move with them as they explore the world. Highlight that in your store copy.

***

Next: **The admin GUI →** · **Mining and re-deploying →**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://darkstarworks.gitbook.io/plugins/mc/tcp-documentation/tcp-wildspawners/your-first-spawner/distributing-spawners.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
