# Commands Reference All commands are subcommands of `/minigame`. ## Definition Management ### `/minigame list` Lists registered minigames and basic runtime state. ### `/minigame create ` Creates a new minigame definition with default settings and saves it **into the named asset pack** (`/Server/Minigames/.json`). The pack must exist and be writable (not a read-only/zipped pack). Because the definition lives in an asset pack, it is reloaded by the normal asset scan on every server start. ```text /minigame create KingOfHillAssetPack Beach_Race "Beach Race" ``` Ids may only contain letters, numbers, `_` and `-`. ### `/minigame info ` Shows the loaded definition and runtime status for a minigame. ### `/minigame edit ` Edits a simple definition property and saves it back into its asset pack. Supported properties: `name`, `description`, `enabled`. Use the Hytale asset editor for everything else. ```text /minigame edit Beach_Race name Beach Race Deluxe /minigame edit Beach_Race enabled true ``` ### `/minigame enable ` / `/minigame disable ` Sets `Enabled` and persists the definition to its asset pack. Disabling prevents new queue joins and starts but does not stop an already running runtime. ### `/minigame validate ` Runs definition validation (player counts, round length, countdown, overtime/sudden-death timer settings). ### `/minigame delete ` Ends any running runtimes, removes the definition from the asset store, and deletes its file from its asset pack. Definitions in read-only packs cannot be deleted. ## Runtime Management ### `/minigame start ` Starts a queued runtime for the given minigame as an **admin start**: the min-player pregame check is skipped, so the game runs even with an empty or short queue. The selected map comes from `MapSelectionMode`: highest vote for `VOTE`, random discovered map for `RANDOM`. A start is refused (with a message) when: - the definition has a `WorldId` and you are in a different world, or - no trigger volume sets the game's phase to `ACTIVE` (see *Lifecycle contract* in `architecture.md`). ### `/minigame stop [reason]` Stops all active runtimes for the minigame ID. ### `/minigame reset ` Resets all active runtimes for the minigame ID. ## Map Commands ### `/minigame maps ` Lists maps discovered from trigger volumes in the sender's current world. Run this command as a player in the world containing the tagged volumes. ### `/minigame vote ` Casts or updates the sender's vote. Only players who are in the queue may vote. ## Player Commands ### `/minigame join [player]` Adds the command sender, or the optional player target, to the minigame queue. Fails when the queue is full (`MaxPlayers`) or the minigame is disabled. ### `/minigame leave [player]` Removes the player from every queue and from their current game. Leaving a game restores the player's saved inventory; if nobody is left in the runtime, it ends. ### `/minigame spectate [player]` Joins a running game as a spectator (requires `AllowSpectators: true` in the definition) and teleports the spectator to the game's MainArena volume when one is visible from their world. Spectators are excluded from rankings and the scoreboard. ## Volume Workflow The old custom minigame volume system was removed. Use Hytale's trigger-volume editor for volume placement and attach the minigame trigger effects and conditions there. `/triggervolume clone` and `/triggervolume clonegroup` (injected by this plugin) help duplicate configured volumes between maps.