moxzi

moxzi.game

2,048 actors. One canister. Sixty frames a second.

Write the game in Motoko. Every entity is a real actor with its own state, its own identity and its own upgrade path. The renderer is a detail.

Play Lanternfall → Documentation Build a game

Lanternfall runs 2,048 courier actor* instances in a browser tab, sustained for ten minutes at ~20 simulation ticks and ~60 presentation updates per second. Developer preview.

You write Motoko. That is the game.

A project is Motoko, YAML and assets. Game state lives in actors and stays authoritative there. The framework owns the Rust: rendering, host services, platform export. No game-specific Rust host. No game logic in JavaScript.

Where it runs today

The tools run on Apple Silicon Macs, with a windowed player and a headless mode for CI. Games have also run on arm64 iPhones and, experimentally, in desktop Chrome and Firefox over WebGPU, but those exporters aren't in the preview tools yet. iPad, Intel Macs, Safari, mobile browsers, Linux and Android aren't supported.

Supported platforms →

Get it

Play Lanternfall now — no install, no account. Desktop Chrome 153 or Firefox 156 with WebGPU, about 11 MB.

Play Lanternfall →

Install the tools

Two installers, because most people who want the Motoko compiler do not want a 3D renderer, and the two are licensed separately.

# the compiler — builds your game's Motoko
curl -fsSL https://moxzi.ai/install.sh | sh

# the game tools — moxzi-game and the player
curl -fsSL https://moxzi.ai/install-game.sh | sh

Both check every download against the release's SHA256SUMS before unpacking, and stop if a checksum doesn't match. Apple Silicon macOS; about 35 MB for the game tools, which carry a renderer. Then point the builder at the compiler:

export MOXZI_BIN=~/.local/bin/moxzi
export MOXZI_COMPILER=~/.local/lib/moxzi/compiler.wasm
export MOXZI_LINKER=~/.local/lib/moxzi/linker.wasm

Build your own

A complete starter game — Pong, four Motoko files and a folder of assets — installs with the tools. Copy it out and build it:

cp -R ~/.local/lib/moxzi-game/examples/pong ~/pong && cd ~/pong
moxzi-game build . out/pong
moxzi-player out/pong native

Then change something: the ball speed in src/Game.mo, the court colour in assets/court.material.yaml, a new button in assets/controls.ui.yaml.

Headless for CI — no window, no GPU:

moxzi-game run-headless out/pong 1200 report.json

Full walkthrough in Build a game. Direct downloads and checksums are under /releases/game/.

Apple Silicon macOS is the qualified host today. One-command export to every platform is the next milestone.

Licensing

moxzi.game is licensed separately from the moxzi compiler. The compiler is source-available under BUSL-1.1. moxzi.game is All Rights Reserved while its terms are being settled. Third-party components — Bevy, the Rust crate ecosystem, the Motoko runtime — stay under their own licences.