gitwtfhub

wtf is openmmo?

julian-adv/openmmo — explained in plain English

Analysis updated 2026-05-18

1,303RustAudience · developerComplexity · 4/5Setup · moderate

TL;DR

A multiplayer online RPG where AI agents and human players share the same world and rules. Explore a procedurally generated 3D world, fight tabletop-style, and build houses, solo-developed in Rust and TypeScript.

Mindmap

mindmap
  root((OpenMMO))
    What it does
      Shared world for AI and humans
      Procedural 3D world
      Tabletop-style combat
    Tech stack
      Rust server
      Svelte and TypeScript client
      Three.js via Threlte
    Game features
      Day and night cycle
      Player housing
      Map editor
    Use cases
      Play in browser now
      Build AI game agents
      Contribute to project
    Audience
      Game developers
      AI agent builders
      Open-source contributors

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Play the game right now in your browser using a Google account.

REASON 2

Build AI agents that play alongside humans using the same WebSocket protocol.

REASON 3

Design custom maps and towns with the built-in terrain and zone editor.

REASON 4

Contribute to an open-source solo-developed MMO project.

What's in the stack?

RustSvelteTypeScriptThree.jsThrelteWebSocket

How it stacks up

julian-adv/openmmonasa/spacewasmwebstonehq/tuxedo
Stars1,3031,3351,201
LanguageRustRustRust
Last pushed2026-07-01
MaintenanceActive
Setup difficultymoderatehardeasy
Complexity4/55/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 5min

You can play instantly with a Google account, running locally requires Node, Rust toolchain, and familiarity with Svelte/Three.js.

No license information was provided in the explanation, so the terms of use are unclear.

Wtf does this do

OpenMMO is a multiplayer online roleplaying game where AI agents and human players share the same world and follow the same rules. The server cannot tell agents and humans apart because both connect through the same WebSocket protocol. There is no special or privileged API for agents. Anything a human player can do, an agent can do, and the reverse is also true. You can play it right now by signing in with a Google account at the linked website. The game takes place in a procedurally generated 3D world measuring 32 kilometers on each side. It includes terrain, rivers, coastlines, roads, bridges, and biomes. A day and night cycle shifts the sun, sky, and ambient lighting, and the length of days and nights changes with the planet's orbital position. Two moons orbit independently with their own phases. Players can build multi-story timber-framed houses with doors, windows, furniture, and customizable textures. A built-in map editor lets you shape terrain, place objects, and draw zones for towns or monster spawns. Combat follows a classic tabletop roleplaying style with six attributes: strength, dexterity, constitution, intelligence, wisdom, and charisma. Character creation uses dice rolls with class modifiers and a point rebalance. The server handles all damage and hit calculations. Players manage a weight-limited inventory with eleven equipment slots, and items dropped on the ground persist and can only be picked up from the correct floor of a building. Around fifty background music tracks play during ambient exploration and combat, with crossfades between the two. The client is built with Svelte, TypeScript, and Three.js through a framework called Threlte. The server and the agent client are written in Rust. Communication happens over WebSocket, and a separate REST API handles terrain, housing, and NPC data. The project is solo-developed and welcomes contributions. The README also links to detailed documentation on worldbuilding, terrain generation, combat, housing, AI, and performance. The full README is longer than what was shown.

Yoink these prompts

Prompt 1
I want to build an AI agent that plays OpenMMO alongside human players. Walk me through connecting to the server over WebSocket, handling the same protocol a human client uses, and making the agent explore the world and fight monsters.
Prompt 2
Help me set up the OpenMMO client locally using Svelte, TypeScript, Three.js, and Threlte so I can run the game on my machine and test changes.
Prompt 3
I want to contribute to OpenMMO. Based on the Rust server architecture and WebSocket communication, what are the key modules I should understand first before submitting a pull request?
Prompt 4
Explain how OpenMMO's combat system works with the six tabletop attributes, dice rolls, class modifiers, and point rebalance, then help me design a balanced character build.
Prompt 5
I want to use OpenMMO's map editor to create a custom zone with terrain, objects, and monster spawn areas. Walk me through the process and how to save and load my map.

Frequently asked questions

wtf is openmmo?

A multiplayer online RPG where AI agents and human players share the same world and rules. Explore a procedurally generated 3D world, fight tabletop-style, and build houses, solo-developed in Rust and TypeScript.

What language is openmmo written in?

Mainly Rust. The stack also includes Rust, Svelte, TypeScript.

What license does openmmo use?

No license information was provided in the explanation, so the terms of use are unclear.

How hard is openmmo to set up?

Setup difficulty is rated moderate, with roughly 5min to a first successful run.

Who is openmmo for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.