The world
The world belongs to a mod’s server half. One instance of that half runs on the machine hosting the session; it spawns things, moves them, hears presses and touches, and asks the world what is where. The client half renders and reads input — it creates nothing and decides nothing, and everything it shows was told to it over messaging. Where your code runs, and when it loads, is the lifecycle.
Two facts shape everything on these pages:
- Read is free. A mod may know anything about the world: cast a ray, list who is connected, hear every touch on its things. Hiding the world from mods is not a goal.
- Write is gated. Acting on an entity is decided at every write by the ownership rule: a mod reaches what it spawned, the instances of archetypes it declares, and — briefly — the body of the player whose event it is handling. Everything else is refused, aloud.
The pages
Section titled “The pages”- Entities, bodies and control — everything in the world is an entity; a body is one a player happens to be driving.
- Who may act on an entity — the four admissions, the operator’s grants, and how to read a refusal.
- Components — reading and writing entity state: three published rows, typed shortcuts, and the general form.
- Interaction — the use key, and why the host decides what was pressed.
- Contact events — learning that something touched your thing, and making zones players walk through.
- Spatial queries — a ray and a shape probe: asking the world on your own initiative.
What a thing in the world IS — its model, its collision shape, whether it is pressable — is declared next door, in archetypes. What a player sees and hears about it is presentation. What does not exist yet is the boundary.