Im planning to make a story driven game, singleplayer, how would i go about saving a players current point in the story?

when making a story game, it is hard to create a great saving system because there are many aspects that go into it such as:

  • certain decisions made by the player that affect the story
  • saving where they physically are in the story, like their position (this could be done with something such as a bed from minecraft)
  • their inventory, what they have and what is equipped
  • if theyve complete parts of the story, like a boss or finished a puzzle

an annoying but probably simple way i thought i could do this is to just story almost every value inside of a datastore (im going to use profileservice), and when you load into the game it could maybe check through everything in your datastore and set as accordingly, but i feel like that is way too much reptitiveness of if checks, etc.

if you were making a story driven game, how would you approach this?

In terms of decisions, it really depends how you structure your game files and stuff, if it is all modular you could probably get away with using folders to form different game story ‘paths’, if not probably going to be a table of choices and setting it’s values.

Physical position is pretty easy, just get their last CFrame.

For saving the inventory, look at this: How to save parts, and the idea of Serialization.

Parts of the story, just set Booleans.

2 Likes