navi homePPSaboutscreenshotsdownloaddevelopmentforum

Opened 12 years ago

Last modified 8 years ago

#385 new task

Save a game

Reported by: jo Owned by: nobody
Priority: minor Milestone: Version 0.1 Codename: Arcturus
Component: GameLoader Version: 0.0.4
Keywords: Cc:
Referenced By: References:

Description (last modified by fvultier)

Think about what are the relevant states that have to be saved and how to store them in a file.

Possible relevant states:

  • the level's name
  • all movable entities' location and orientation
  • all pawns' health and wether the correspoding objects have been destoyed
  • all states of the triggers & events triggered
  • the state of pickupspawners
  • In general everything that has to be updated throughout the network in a multiplayer game.

Next steps:

  • How can a saved game be loaded?
  • When should the player be able to save a game (every time with a menu option or only if he is at a autosave point?)
  • Make the save option compatible with the multiplayer mode. Who should be able to save a game?

Change History (4)

comment:1 Changed 12 years ago by jo

  • Description modified (diff)

comment:2 Changed 12 years ago by landauf

Unfortunately this is not an easy task.

In general everything that has to be updated throughout the network in a multiplayer game.

That's not enough. You have to save the server-side state as well. And this is not synchronized over the network.

Think about reloading a weapon. The weapon has a flag which tells if it is reloading. And we create a timer which resets this flag after some time. You'd have to save this flag (it's not synchronized over the network nor loaded from XML) and you'd have to save the timer. And the link between the two. How to save pointers anyway?

I don't recommend to use this as a PPS project.

comment:3 Changed 12 years ago by jo

For a first implementation find a concept where only a little information has to be stored. E.g. allow saving only at certain places, like checkpoints that can only be reached when the player has fullfilled a certain part of a quest. Reaching the next checkpoint implies that no enemies were left behind and their state doesn't have to be stored.

comment:4 Changed 8 years ago by fvultier

  • Description modified (diff)
Note: See TracTickets for help on using tickets.