Code Monkey home page Code Monkey logo

simplemud's Introduction

SimpleMUD

As its name implies, SimpleMUD is a NodeJS implementation of a rudimentary MUD server. It is intended to be used as a learning experience for those who has never programmed a MUD server before.

The original codebase for SimpleMUD was written in C++ by Ron Penton, the author of MUD Game Programming book.

Demo

WebTelnet: http://smud.ourmmo.com

Telnet: smud.ourmmo.com 3000

Highlights

  • Physical data (Items, Players, Rooms, Enemy Templates) are stored in JSON files
  • Dynamic game data (Timers, Enemies, Room's Loots) are also stored in JSON files
  • Every major functionality is fully unit-tested (189 total test cases)
  • Total lines of code for implementation is 2265
  • Total lines of code for unit tests is 3032

Requirements

  • Node.js >= v6.4.0

To Run Server

$ git clone https://github.com/lnguyenfx/simplemud.git
$ cd simplemud
$ npm install
$ npm start <port>

To Run Client

$ telnet localhost <port>

To Execute Tests

All tests:

$ npm test

Individual test:

$npm test "test/<ClassName>.js"

Special Thanks

Ron Penton for the original SimpleMUD C++ codebase.

Shawn Biddle for RanvierMUD, which is a source of inspirations.

Raymond Xie for the WebTelnet that is used as the Demo.

License

Copyright (c) 2017, Long Nguyen [email protected]

Licensed under the MIT License

simplemud's People

Contributors

gesslar avatar lnguyenfx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

simplemud's Issues

Question about improvements, etc

Is the idea that this should be as faithful to the source material as possible, or if I wanted to actual work on it as a base, should I send pull requests to make it a viable product or just keep my fork to myself?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.