Creator docs · Builders

Builder Guide

You make the arenas. Every map on Meltdown is authored in-game with the Map Builder toolkit, no config files to hand-edit. This guide covers the tools and the per-game setup for each minigame.

Before you start

Building happens on the staging server, a private world where you can work without disturbing live games. Get there with /staging: it boots the server if needed and warps you in when it is ready (give it a moment on a cold start).

You needPermissionUnlocks
Builder rankeventproxy.builderAccess to the staging server via /staging
Builder toolsplugin.opThe /mbu toolkit and every game's setup commands

Build the physical geometry however you like (WorldEdit, FastAsyncWorldEdit, by hand). The toolkit's job is to tell the game what the geometry means: where players spawn, where the pit is, which chests hold loot. Build first, then mark it up.

Two ways to author

Games define their maps in one of two ways. You do not choose; each game already picks one.

  • Markers (MBU) is the modern way and the default. You place invisible markers in the world with a visual editor: this block is a spawn, that box is the pit. Used by BlockBlitz, SkyBattle, and others. Multiple maps live side by side per world.
  • Arena YAML is the classic way used by the older games (Spleef, TNT Run, Survival Games). You run short setup commands that save spawn points and settings to a file. No editing the file by hand; the commands do it.

Either way the pattern is the same: generate a starter, refine it, test it. Every game ships a setup generate command that stamps a working demo arena at your feet so you are never staring at a blank world.

The /mbu toolkit

/mbu <game> (short for Map Builder Utils) opens a visual palette scoped to that game, for example /mbu blockblitz. Every tool is a click in a chest menu, then a click in the world. These are the tools you will reach for most:

ToolWhat you author with it
MarkersSpawn points, spectator views, and regions (pit, bounds, islands). The core of any markers-based map.
Spawn CageGlass or fence walls that pen players in during the countdown and drop away at GO.
Kit LoadoutThe items players get at spawn. Supports a separate kit per class where a game has them.
Loot TablesWeighted loot pools for treasure chests, with rarity weights per item.
Moving PlatformBlock-built platforms that animate along a path and carry riders.
Inverting FloorRhythm floors whose blocks flip state on a timer.
CheckpointWalk-through trigger regions, used heavily by Race.
KeyframeFrame-by-frame block animations captured one frame at a time.
CutsceneA pre-game explanation fly-through with camera shots and text.
Team CountsWhich team sizes a map supports and which is the default.

Need to eyeball a region before you commit it? /mbu highlight corner1 and /mbu highlight corner2 outline a box in the world so you can see it. /mbu highlight clear removes it. It is a preview only, nothing is saved.

Per-game setup

Every game follows generate → refine → test. Generate a demo, open the editor (or run the setup commands) to make it yours, then start a match to try it. Here is the entry point for each game:

GameStyleGenerate a starterRefine
BlockBlitzSet the two team spawns, a spectator point, and the central pit region. Optional power-up points and drop-gate walls.Markers/blockblitz setup generate [pit-size]/mbu blockblitz
SkyBattlePlace the floating islands (one per team), a spectator point, and loot/feast chests. The rising void is derived from the islands.Markers/skybattle setup generate [islands] [radius]/mbu skybattle
SpleefGenerate a layered circular arena, then add spawns and set the fall-out height and the diggable floor block.YAML/spleef setup generate [radius] [layers] [gap]/spleef setup spawn · void · floor
TNT RunSame shape as Spleef. The floor collapses under players instead of being dug.YAML/tntrun setup generate [radius] [layers] [gap]/tntrun setup spawn · void · floor
One in the ChamberClose-quarters free-for-all: a compact arena with scattered cover and spawn points. Every hit is a one-shot kill (bow + wooden sword); most kills wins.MBU/oitc setup generate [radius] [cover]/oitc setup edit · /mbu oitc
RaceA continuous course of ordered checkpoints, optional easy/medium/hard branches, and MBU animations (platforms, inverting floors).YAML + MBU/race setup generate/race setup checkpoint · branch · start

Example: a BlockBlitz arena from scratch

  1. Generate a demo.Stand where you want it and run /blockblitz setup generate 8 for an 8×8 pit. A full playable arena appears.
  2. Open the editor./mbu blockblitz opens the palette. Click Markers.
  3. Set the spawns and pit.Place the two team spawns, the spectator point, and drag out the pit region to match your build.
  4. Add the extras.Drop power-up points and drop-gate walls if you want them. All optional.
  5. Check and test./blockblitz setup info confirms nothing required is missing, then /blockblitz start to play it.

Example: a Spleef arena

  1. Generate the rings./spleef setup generate 20 3 6 makes a 3-layer arena of radius 20 with a 6-block gap between layers.
  2. Place spawns.Stand on a start spot facing the right way and run /spleef setup spawn. Repeat for each spawn (at least two).
  3. Set the rules./spleef setup floor SNOW_BLOCK for the diggable block, and /spleef setup void 50 for the fall-out height.
  4. Save and test./spleef setup save, check /spleef setup info, then /spleef start.

Test your map

Before a map goes anywhere near a live event, run it yourself.

  • Validate first. Every game has a setup info command that lists what is present and flags anything required that is missing (spawns, pit, void height). Green light there before you start.
  • Solo test. Use <game> quickstart to launch a match with just yourself so you can walk the whole thing.
  • Teleport around. Marker-based games offer setup tp to jump to each spawn or viewpoint and check sightlines.

Where it's saved

You never edit these by hand, but it helps to know where your work lives on the server:

  • Marker games save to the MinigamesAPI data folder under transformations/<world>/ as JSON: markers, cages, kits, loot, and animations each get a file, scoped to the game and world.
  • YAML games save to their own plugin folder, for example spleef-arenas.yml. One file holds every arena for that game.

Marker and animation edits save when you close the editor. YAML games save on setup generate automatically, but run setup save after manual tweaks to be sure. When in doubt, run setup info to confirm the server sees your changes.

Command reference

CommandPermissionPurpose
/stagingeventproxy.builderBoot and join the building server
/mbu <game>plugin.opOpen the Map Builder palette for a game
/mbu highlight corner1|corner2|clearplugin.opPreview a region outline (not saved)
<game> setup generate<game>.adminStamp a working demo arena at your feet
<game> setup info<game>.adminValidate the map and list what's set
<game> setup save<game>.adminPersist a YAML arena (Spleef/TNT Run/Survival Games)
<game> quickstart<game>.adminSolo-start a match to test the map

Replace <game> with the game command: /blockblitz, /spleef, /tntrun, /oitc, /skybattle, /race. Setup permissions follow the pattern blockblitz.admin, spleef.admin, and so on (Race setup uses prophunt.gamemaster).

Map built and tested? Hand it to a host to feature in an event, see the Event Host Guide. Questions about a specific game's markers? Ask in Support.

Builder Guide · Meltdown