This repo contains a modern Go rewrite of the Njata MUD alongside the legacy SMAUG-based C code.
- areas/ - Game world area data in JSON (rooms, mobiles, objects).
- backup/ - Archived or migrated content (including legacy area backups).
- cmd/ - Entry points for binaries (njata server).
- internal/ - Core Go server code (game loop, commands, networking, loaders).
- legacy/ - Original SMAUG C codebase and data kept for reference.
- lore/ - Worldbuilding references, narrative notes, and design docs.
- modern/ - Project docs, roadmap, and MVP notes for the Go rewrite.
- players/ - Player save files (JSON).
- races/ - Race definitions and data.
- scripts/ - Utility scripts and test helpers.
- skills/ - Skills/abilities data and definitions.
- system/ - Misc system data and configuration.
Build and run from the repo root on Windows 10/11:
go build ./...go run ./cmd/njata -port 4000What this means:
- go run = builds a temporary copy and starts it right away (nothing new appears in your folder).
- go build = creates a real njata.exe you can run later.
Build a binary (creates njata.exe in the repo root):
go build ./cmd/njataRun the compiled binary:
./njata.exe -port 4000Connect:
telnet localhost 4000Unit tests (Go):
go test ./...Integration scripts (Python) live in scripts/tests and expect the server running on port 4000:
go run ./cmd/njata -port 4000Then in another terminal:
python scripts/tests/test_spawn.py
python scripts/tests/test_spell_combat.pySee modern/README.md for details and tests.
The original SMAUG-based code and data live under legacy/.