Use consistent spacing in tox variables and lists
[mudpy.git] / README
diff --git a/README b/README
index 1e61636..a9d9271 100644 (file)
--- a/README
+++ b/README
@@ -2,20 +2,75 @@
  mudpy
 =======
 
-.. Copyright (c) 2004-2018 Jeremy Stanley <fungi@yuggoth.org>.
-   Permission to use, copy, modify, and distribute this software is
-   granted under terms provided in the LICENSE file distributed with
-   this software.
+.. Copyright (c) 2004-2019 mudpy authors. Permission to use, copy,
+   modify, and distribute this software is granted under terms
+   provided in the LICENSE file distributed with this software.
 
 The mudpy project aims to create a simple, generic, cross-platform,
 freely-redistributable MUD core engine which can be easily understood
-and extended. It is written in pure Python (currently compatible with
-3.3 and later versions) and has only pure Python dependencies. All
-configuration and data are stored in consistently-formatted plain text
-(YAML 1.1) files for ease of administration. The core engine is
-unicode-clean internally and supports UTF-8 encoding for input and
-output of extended text characters.
+and extended. It is written in pure Python 3 and has only pure Python
+dependencies. All configuration and data are stored in
+consistently-formatted plain text (YAML 1.1) files for ease of
+administration. The core engine is unicode-clean internally and supports
+UTF-8 encoding for input and output of extended text characters.
 
 The mudpy program and sample content are released under a free and open
 license, and any bug reports, criticisms, ideas, patches, content
 submissions or other offers of collaboration are wholeheartedly welcome.
+
+what's missing
+--------------
+
+This project is still very much a work in progress, and is unlikely to
+be suitable for anyone who isn't willing to put in a bunch of work (help
+implementing features upstream is welcome, of course!). Here's a
+non-comprehensive list of missing things most folks are likely to expect
+in a MUD:
+
+* interactive objects/props
+* inventory/equipment management
+* non-player characters
+* a default combat system
+* sample races/classes and spells/skills
+* example implementation of character stats/progression
+* closeable/lockable portals
+* ability to change randomly-generated avatar names
+* pagination of the output stream
+
+what's included
+---------------
+
+The fundamentals of a multi-user service are in place, and foundations
+are laid on which the missing features above can be built. Here are some
+highlights of what's been implemented so far:
+
+* the beginnings of a MUD framework
+
+    - account creation, authentication and lobby menus
+    - movement between rooms/locations with inferred portals
+    - in-room communication between users
+    - setting and viewing user preferences
+    - an integrated command help system
+    - world creation and introspection commands for admins
+    - live reloading of configuration and source code
+
+* a full-featured Telnet service with a focus on IETF RFC compliance
+
+    - RFC 854 Telnet protocol
+    - RFC 856 binary mode
+    - RFC 857 echo control
+    - RFC 858 go-ahead suppression
+    - RFC 885 end-of-record transmission
+    - RFC 1091 terminal type
+    - RFC 1073 window size negotiation
+    - RFC 1184 line-at-a-time input mode
+    - RFC 1143 "Q method" negotiation state engine
+
+* mature development practices
+
+    - traditional Python distutils/setuptools/pip packaging
+    - comprehensive regression and style testing
+    - minimal runtime dependencies
+    - extensive logging
+    - flexible, generalized data model
+    - in-repository documentation