I reached a poinnt I have to decide how to design my client code for simple MMORPG game.
I already have basic server implementation with defined messaging protocol.
Currently, the server sends updates for clients in two forms:
- Absolute state: the full state of the client.
- Delta state: the difference of current state and last known client states.
This two classes are defined in a “Common” project, so the client will also be able to use them.
However, when I started to think about the Client design, I wanted to follow the MVC pattern and create Sprite class which will be responsible for self drawing and updates (a controller class), but I struggled to see how to manage the model within the class (like using internal timers) and outside the class (with the recieved new update absolute/delta states).
I don’t want to create a new duplicate model in the client that will be updated according to the update messages.