Thank you guys for your insight. I had some speculation that was a case of lack of technology. I just don't know about these things in-depth so I appreciate you guys filling me in. Excuse my ignorance
Would it be possible to do what I suggested on a smaller scale? Maybe cut parts out and shape it to how the developer would want it but have a system of laws in a game?
Could someone explain what No Man's Sky is trying to do with it's game a little more. With the procedural system and all. It says in the trailer that every atom, rock, leaf, planet, etc.. is procedurally generated. But as you guys stated going by atoms would be a nightmare for computers right now. Take a look at the trailer:
My guess is that the game has its assets modular,and that there is an algorithm that is randomly picking up pre-created content modules and places them in the world.
For example lets take the Shark model. This game has Sharks. What the developer might have done is to split the Shark's body into different modular pieces with a given number of "slots" and have let's say 3 types of fins,3 types of eyes etc. So he can have an algorithm that when a Shark has to be placed somewhere,the system picks up randomly one body part for each slot for each Shark from a stack of pre-made Shark pieces,and thus each time the player visits that area,he meets a different model of a Shark. Note that it doesn't has to be a Shark. It can be a planet,or a gun (that's how Borderlands has millions of guns) or whatever.
That is doable. But isn't a phsyics thing.
It's just an automated process where the cpu randomly picks up parts of content that were already created and generates variations in random.
This is being done at least since the 90s,and it's what kind of technology gave The Elder Scrolls: Daggerfall the largest in-game world ever made. But it's not doing that by simulating real world physics laws - it is doing it by picking up and placing pre-made content pieces randomly.
The use of procedurally generated worlds systems have some pros and cons,like the following:
pros:
# The space on the hard drive the game will be needing is less,as it won't have to store data for what goes where.Means smaller hard drive space requirement.
# You can have huge worlds with it.
# Every time the world will be different.
cons:
# Either the initial loading time will take much longer,if the random generation happens during a loading screen,or the frame rate will be slower if random generation happens while the player is playing.
# Every time the world be different.
So apart from the trade off that you shorten the hard drive requirement for longer loading times or slower frame rate,it's also a matter of if you want your game's world to be the same each time,or different. I think it' obvious that if the world changes each time the player is starting the game,that navigation problems can come up,and player confusion. Because if you remember that the last time you stopped playing the game your character was outside a house that was opposite a river,and the next time you load your save there is not a house or a river where your character is,you will be confused.
In a space game that has you travel to a number of individual planets,and in which the quest structure is such that you will never have to visit the same place twice and every time your character died you started at a specific point that is not randomly generated,or it didn't let you to save in an area that is procedurally generated on the fly, perhaps that could work without confusing the player.
But do you see how limiting this is on gameplay ?
Another way of implementing such a system is the way Minecraft is designed.
Minecraft is designed in such that the first time the player will start playing in a world it will be generated completely randomly,but after a player saves his progress,when he loads his save again,the world will be the same.
What Minecraft does is to create a random world and then have that specific world layout / map data saved on the user's save file.
In that case the amount of data that would be included in the basic game's files,is instead included on each individual save file.
And of course as the player explores more of the world and more generation is happening,more data needs to be written,and thus the space of save files inflate over time.