Appearance
What you can build
You'll learn: what a plot is, how players meet your game, and which kinds of games fit.
The landscape in one picture
Inventery is one shared, blocky world. Players own plots: claimed pieces of it. Your code runs a plot.

A plot on the map: a player's monument plot out in the Wild, with players inside and onlookers near and far. Walking past, you see the plot (its featured lobby); approaching, a lobby is chosen for you; crossing the border, you're in, playing in that lobby. Everything the plot draws (blocks, glTF props, mesh terrain, entities, lights, particles) is drawn for everyone; each lobby is its own room of play. The Spawn's square, by contrast, is protected land, not a plot. See the mental model.
Three things make a plot different from a game on its own server:
- It's visible from outside. Everything a plot draws is in formats the world renders for passers-by: blocks, cuboid models, glTF meshes, lights, particles. Your arena is part of the skyline.
- You join by walking in. No prompt, no loading screen: the plot's assets preload as you approach. You cross the boundary and you're in. Leave is always one tap away: "Leave {plot}", the first item of the settings menu.
- It's sandboxed. Your code runs in a wasm sandbox on the room server (the referee). It can only reach your plot, through a small API. It can't follow players outside or touch their real items without consent.
And it's still Inventery inside: the base game's blocks, combat, items and hunger run in your plot by default, and your code filters and adds to them. A game that wants to be its own server turns those base rules off by category.
Two ways to build
| The Minecraft layer | The raw layer | |
|---|---|---|
| For | most plots: blocks, items, recipes, mob types, kits, scoreboards | custom games: meshes, custom cameras and controllers, your own UI |
| Feels like | a Fabric or Bedrock add-on | writing a game against a renderer and a network library |
| Code | @inventery/minecraft and a few hooks | @inventery/host, or any language that compiles to wasm |
You can mix them: blocks and chat from the Minecraft layer, a custom gravity controller from the raw layer. The Minecraft layer is the easiest path; the raw layer is never harder than writing the game in wasm from scratch.
Nine games that fit
These are the plots we designed the platform against. Each one is a real check that the rules allow it.
| Game | What it uses | Guide |
|---|---|---|
| A story dungeon | the Minecraft layer, NPC dialogue, a locked lobby per party, saved progress | guide |
| Bedwars with lobbies | a game mod on the reusable Team Minigame runtime (lobbies of 16 locked per round, the start countdown, stashed items and kits), the base game's beds, PvP and pickup, per-lobby block edits | guide |
| Top-down Risk in blocks | blocks as the board, a top-down camera, orders by buttons or your own map | notes |
| Among Us | visibility sets for roles and kills, meetings as full-screen UI | notes |
| A Mario Galaxy gravity game | planets as mesh terrain, custom gravity movement | notes |
| A shooter (CS, Risk of Rain) | 30 to 60 Hz ticks, lag-compensated hits, any HUD | guide |
| A Skyrim | an open world, NPC dialogue, either its own gear or your real gear | notes |
| Horror | darkness, scares aimed at one player, full-screen effects | notes |
| An imported 3D level | glTF straight in, collision and LODs made for you | guide |
What's out of scope (for now)
- Anything outside your plot. No reaching other plots, the network, accounts, the device or real money.
- Taking a player's real items without asking. Only a plot that doesn't stash items, with a player who chose to keep their items.
- Twitch fighting games need client-side prediction (
predictStep) with rollback. Client code and the rollback relay are In progress (they run in the plots dev page). Shooters work today with server-side lag compensation.
Next
- Quickstart: write a mod in five minutes.
- The mental model: the one concept everything else hangs on.