I changed my mind a little on how I'm going to handle the combat logic. I was going to have the functions built into the various entity classes. But now I have moved them into the newly created CombatManager class. This class as the single purpose of coupling all of the combat functionality. It knows how to apply damage for example to each type of entity currently in the system.

More than likely it will also have a standard function that can be called to invoke skills. This is needed because skills will be invoked my id not specific function calls. right now I"m thinking a skill id will come over the wire. The server will validate that the user has that skill and then it will pass that number along with source & target information to a generic function. Which will intern pass that information to a dedicated function for each skill. Unless the id is a scripted function in which case the script would need to be loaded and executed.

I'm not going to worry about the scripted skills part just yet. I want the core skills to be hard coded for performance reasons. As a matter of fact I'm only planning on adding the script ability to allow easy customization for 3rd parties later.

I may change my mind on that last point but I doubt it.


Popular posts from this blog

VK9 - Milestone8 Completed

VK9 - Milestone13 Completed

VK9 - Milestone16 Completed