The concepts on this page are limited to entities that exist in the state-server codebase or in the canonical state-server docs. Each definition has a code or doc citation. Anything that previously appeared on this page without such a citation (Karma, Curator, NPCs, Space as a top-level container) has been removed.
The user identity. Interface defined at state-server/internal/domain/entity/types.go:369. Carries authentication state, profile, inventory, and ownership references. Per-user inventories hold prototypes and instantiated objects.
Any 3D entity in the platform. Code-side, this is the ObjectBase interface at types.go:233. Concrete implementations: Group and Block (both in objects.go).
A container that holds child objects and exposes a gallery of prototypes for fast instantiation. Defined in objects.go. A Group becomes a Brane (root scene) when its IsBrane boolean is true.
A leaf 3D object with a model reference, a 4×4 transform, properties, and an inventory-tracked owner. The most common kind of placeable thing.
A root scene. Implemented as a Group with IsBrane: true (objects.go line 199–200). It is not a separate Go type. A brane carries a cell-based grid, a child_ids list, a gallery_ids prototype list, visibility (private / unlisted / public), and metadata.
A versioned template defining default properties, attached handlers, model references, and behaviour for objects instantiated from it. Interface defined at types.go:256 (PrototypeBase). Supports versioning (GetVersion, GetNextVersionID, GetPreviousVersionID), publish/deprecation flags (is_public, is_deprecated, is_deleted), and gallery membership.
A separate PrototypeGroupBase (line 308) handles prototype-of-groups; ObjectGroupBase (line 323) handles object-side gallery semantics.
Server-side JavaScript attached to a prototype. Runs in the Otto VM under sandboxed conditions. Interface at types.go:344 — exposes Run(ctx) and ToJS() for client-side execution.
An interaction / connection slot, with up to 9 per object on a 3×3 grid. The STATE_SERVER_COMPREHENSIVE_DESCRIPTION.md (§5 "3D Spatial Management") describes this 9-interface system for directional connections between adjacent spatial cells.
An individual cell in the spatial grid with ownership and interface management (STATE_SERVER_COMPREHENSIVE_DESCRIPTION.md §5).
A generic spatial container with hierarchical subdivision. Interface SpacecellBase at types.go:444.
Coordinate-based index. type SpatialKey [4]int32 at types.go:470.
A Go type alias for spatial indexing: type Space map[SpatialKey]SpacecellBase (types.go:761). It is a spatial lookup map, not a top-level container that organizes branes. Earlier wiki copy framed Space as a directory of worlds; that framing was wrong.
A 4×4 column-major matrix. type Transform [16]float32 at types.go:503. Every spatial entity carries one.
The earlier version of this page treated "Karma", "Curator", "NPC", and "Portal/Teleport" as core concepts. None of them exist as types in the state-server codebase, and none appear in the canonical docs (APP_DESCRIPTION.md, STATE_SERVER_COMPREHENSIVE_DESCRIPTION.md, openapi-v2.yml, WEBSOCKET_PROTOCOL.md). They were imported from a stale strategic-vision note and have been removed.
AI NPCs appear in APP_DESCRIPTION.md only under "Long-term Vision (2025+)" (line 439); they are roadmap aspirational, not a present concept.
A wallet / billing / commerce / supplier-earnings model is designed in the state-server-master-task-spec-2026-04-20 snapshot but is not yet implemented in the live repo — see state-server and Releases. The only currency-adjacent concept in current code is a per-user credit-transaction audit listing at GET /users/{id}/credits/transactions.
state-server/internal/domain/entity/types.go, state-server/internal/domain/entity/objects.go, state-server/STATE_SERVER_COMPREHENSIVE_DESCRIPTION.md, state-server/docs/APP_DESCRIPTION.md, state-server/docs/openapi-v2.yml.