WindowMud
Purpose
WindowMud was created to demonstrate one of a myriad of methodologies that can be used to build a mud from scratch. The author does not think that the WindowMud methodology is the best nor is it groundbreaking, but hopes that someone will find the information on these pages useful. The methodology uses Microsoft Visual C++ 6.0 (MSVC) and emphasizes the following:
- !Terse
- Readability
- No pointers to functions
- Globals variables are used
- Severely limited use of macros
- No overloading, inheritance, polymorphism
- Use Microsoft Foundation Classes (MFC) as needed
Overview
WindowMud is presented in its various stages of development, from creation of the MSVC workspace to the finished product. The finished product is not a full function mud, but instead a framework upon which a mud codebase could be built. This is not a MSVC tutorial, nor a C++ tutorial, nor a Mud building tutorial, but detailed instructions are provided for some aspects of the project, thus providing some explanation of how a particular stage of development was achieved.
No attempt is made to explain every line of code. However, by taking advantage of the facilities of MSVC's IDE such as breakpoints, run-to-cursor, and watches it should be obvious what a line or a section of code does. Should any part of the code be deemed to be inefficient, unnecessary, or lacking in some way, then feel free to improve it.
Outline
Chapter 1 - Setup
Chapter 2 - Log
Chapter 3 - Sockets
Chapter 4 - Chatter