DataPath class is now completed and includes a new SetExtension() method for setting game object file extensions.
Scripting support fully implemented.
StandardGame now contains a Initialize() method for compiling scripts and searching for sub-classes of StandardGame
Server app will now use a Scripted game class instead of the default StandardGame if one is present.
StandardGame.Start() is now virtual so child classes can override it.
Sample Game script created to show how to create a custom game script, including how to setup the game and create Rooms pragamatically.
ScriptFactory has a new method for searching all scripts and scripts that inherit from a specified class.
Renamed all of the Command scripts. They no longer start with 'Command'. Example: "CommandSay" has now become "Say". There is no need to preceed the command name with the word "Command" anymore.
* XMLData now contains a GetData() method for returning data from the stored data collection.
* XMLData now contains a Load() method for loading a previously saved XML data file.
* StandardCharacter now automatically generates a filename.
* StandardCharacter.Connected added. Use Connected to check if they are connected to the server regardless of the values for Enabled and LoggedIn. LoggedIn is now true once the Login command is completed.
* Default Character Role is now Player.
* Server.ServerOwner property added. When a character is logged in matching the ServerOwner name, it will automatically be assigned the Admin role.
* StandardCharacter.ExecuteSilentCommand() method added for executing a command and not having the "Command: " line printed to the screen when the command is completed. Useful for daisy chained commands.
* StandardCharacter login code is now 100% completed. Including save/load code and new character creation.
* StandardCharacter.SetRole() method added. Admins can set the role of any other character in the game if they want to.
* BaseScript & StandardCharacter now have their Load() code fully implemented. They can save and load their files now.
* Player creation command added. Can only be executed from within the login command. If it is executed from any other object it will bail.
* Stop command now only works when a Character with Role = Admin issues the command. During development of a MUD Game, this would typically be the Server.ServerOwner character who will have Admin rights.
* ConnectionManager had some bugs fixed such as not removing Threads from the Thread collection when a character disconnected. Also re-organized the character connection code some.
* Telnet client header information is now successfully (finally) stripped out of the first stream received.
* Command System underwent some optimizations along with now always returning a Boolean value once execution of a command is completed.
* ICommand interface now forces all ICommand.Execute methods to return a Boolean value.
* DataPaths class re-wrote and is now simi in-use by StandardGame and the Login command
* Minor adjustments to how characters are initialized upon connection in various classes.