- Rooms can now be linked automatically via the new Zone.LinkRooms method. Room linking can no longer be done manually as the Doorways property is now read-only.
- Door.Description has been removed. Doorway description will need to be included in Room.Description or Room.DetailedDescription properties.
- Added DetailedDescription to make creating multi-line descriptions easier. Not supported by the Look command yet.
- Game.IsRunning is now read-only. The Game will manage this property on its own.
- BaseCharacter.ExecuteCommand now will always return a string. Simplifying the game loop for users as they no longer need to check what Type was returned by the command.
- Doors now contain a DepartureRoom and a ArrivalRoom property allowing for easy access to Rooms that are linked together.
- Fixed a bug where Game, Realms and Zones always assigned IsInitial to Realms, Zones and Rooms when added to the collections. Collection would contain multiple IsInitial objects.
- Removed Room.InstalledDoorways property as that was used only by the old Designer
- Removed Room.Load() as that implementation of it is obsolete.
MudGame:
- Revised Zeroth to build it's Zone and Rooms using the new Zone.LinkRooms function.
- Greatly revised Program.cs and the Game loop to take advantage of many of the automations provided by the Engine now.
- Re-worked the command system. All commands now only need 2 arguments rather than 4. The actual command string and the Player
- All commands updated to work with the new command system
- Look command now works in the example MudGame
- Realm now contains InitialZone for the starting Zone within that Realm.
- Zone now contains InitialRoom for the starting Room within that Zone.
- All Environment objects now contains a Initial property and Add() method for adding child objects.
- BaseCharacter now contains a copy of Game
- Revised Realm.GetZone()
- Revised Zone.GetRoom()
- Removed Zone.RebuildRoomCollection as content is currently no longer stored using physical files.
- Added GameManagement.Log for logging errors and warnings to file. Use Log.Write().
- Deleted GameObjects.Characters.Controlled and GameObjects.Characters.NPC namespaces.
- Deleted PlayerBasic & PlayerAdmin classes.
- BaseCharacter now contains IsAdmin property for providing admin privileges to users.
- BaseCharacter now contains IsControlled property for setting user control or AI controlled
- Added startup.dat - This will supply information to the engine as to what Types will be used during runtime. Allowing for custom Types via scripts to be instanced and used (such as a custom player class rather than the default one).
- Added Look and Walk Commands, however they are not fully implemented.
- Corrected Networking classes having a public de-constructor. These must be private or the compiler fails.
- Corrected Networking classes using an incorrect 'using' statement. You cannot reference classes in the statement, must only reference the namespace itself (i.e. using MUDEngine.Networking).
- Removed using statement for Networking in the Networking classes as all classes created within that namespace automatically are within the same scope.