SharpMud 0.1.0-alpha.9
dotnet add package SharpMud --version 0.1.0-alpha.9
NuGet\Install-Package SharpMud -Version 0.1.0-alpha.9
<PackageReference Include="SharpMud" Version="0.1.0-alpha.9" />
<PackageVersion Include="SharpMud" Version="0.1.0-alpha.9" />
<PackageReference Include="SharpMud" />
paket add SharpMud --version 0.1.0-alpha.9
#r "nuget: SharpMud, 0.1.0-alpha.9"
#:package SharpMud@0.1.0-alpha.9
#addin nuget:?package=SharpMud&version=0.1.0-alpha.9&prerelease
#tool nuget:?package=SharpMud&version=0.1.0-alpha.9&prerelease
sharp-mud
A modern C#/.NET reimagining of a classic MUD (Multi-User Dungeon) — faithful to the genre's feel while built with current .NET architecture.
Alpha — not yet stable. Pre-1.0, no SemVer compatibility guarantees between releases yet; APIs, package boundaries, and persisted-data shape can all still change. Also currently pinned to a preview .NET 11 SDK (see
global.json) — accept that risk, or build againstnet10.0only until a stable release lands. Use it, but expect breaking changes.
SPEC.md— vision and high-level decisions (start here).docs/— detailed per-subsystem design docs. Start withdocs/engine-vs-ruleset.mdfor the entity model (Thing/Behaviorcomposition), then architecture, world model, character, commands, combat, persistence, networking, accounts/auth.
Solution layout
SharpMud.slnx
src/
SharpMud.Engine/ # Thing/Behavior, events, generic behaviors,
# command pipeline, session, tick loop.
# Zero deps on any ruleset.
SharpMud.Hosting/ # generic-host composition helpers, ruleset-agnostic
SharpMud.Persistence/ # EF Core repositories, provider-agnostic
SharpMud.Persistence.Sqlite/ # SQLite provider
SharpMud.Persistence.DynamoDb/ # DynamoDB provider
SharpMud.Adapters.Cli/ # local stdin/stdout session adapter
SharpMud.Adapters.Telnet/ # raw TCP session adapter + listener
SharpMud/ # meta-package (Engine + Hosting + Persistence only - ADR-0007)
samples/
SharpMud.Samples.Classic/ # D&D-flavored sample ruleset + composition root
tests/
SharpMud.Engine.Tests/
SharpMud.Hosting.Tests/
SharpMud.Persistence.Tests/
SharpMud.Adapters.Cli.Tests/
SharpMud.Adapters.Telnet.Tests/
SharpMud.Samples.Classic.Tests/
Building & testing
dotnet build SharpMud.slnx
dotnet test SharpMud.slnx
Running
dotnet run --project samples/SharpMud.Samples.Classic # local single-player CLI
dotnet run --project samples/SharpMud.Samples.Classic -- --telnet [port] # telnet server, default port 4000
Using SharpMud as a library
src/ publishes as NuGet packages (SharpMud.Engine, SharpMud.Hosting,
SharpMud.Persistence(.Sqlite/.DynamoDb), SharpMud.Adapters.Cli/
.Telnet), plus a SharpMud meta-package pulling in the engine-level core
(Engine/Hosting/Persistence) — you still add a persistence provider and
a transport explicitly, per ADR-0007.
samples/SharpMud.Samples.Classic is a full reference consumer — start there
to see how a ruleset composes against the packages. See
ADR-0006 for the design.
Containerized
docker build -t sharpmud .
docker run -p 4000:4000 sharpmud # telnet server (container default)
See docs/deployment.md for runtime configuration (env vars, mode selection) and current limitations.
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- SharpMud.Engine (>= 0.1.0-alpha.9)
- SharpMud.Hosting (>= 0.1.0-alpha.9)
- SharpMud.Persistence (>= 0.1.0-alpha.9)
-
net11.0
- SharpMud.Engine (>= 0.1.0-alpha.9)
- SharpMud.Hosting (>= 0.1.0-alpha.9)
- SharpMud.Persistence (>= 0.1.0-alpha.9)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-alpha.9 | 0 | 7/23/2026 |
| 0.1.0-alpha.8 | 22 | 7/22/2026 |
| 0.1.0-alpha.7 | 24 | 7/22/2026 |
| 0.1.0-alpha.6 | 35 | 7/21/2026 |
| 0.1.0-alpha.4 | 36 | 7/21/2026 |
| 0.1.0-alpha.3 | 32 | 7/21/2026 |
| 0.1.0-alpha.1 | 32 | 7/21/2026 |
| 0.0.1-alpha.2 | 32 | 7/21/2026 |