No mans sky is like 18GB or so on my PS4, yet there are 256 galaxies and literally around 18 quintillion planets. It can be played completely offline too, so it isnt coming from some server somewhere
I understand they’re procedurally generated, so they dont even exist until you pass through that area, but even after playing for countless hours and crossing thousands of miles of landmass, the save file is still extremely small
In: 1323
There are a few important details happening.
——————————
Firstly, “in-game distance” itself contributes almost nothing to file size.
To a computer, recording a save file with *”Object-A is at location (0,0,0) and Object-B is at location (1,3,4)”* takes up the same amount of storage space as *”Object-A is at location (0,0,0) and Object-B is at location (2,6,8)”* despite the distance between A and B being “twice as far” in the second example.
This means that I can generate a sci-fi space universe with Planet-A and Planet-B and the file size will be the same regardless of whether the in-game travel time between those two locations takes 1-hour or 30-hours (despite the two choices producing very different feelings of “scale” to the player).
———————————–
Secondly, there are multiple kinds of “procedural generation” in games.
In some, a randomized procedure is used to make the world, and then every piece of that world is saved in its entirety. This is no different than making a world by hand… other than the fact that it makes a unique world each playthrough.
Other games never save the world, only the procedure. In this case, going to a location “generates” the world around you but it disappears just as quickly when you leave. If this is coded in a smart way, it can be the case that a location you leave gets re-generated *identically* when you return later.
———————————–
If you combine those two ideas, you can create one single unchanging procedure-file that generates the world without having to ever save everything it generates, and then you spawn user-made changes (like *”Destroy the block at coordinate (123987123,24095409,9778211)”*) on top of that with a similar amount of data to tracking objects in any other kind of game world.
Latest Answers