Pick a deployment shape
TeaCore supports three arena-pool modes so you can run it the way your fleet actually runs.
Single server
Arenas live on the same server players connect to. Pool manager scales locally. Simplest to run; perfect for small communities.
arena-pool.mode: standaloneLobby + shared arena servers
A proxy (BungeeCord or Velocity) sends players onto a lobby; arenas spread across arena servers. The matchmaker leader balances new allocations across available servers via Redis.
arena-pool.mode: centralOne game per pod
Kubernetes (or similar) boots a fresh pod per match. TeaCore does not scale; each pod hosts one arena and shuts down on match end.
arena-pool.mode: externalWhat's in the box
Arena lifecycle + warm pool
WAITING → COUNTDOWN → STARTING → LIVE → ENDING state machine. Pre-allocated arenas so players never wait on a schematic paste.
In-game map authoring
/tea map create - build your arena in a throwaway void world, mark spawns, save. Schematic capture handled for you.
Kit + ability framework
Kits bundle items and ability bindings. Abilities are Java classes that get cooldown tracking, trigger wiring, and effect bundles for free.
Proxy-aware networking
Redis-backed coordination for multi-server fleets. Queue, arena snapshots, matchmaker leader election, cross-server control commands.
Per-arena chat routing
Chat is scoped to the arena by default. Team / staff / global channels are opt-in. Nobody leaks match banter to the lobby.
Embedded web dashboard
Every running arena, queue, and player on one React page served by the plugin itself. View, filter, start, release, allocate from the browser.
The flagship game: Ascend
A classic evolution-style minigame built entirely on Tea. Evolve through mob stages, land kills, climb the ladder. The whole game is a reference implementation of the engine.