You can serialize the whole base, more info (whoops sorry for wrong link! updated it) on that.
It’s worth it to check this too
Note that, for games that have the same type of objects being used again and again (e.g. a building game, where you just have 3 (or more) types of building parts, like brick, dirt and plastic) you can simply save a table containing table where the key is each object’s name, and that table will hold a long list of
Vector3
s that indicate where each block of that certain type is placed. And when unloading, loop through the table, and each time just:Clone()
the original object of the current type (assuming it’s stored inServerStorage
orReplicatedStorage
) and position it at the current position. This is better than having to save properties and extra info we don’t need. Of course this depends on the structure of your game, you might need to store additional info such as color maybe.