Aidos
Aidos copied to clipboard
Game Design
This is how I feel we should be designing the game that is General Architecture
Initializing of the Resources
- load graphics , sounds ect
- Handle missing resources
Initiate Game
- Create objects required for the game, Add event handlers , Initialize the game variables like score ect, Initialize physics
- Loading game state from disk in case we are loading a previously saved game.
Run the main game loop
- Handle user input such as keyevents
- Update the game based on user input that is updating the player, enemies ,the world ect
- Send the updated to game state to server in case of multiplayer
- Render the updated game state
Finishing up
- Save important variables like score to disk
- Release resources , destroy objects
Let me know if there is something that was left out.
Sound goods. Shouldn't the game initiates only after handling user inputs?
Seems good to me. So whats the plan just expand this document out till we have a clear description of how to build the game?
@lyx13710 User input is handled throughout, starting from the launch of application till the application is closed. What meant here was that we wont update the game state until we are aware of what the user input is. @CiaranRoft Yeah we will expand this document as things progress. I think we will have a clear description only skeleton for the game is built.
There will be many use cases which I haven't covered yet here. I will try to incorporate them here as we progress.
@ashish2199 so is there anything I could do to help in this process then?
@CiaranRoft you can study implementations of other 2D game and suggest any changes to this design if any you feel. Once we are decided with the language. I think we can start focusing more on the implementation details such as layout of functions/classes and skeleton of the code.
When should be begin it?
You're missing menu states such as Main menu and pause menu
@EricH-Propser I feel what you are suggesting is more towards the actual user experience of the game rather than the general architecture and flow for the game. Thanks for your feedback.
@ashish2199 it depends on if you're doing state based control or not, if you are - these are valid states. If not, then feel free to ignore.