Show HN: Moongate – Ultima Online server emulator in .NET 10 with Lua scripting

Project & Tech Stack

  • Built as a modern Ultima Online server in .NET (current versions) with Lua scripting via MoonSharp.
  • Uses NativeAOT to produce a single native binary for fast startup, predictable performance, and simple deployment (e.g., Docker).
  • React-based admin UI was largely generated with AI assistance; developer dislikes front-end work.

Networking, Sectors & Performance

  • World is partitioned into sectors with delta-based synchronization.
  • When entering a sector, only newly visible sectors are synced; nearby sectors may be fully refreshed due to client view limitations.
  • Outgoing packets are queued so the main loop isn’t blocked, but packet bursts in busy areas are still an open tuning problem; ideas like prioritization and spreading sync over multiple ticks are on the roadmap.
  • Other developers compare/contrast with their own frustum or partition-based approaches.

AI Tools in Development

  • AI (e.g., “Codex” / ChatGPT-like tools) used heavily for tests, boilerplate, and React UI.
  • Some skepticism about using AI even for community interaction; project owner clarifies direction and design are human-led, with AI as a coding assistant.

Nostalgia & MMO Design Discussion

  • Strong nostalgia for UO-era private shards and tools (Sphere, UOX3, RunUO, ModernUO, etc.); many credit UO emulator tinkering with sparking their programming careers.
  • Long discussion of UO’s unique qualities: open PvP, true loss, bugs treated as features, housing in the shared world, rich emergent stories, and “commoner” roles like bakers, miners, decorators, and tamers.
  • Comparisons drawn to EVE Online, Star Wars Galaxies, Tibia, Haven and Hearth, and UO Outlands; sentiment that most modern MMOs are safer, more “theme park,” and more homogenized.

Griefing, Risk & Player Culture

  • Debate over whether UO-style freedom and griefing produced magic or simply drove away most players.
  • Some argue high-risk shared worlds are culturally and commercially untenable now; others believe the loss of friction killed the genre’s depth.

Recreating UO Today

  • Many doubt the original experience can truly be recreated due to modern player expectations, ubiquitous guides, and market pressures.
  • Nonetheless, there is clear enthusiasm for hosting family shards, niche servers, or experimental worlds.

Terminology & Legal Concerns

  • Extended debate over “server emulator” vs. “server” or “protocol reimplementation”; some see “emulator” as technically misused but culturally entrenched in MMO circles.
  • IP risk is raised but others note UO emulators have existed since the late 1990s without aggressive takedowns, and may even help keep interest in the original game alive.

Future Ideas

  • Interest in plugging LLM-driven NPCs into Lua, giving merchants and quest-givers dynamic dialogue, memory, and world-altering interactions.
  • Suggestions for tutorials and “family-friendly” presets (e.g., faster skill gain, low-grief settings) for casual/private servers.