Public
Remixed
Fantasy MUD with web GUI, APIs, and extensible world
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.

⚔️ Fantasy MUD - Multiplayer Text Adventure

A fully featured, web-based Multi-User Dungeon (MUD) with a rich fantasy world, REST API, and extensible database-driven content.

🌍 World

  • 8 Continents: Aetheria, Drak'thor, Silverwood, Irondeep, Mistral Isles, Shadowmere, Solaria, Frostheim
  • 120 Countries with unique governments, cultures, currencies, and lore
  • 60+ Islands (45 inhabited, 15 uninhabited) + 35 City-States
  • 45+ Wilderness Areas with varying danger levels
  • 20+ Explorable Locations with interconnected rooms and detailed descriptions

🎮 Features

Character System

  • 20 Races: Human, Elf, Dwarf, Halfling, Orc, Dark Elf, Beastkin, Dragonborn, Demon, Angel, Fairy, Vampire, Werewolf, Goblin, Slime, Merfolk, Giant, Spirit, Golem, Undead
  • 15 Classes: Warrior, Mage, Ranger, Rogue, Cleric, Paladin, Necromancer, Bard, Monk, Summoner, Berserker, Alchemist, Farmer, Merchant, Knight
  • Full stats: STR, DEX, INT, WIS, CON, CHA, LUK
  • Leveling system with class-based stat growth

Combat

  • Melee (swords, axes, daggers, maces, spears, unarmed)
  • Ranged (bows, crossbows, throwing stars, throwing daggers)
  • 12 Schools of Magic: Destruction, Restoration, Alteration, Conjuration, Illusion, Mysticism, Enchanting, Necromancy, Nature Magic, Blood Magic, Divination, Rune Magic
  • 35+ Spells and 16 Combat Skills

World Interaction

  • NPC Dialog Trees with branching conversations per job type (21 dialog trees)
  • 25+ Named NPCs with unique backstories, jobs, and personalities
  • 20 Monster Types (some tameable, some mountable)
  • Shops with browsable inventory and buy/sell
  • Gift Giving to build relationships with NPCs
  • Marriage system with affection tracking
  • Follower recruitment and orders
  • Creature Taming and mounts

Economy & Crafting

  • 45+ Items: weapons, armor, consumables, seeds, crops, gifts, tools
  • Multiple shop types (general, weapon, potion, seed)
  • Player-to-player trading
  • Farming: plant seeds, water crops, harvest
  • Fishing with luck-based catches
  • Construction: build houses, camps, villages, towns
  • Property ownership with farm plots

Guilds & Quests

  • 12 Guilds (Adventure, Merchant, Warrior, Mage, Thief, Farming, Fishing, Monster Hunter, Healer, Taming)
  • 12 Quests (main story, side quests, guild quests, events)
  • Guild ranking system (Novice → Grandmaster)

Travel

  • Boats, carriages, magical teleportation
  • Inter-continental and local routes

Social

  • Friend requests and acceptance
  • Private messaging between friends
  • Character and world export/import (JSON)

Calendar & Seasons

  • Spring, Summer, Autumn, Winter
  • Day advancement affects farming

Content Safety

  • Configurable toggles for romance, marriage, children per race/age
  • Trading of sentient beings disabled by default

🖥️ Web GUI

Full-featured browser interface with:

  • Account registration/login with session cookies
  • Detailed character creation (race, class, gender, biography)
  • Interactive game screen with location view, exits, NPCs, monsters, shops, travel
  • Shop browsing modal with buy functionality
  • Gift giving modal
  • Player trading
  • Command input (look, go, attack, fish, rest, stats, help)
  • Inventory management with equip/use
  • Quest tracker
  • Follower and tamed creature management
  • World map browser (continents, islands, guilds, magic schools)
  • Social panel (friends, messages, requests)
  • Export panel with full API documentation

🔌 REST API

All features available via authenticated API (session cookie or X-API-Key header).

Auth

  • POST /api/auth/register - Create account
  • POST /api/auth/login - Login (returns session cookie + API key)
  • POST /api/auth/logout - Logout
  • GET /api/auth/me - Current user

Reference Data (public)

  • GET /api/data/races|classes|magic-schools|spells|guilds|quests|continents|countries|islands|calendar

Game Actions

  • POST /api/game/look|move|attack|cast|fish|rest|use-item
  • POST /api/game/shop/buy|sell · GET /api/game/shop/:id/items
  • POST /api/game/dialog/start|continue
  • POST /api/game/gift|propose
  • POST /api/game/guild/join · POST /api/game/quest/accept
  • POST /api/game/trade/offer|respond
  • POST /api/game/follower/recruit|order · POST /api/game/tame
  • POST /api/game/farm/plant|water|harvest
  • POST /api/game/build|travel|advance-day

World & Export

  • GET /api/world/continents|countries/:id|islands
  • GET /api/export/character/:id|world

Social

  • POST /api/social/friend-request|friend-request/respond|message
  • GET /api/social/friend-requests|friends|messages

🔧 Modding

All game data lives in SQLite. To add content:

  1. Add rows to the appropriate tables (races, items, locations, etc.)
  2. Use the export/import API to share worlds
  3. Dialog trees, NPCs, and quests are all database-driven

Architecture

Rendering mermaid diagram...