MuOxi, a modern mud game engine written in Rust.
![muoxi_logo][logo]
MuOxi β a MUD framework in Rust
MuOxi is a framework for building [online multiplayer text games][wikimudpage] β MUDs, MUSHes, MUCKs, and their relatives. It handles the parts every MUD needs (sockets, login, persistence, command dispatch, world state) and leaves the parts that are your MUD to you: combat, magic, plot, content, feel.
The design owes a lot to [Evennia][evennia], reimagined in Rust.
ββββββββββββββ
tt++ / telnet βtcpβ ββββββββββββββ redis β
browser / WS βhttpβ βmuoxi_serverβββββββ¬ββββββββ
muoxi_web bridge βwsβββ βββββββ¬ββββββ β
β βΌ
βΌ ββββββββββββββ
ββββββββββββ β Diesel β
β Registry β β SQLite β
ββββββββββββ β (default) β
types, β or β
cmds, β Postgres β
hooks ββββββββββββββ
Quick start
git clone https://github.com/duysqubix/MuOxi.git
cd MuOxi
docker compose up
Then connect:
| Surface | URL | | --- | --- | | Browser | telnet 127.0.0.1 8000 | | WS CLI | wscat -c ws://localhost:8080 |
Create an account, create a character, walk into Limbo. Reconnect later and your character is still there. The full walkthrough lives in docs/getting-started.md.
If host ports 8000 or 8080 are taken:
MUOXISERVERPORT=18000 MUOXIWEBPORT=18080 docker compose up
For fast iteration without typing credentials each restart:
DEV_AUTOLOGIN=1 docker compose up
Documentation
| If you want to⦠| Read | | --- | --- | | Build a MUD on top of MuOxi | docs/getting-started.md | | Understand the design | docs/architecture.md | | Know which extension points exist | docs/extension-guide.md | | Build out your world | docs/world-building.md | | Deploy MuOxi | docs/deployment.md | | Hack on the framework itself | docs/development.md | | See where the project is headed | docs/roadmap.md | | Look up a term | docs/glossary.md |
Contributing
See CONTRIBUTING.md. Reach out on [discord][discord] for design conversations.
License
GPL-3.0 β see LICENSE.
Star History
[logo]: .media/cog.png [wikimudpage]: https://en.wikipedia.org/wiki/Multi-user_dungeon [evennia]: https://www.evennia.com/ [discord]: https://discord.gg/H6Sh3CJ