Commit graph

9 commits

Author SHA1 Message Date
Scionwest_cp
2622c2d8c7 * ConnectionManager now has a helper method for returning a Connected Character that matches the supplied name
* Added a new Command. SetRole allows Admins to assign a Server Role (Admin, Player, GM etc) to a specified character.  Server.ServerOwner is the only Character that can use this command regardless of server role.  Any other Character must have a Role of Admin in order to use it.
* StandardCharacter now checks if the character is connected as well as being enabled during execution of commands.
* Re-organized how the StandardCharacter save code was invoked during disconnection from server.
* StandardCharacter.Role is now saved and loaded from file.
2012-03-04 00:29:02 -08:00
Scionwest_cp
f2c5b594c5 * DataPaths now has two new helper methods. GetFilePath for returning the path to a supplied filename for a specified object type. GetExtension which returns a file extension for the specified object type.
* 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.
2012-03-03 23:29:58 -08:00
Scionwest_cp
4b6c394f43 * Moved the Telnet header removal code from StandardCharacter to the Login command.
* Login command now checks to make sure no illegal characters exist in the characters name such as underscores and asteriks.  Only letters and numbers are allowed.
* Only 1 word names are supported however I provided support for first and last name based characters within the Login command.  It is commented out and can be easily implemented by uncommenting.
2012-03-03 21:15:53 -08:00
Scionwest_cp
ec5a674062 * StandardCharacter now automatically invokes the Login command upon connection to the server. Login command not implemented completely yet.
* 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.
2012-03-03 20:57:47 -08:00
Scionwest_cp
0720393626 Fixed a error in CommandLogin preventing the source from compiling. Didn't notice that prior to committing the previous change set. 2012-03-03 13:56:19 -08:00
Scionwest_cp
40b0d2be79 * Began writing the code for player login support.
* Re-organized the StandardCharacter source code.
* StandardGame now implements DataPaths in its Constructor.
2012-03-03 13:53:56 -08:00
Scionwest_cp
f0ec29c240 * XMLData.Save now has exception handling code in-place.
* Added better commenting to the majority of the projects files.
* Removed command support from the server console.
* Added a Client side command STOP that can be used to shut down the server.  In the future that will be specific to Admins only.
* Characters now have their save code invoked during server shut down.
* Server shut down code added.  Server.Stop() fully implemented.
2012-03-03 13:24:35 -08:00
Scionwest_cp
27f7e31772 * Re-wrote the Server code again. Now much more reliable and passes all connections to the ConnectionManager properly.
* StandardCharacter re-wrote to support the new Server code.  Also added event method support for various states.
* ConnectionManager re-wrote to support the new server.
* Work on Log message importance started
* INetworked.Connect now requires a Socket as its parameter.
* StandardGame no longer has Properties for MaxConnections and MaxQueuedConnections.  This is handle via StandardGame.Start() parameters.
* CommandLogin command added.  Initial check-in and not fully implemented.
2012-03-03 11:17:01 -08:00
Scionwest_cp
3d8051c995 Initial Check-in for Alpha 2.0 source code.
Includes working Telnet server, working command engine and Character code.
2012-02-28 20:11:10 -08:00