Aidos icon indicating copy to clipboard operation
Aidos copied to clipboard

Game Design

Open ashish2199 opened this issue 7 years ago • 9 comments

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.

ashish2199 avatar Nov 12 '17 07:11 ashish2199

Sound goods. Shouldn't the game initiates only after handling user inputs?

lyx13710 avatar Nov 12 '17 11:11 lyx13710

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?

CiaranRoft avatar Nov 12 '17 12:11 CiaranRoft

@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 avatar Nov 12 '17 13:11 ashish2199

@ashish2199 so is there anything I could do to help in this process then?

CiaranRoft avatar Nov 12 '17 18:11 CiaranRoft

@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.

ashish2199 avatar Nov 12 '17 18:11 ashish2199

When should be begin it?

llllllxu avatar Nov 14 '17 18:11 llllllxu

You're missing menu states such as Main menu and pause menu

EricH-Propser avatar Nov 16 '17 23:11 EricH-Propser

@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 avatar Nov 17 '17 16:11 ashish2199

@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.

EricH-Propser avatar Nov 17 '17 21:11 EricH-Propser