How the character Generator will work

Jul 10, 2008 at 10:32 AM
In order to keep things safe from people tampering with the client, all of the character generation happens by sending a message to the server and getting back a partially completed character xml document. The process goes:

User types in a name to the client. The client goes to the server and tries to create a new empty character with that name, if they character name already exists in the database then this is rejected by the server. If the name doesn't exist, then this character is created with no information apart from the name and the character information in the database gets sent back to the client as an XML Document containing the successful name and the database ID for that character.

Next the Race screen comes up and loads all the data that has been previously input by the administration form. As the player select different things like Race, Sex and portrait, the system will update the display accordingly. Once enough information has been entered, it will then allow the user to proceed to the next stage, this will trigger a a send to the server of the Race ID, Character ID, sex and portrait the player has selected. The server will then make sure the character and the race exists and then update this information and send back an XML document with the information entered so far for this character.

Next the Guild screen will come up, all the player needs to do is select the guild they want this character to belong to. And then click a button to move to the finishing screen. This will trigger the client to send the character ID and the guild ID and class ID (Which is automatically selected dependant on the Guild) to the server. Again the server will check that the character, guild and class actually exist and then add this information to the character data in the database and send back the character information so far as an XML Document.

Finally the character Finishing screen will be be displayed where the player can then roll their characters stats, Every time they click roll, it will send a request to the server with the character ID to generate the stats based on a 4d6 dice roll with the race modifications, it will keep doing this until it meets the minimum requirements for the Class that the character belongs to. Once it has successfully generated the stats, the server will write these stats into the database row for that character and then send back the character information as XML to the client. The client will then display the stats and wait for the player to accept them or roll again. Once this has been done, the character is then flagged to be finished and will no longer be able to change its demographic information and will appear on the list of characters on the Player Form.