Engine
Engine-owned world concepts: worlds, places, links, entities, containment, capabilities, players, sessions, personas, and deterministic scheduling.
Open-source LPC worlds on the JVM
A modern Java-native platform for building and playing text-only, interactive, multiplayer worlds in the LPMUD tradition: live LPC content hosted inside a JVMud engine built around places, entities, personas, persistence, time, and presence.
JVMud compiles LPC-authored game content to JVM classes and hosts it inside an engine built around the core features of MUD: Game, Text, Interactive, Multiplayer, World, Persistence, Temporality, and Presence. Check out the Glossary to learn more!
The repository contains a Java engine, an LPC compiler, a hosted instance layer, Telnet transport, persistence adapters, a local admin CLI, the native LPMuseum landing mudlib, and legacy mudlib content used to drive compatibility work.
Engine-owned world concepts: worlds, places, links, entities, containment, capabilities, players, sessions, personas, and deterministic scheduling.
Scanner, preprocessor, parser, semantic analysis, typed IR, bytecode generation, efun contracts, generated-code helpers, and LPC runtime loading.
A hosted world instance that starts in LPMuseum, a Telnet transport for player sessions, and a single-user admin shell for filesystem and object work.
JVMud's package layout follows a responsibility map centered on the engine, with compiler, mudlib, persistence, instance, transport, and player-facing concerns kept distinct.
JVMud is early-stage engine work with a Maven-backed baseline, a buildable runtime module, a live Telnet path, and an LPC compiler that is being expanded against real mudlib transcripts. Compatibility work is deliberately incremental and preservation-first.
mvn test
scripts/jvmud-admin
scripts/jvmud-start
The user manual collects the current JVMud guide in a browsable web page with a matching PDF for offline reading.
Generated Javadocs publish the current compiler and engine contracts: runtime world primitives, mudlib boundary declarations, compiler pipeline entry points, LPC runtime loading, and efun registration.