Skip to content

Spectating

For: everyone watching or managing matches.

Spectators never use the vanilla spectator gamemode. Joining a match as a spectator turns on fake spectator mode instead: adventure gamemode with flight, an invisibility effect, and hiding from every alive player. Fake Spectators and Spectators see each other (marked by their own player heads); no alive player ever sees them.

Spectators hold the spectator role and never participate. Fake Spectators keep a participant role (respawn waits, headstart holds, held joiners) while the same hidden-and-flying mode is on. Fake Spectators get no toolbar, and they stay under their own role in status with an 👁 eye prefix instead of joining the Spectators block.

This makes spectators ideal tournament observers and casters: invisible flight cameras the players never notice. The match browser jumps between concurrent matches, the player browser plus lock-on follow keeps a shoutcaster glued to the action, and the watched players see nothing, so point-of-view recordings stay clean.

Quick Start: Watch a Match

  1. Become a spectator: /manhunt setplayer <name> spectator, or /manhunt game join <id> to slip into a running match.
  2. You get flight, invisibility, and a hotbar toolbar: c browses matches, p teleports to players and locks on, b heads home.
  3. Double-shift to stop following someone.

Casters hopping between lobbies need jmanhunt.spectator.swaplobby.

Role Versus Mode

The role is an assignment; the mode is the flight-and-hidden state. Setting the role alone never enters the mode: only actually joining a match as a spectator (or a held or watching state) does. The mode also covers participants who are held or watching (headstart holds, death cam, respawn waits). NONE players keep their mode and wait in the lobby.

What Spectators Cannot Do

While the mode is active, all of this is cancelled:

  • Damage and hunger loss.
  • Mob targeting.
  • Placing and breaking blocks.
  • Block clicks and physical triggers (doors, buttons, pressure plates).
  • Dealing damage, by melee or by projectile.
  • Picking up items.
  • Entering nether or end portals.

Hotbar items stay usable through right-click air. Quitting always cleans the mode up fully, and state is memory-only, so a crash can never leave anyone stuck flying or invisible.

Who Sees Nametags

When nametag hiding is on, nameplates follow the viewer, not the match:

Viewer Sees
Spectator (role or vanilla mode) Every nametag, every mode
Participant in the clear Per the mode: foes, allies, or everyone hidden
Fake Spectator (respawn, headstart, or held join) No nametags at all

Fake Spectators also hide from restricted viewers while hide-fake-spectators stays on. Bodies, tab list, and lock-on are unaffected: only the floating plates go away.

Status Eye Bracket

Each role block in /manhunt status lists three brackets in order: the alive roll call, then a grey 👁 line for waiting Fake Spectators, then the dark-grey 💀 line for the dead. Fake Spectators never appear in the Spectators block.

Spectator Toolbar

The spectator role also deploys a hotbar toolbar; Fake Spectators never get one. The player's real inventory is snapshotted and restored on exit; held or watching participants keep their own inventories. While the toolbar is out, the hotbar is locked so its buttons cannot move.

settings.players.spectator.toolbar.controls.layout maps hotbar slots 0 to 8, one character per slot, default cp##s###b:

  • c: match browser (compass).
  • p: player teleporter (blaze rod).
  • s: snowball toss (middle slot).
  • b: back to lobby (paper).
  • #: empty slot. The layout must be exactly 9 characters.

Snowball

The s slot holds a rechargeable snowball: pure fun while watching. Throwing never consumes it, and it deals no damage or knockback to anything it hits. Right-click air to throw; aiming at a block throws nothing. snowball.enabled (default true) shows or hides it, and snowball.cooldown-seconds (default 8) sets the recharge time.

Buttons

  • b returns the spectator to their lobby spawn and sets their role to none, exiting spectator mode.
  • c (right-click) opens the match browser: every running match. Clicking an entry moves the spectator there. Moving within the same lobby is always allowed; switching to another lobby's match needs jmanhunt.spectator.swaplobby.
  • p opens the player browser: heads of the match's speedrunners and hunters. Clicking a head teleports to that player and locks on.

Lock-on

lock-on (default true) follows the teleported-to player: a locked spectator farther than tp-distance (default 25 blocks) is teleported back, and the actionbar shows who is followed. Double-shifting within half a second exits the follow, as does the target going offline, dying, or leaving the match.

Where Spectators Land

Queued spectators join the match when it starts. Mid-match joins land on the same shared spawn pick, in this order:

  1. The online speedrunner with the highest progression, ties by name.
  2. The online hunter with the highest progression, ties by name.
  3. The last-seen speedrunner spot.
  4. The last-seen hunter spot.
  5. The match cell center.

settings.players.spectator.travel (default on, 125 blocks) keeps watchers near the action: anyone farther than max-distance from every participant and last-seen spot is teleported back to the nearest one. It is silent: no message, no sound.

When a Match Ends

Spectators of an ending match move to the oldest running match of the same lobby with everything intact. When no other match of that lobby runs, they return to the lobby as none with their inventory restored.

Admin Notes

  • There is no config for fake spectator mode; it is always on.
  • Use /manhunt setplayer <name> spectator to move someone into the spectator role, or the role pads and lobby flows that already do.
  • Casters covering several matches need jmanhunt.spectator.swaplobby to hop between lobbies from the match browser.