blossom
blossom copied to clipboard
MUD (Multi-User Dungeon) game engine written in Rust.
🌸 Blossom
Via Telnet: telnet blossom.sombia.com 5080
Blossom is a MUD (Multi-User Dungeon) game engine written in Rust.
This is still an early work-in-progress and there will be sweeping, breaking changes often as I refine the architecture and API. If you actually want to build a MUD, you'd be best off using an existing codebase. Any of the old C-bases, Evennia (Python), or Ranvier (JavaScript) are excellent options.
Live Game
The test server listed at the top of the README should be online most of the time, though the database may be reset at any time.
Connecting via Telnet: telnet blossom.sombia.com 5080
In order to connect to the secure port, you must use a MUD client which supports TLS encryption. I recommend Mudlet for a cross-platform option!
Architecture
See ARCHITECTURE.md for a high-level overview of the underlying system design.
Contributing
Prerequesites:
- Rust Nightly 1.70
- PostgreSQL 15
In addition, some optional dev dependencies:
- Python 3.10 (tooling)
- SQLx CLI (migrations)
- NodeJS 19 (dashboard / content creation tools / web client)
Instructions to build:
git clone https://github.com/robertwayne/blossom- Modify the
.env.TEMPLATEfile in the root directory with your local Postgres details. (This is neccesary for SQLx to do compile-time SQL validation). - (requires SQLx CLI) From the root directory, run
sqlx migrate runto apply the schema. - Hack away!
- (requires SQLx CLI & Node) Run
./check.shbefore you open a PR. If you do not have the optional dependencies, run the commands manually.
By contributing, you agree that any code submitted by you shall be dual-licensed under MIT and Apache-2.0.
License
Blossom source code is dual-licensed under either
- MIT License
- Apache License, Version 2.0
at your option.