https://github.com/tpolecat/mud
Experimental pure functional, nonblocking port of bits of DikuMUD.
https://github.com/tpolecat/mud
Last synced: 10 months ago
JSON representation
Experimental pure functional, nonblocking port of bits of DikuMUD.
- Host: GitHub
- URL: https://github.com/tpolecat/mud
- Owner: tpolecat
- Created: 2013-05-25T18:35:00.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2014-05-06T05:15:44.000Z (about 12 years ago)
- Last Synced: 2025-02-06T01:49:32.105Z (over 1 year ago)
- Language: Scala
- Size: 305 KB
- Stars: 6
- Watchers: 7
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
mud
===
Experimental pure functional, nonblocking port of bits of DikuMUD.
So far you can log in and walk around and see other players. That's it. But if this kind of thing excites you, all you should need to do is `sbt run` and then `telnet localhost 6011` in a few windows. Directions and `look` are the only commands so far.
Implementation Notes
--------------------
This is mostly an experiment in applying `tiny-worlds` to something nontrivial, and so far it's working _extremely_ well. Consructing one-off worlds and world transformers is trivial. `WorldT.Lifted[IO]` instances encapsulate netty and the STM-based gamestate, and several one-off worlds encapsulate minor interactions with mutable doodads like channels.