Mudlands MMORPG
Real-time multiplayer MUD with AI-generated NPCs and quests in ~175 hours of development (outcomes not measured yet)
For fans of classic text-based MUDs who want that experience with modern security and AI-generated content.
At a glance
- Role
- Creator and technical lead (solo)
- Timeframe
- ~9 weekly phases, ~175 dev hours (breakdown dated Sep 24 2025)
- Team
- Solo
- Users
- MUD and text-adventure fans; no player numbers published
- Status
- Feature showcase live at mudlands.vercel.app
- Stack
- Node.js 18, Express, Socket.IO 4.6, PostgreSQL, Redis, Ollama (Llama 3.1 8B), PM2, Nginx
Problem and stakes
Classic MUDs have a loyal audience but dated stacks and static content. MUDlands asks whether a modern web stack with AI-generated NPCs and quests can keep a text world fresh while running on modest hardware.
Constraints
Run on modest hardware (2 GB RAM, 2 CPU cores minimum). Built solo. The game falls back to static content when the AI service is unavailable.
Decision
A Node.js/Express server with Socket.IO for real-time play, PostgreSQL for persistent state, Redis for sessions and hot game state, and a local Ollama model for dynamic NPCs, quests, and descriptions.
Program plan
Weeks 1–2: architecture, auth, and security hardening. Weeks 3–4: combat, inventory, and progression. Weeks 5–6: rooms, monsters, NPCs, and shops. Weeks 7–8: Ollama integration. Week 9: SSL, Nginx, and production logging.
Technical system
Services: GameEngine (game loop and state), World (rooms and location), CommandParser, CombatSystem (turn-based, with criticals and dodge), QuestManager, SocketHandler, and AIContentService (Ollama).
Content: 13+ rooms, 8+ monster types with loot tables, 19+ items, AI-driven NPCs with personalities, and 25+ game-master commands (including AI NPC, quest, and monster generation).
Security: Helmet, CORS, CSRF tokens, rate limiting, input validation, and secure cookies with Redis-backed sessions. Ops: PM2, Winston logging, and daily PostgreSQL dumps.
Execution
Delivered across nine phases in about 175 hours (architecture ~40, game mechanics ~60, security ~20, AI integration ~30, testing ~25). The codebase totals 119 files and 37,000+ lines.
Outcome
Outcomes not measured yet. In testing, the project's breakdown reports 50+ simultaneous players and under 100 ms for most game actions.
Reflection
Known gaps: only basic error handling, with no unit tests. The single-server design limits growth, and dynamic content depends on the AI service. Ideas noted for later: guilds, an auction house, PvP, and player-created quests.