- Began support work on the networking side of the designer UI. Attempts to connect to the server or run stand-alone.
- Began implementing object creation.
Mud Engine:
- Added the [Browsable(false)] attribute to several Game properties so they are not visible within the new Designer.
- Added new Project. Mud Designer project will include the GUI elements needed for graphically building a MUD. Due to Environment creation being finalized, work on a GUI based Environment creation can start.
Mud Engine:
- Objects no longer require a path to be supplied when calling Object.Save()
- EditRealm command now edits senses.
- EditRoom now fully supports creating doorways, however editing existing doorways and linking to existing rooms is not implemented. This command only supports creating new doorways for non-existing Rooms (Rooms are generated as needed)
- EditZone Now fully supports senses and implemented.
- Game now supports loading of .ini files when calling Game.Load()
- All objects now include a SavePath properties. Override this to supply a path for where the object needs to be saved. All Environment and BaseCharacter objects override the BaseObject.SavePath to save into ActiveGame.DataPaths.Environemnts and Players respectively.
- ObjectCollection now instanced during ScriptEngine initialization to prevent exceptions during runtime.
- Create command no longer converts all names to lower case.
- Updated the Walk command to execute the Look command in a safe manor without injecting a command into the player Telnet console.
- Removed code for pathing. MudEngine handles it now.
- Removed _InstallLocation and placed it as a private Field within the MudEngine.Engine class.
- Mud Designer now Validates paths during startup
Mud Engine:
- Added Debug code to ValidateDataPaths and GetDataPath Methods. if DEBUG constant is defined it returns the paths or creates the directory structure based off the _InstallLocation field.
- Zones now contain a copy of the Realms Name
Realm Explorer:
- Renamed _Realm to _CurrentRealm to be more consistant with other editor naming conventions.
- Zones can now be added to Realms
- Realms can now be saved and loaded
- Zones not within any Realms are listed in the Realm Explorer as being Available For Use
- Realm Explorer Launchs the Zone Builder
- Deleted from Solution.
Mud Designer:
- Now checks for arguments, allowing the other editors to launch the Mud Designer with another editor supplied as an argument, allowing one editor to launch another one without needing to copy-paste a bunch of code.
MUD Engine:
- BaseObject now sets default values for Script and Name so it's child classes won't need to.
- Realm and Room no longer set Name and Script property default values.
Realm Explorer:
- Now validates Script code.
- Changed from using Managed Scripting Serialization to MUDEngine filesystem layer for saving/loading.
- Added support for launching the Zone Builder from within the Realm Explorer.
Room Designer:
- Changed from using Managed Scripting Serialization code, to MUD Engine Filesystem layer for saving/loading.
Zone Builder:
- Initial UI Designs
- Launches Room Designer for editing of rooms.
- Changed ValidateProjectPath to ValidateDataPaths. Now can use the engines current install location if a path is not supplied
- ValidateDataPaths iterates through a new enumerator containing all of the data paths, and creates the directories if they dont exist.
- GetDataPath method added for returning the absolute path to any of the save directories specified in the argument.
- BaseObject now contains a readonly Filename property that returns the objects Name with it's Type assigned as the files extension.
- BaseObject's Script property was added.
- Room.StatDrain re-added. Changed property Type to boolean instead of custom struct.
- Room Designer's constructor code was refracted to help clean it up. Plugin loading, doorway list compiling and room setup is now contained in three different methods.
- Room Designer can now Save scripts.
- Room Designer now has default scripts generated.
- Changing the Object Management tabs to 'Script' now refreshes the script to display correctly.
- Room Designer now accepts a single argument for specifying the name of a room to Load. Use "room=Room Name.room" as the syntax.
- Room loading is implemented, but only via a supplied argument during application launch.