NodeJS based MUD engine
See the staging branch for the latest features.
Ranvier is not a websocket MUD. It does not have a web client. It is a plain ol' fashioned telnet MUD. Any client you use to connect to the MUD you played 15 years ago will work with Ranvier.
Docs can be found on our website ranviermud.com
We have a slack channel you can use to ask questions, suggest features, or just keep up to date with the project. https://ranviermud.slack.com
- Robust bundle system: Nearly every aspect of the game can be modified without changing the core and allows for easy packaging and sharing of commands/areas/items/npcs/channels/behaviors.
- Scripting is event-based. Put a listener in the script attached to your mob and it'll automagically happen when the event is emitted. Adding new events is easy as npc.emit('eventName'); See documentation on node event emitters for more.
- Pfile saving in JSON, easy to parse for external usage.
- Rooms, items, and npcs are easily described in yaml. No weird bullshit ~~~~ and byte-specific parsing that requires a GUI editor to build.
- Leveling, passive/active skills, effects.
- Flexible channel system.
- Incredibly simple-to-add commands.
- Quest system allowing for starting/progress/completion from any event in the game
- Simple Diku-style combat system
- NodeJS >= v7.1.0
Up and running
git clone git://github.com/shawncplus/ranviermud cd ranviermud npm install sudo ./ranvier -v --save=10 --respawn=10
Connect to the server using
telnet localhost 23
There is an in-progress Web interface for viewing information about the MUD and building areas in real time. Currently, the following routes are supported:
GET: /api/items /api/npcs /api/players /api/rooms /api/help
Right now, you can whitelist IPs by adding them to a key called
webWhitelist in ranvier.json.
By default only the local host IP is whitelisted.
Debugging in Visual Studio Code
Visual Studio Code's built-in terminal will incorrectly render Ranvier output unless you set the console to "externalTerminal" or "internalTerminal", "internalConsole" will not work. View the relevant Visual Studio Code documentation here: https://code.visualstudio.com/docs/editor/node-debugging#_launch-configuration-attributes