How about a game/game engine that worked like your brain when you are dreaming.
Essentially, the system would have the 'present state'. It would then use this 'present state' to discover 'expectations' of what should happen using some database of stuff and some code (such as if in the present state there exists a nuclear explosion, there definitely should also be zombies, military barricades and people running around). These expectations can be created through teaching (eg creating scenes by hand, letting players modify their environment to somethign they deem 'normal'...)
Lets call the component that finds these expectations about the future based on the present state the 'predictor'.
The present state does not only include objects and their locations or such. It is everything you can perceive about the environment. It includes patterns and events, not only concrete perceivable objects which form those patterns or events. You need to see the forest from the trees.
So we have:
The present state will not be exact nor it will be permanent. Information in the present state has some information that is used to determine its importance:
*If its presence can be deduced from the surroundings, it is implicitly stored. It does not need to be kept in memory explicitly.
*A blade of grass under a tree can be forgotten
*A blade of grass under a tree is not significant. A single blade of grass growing from some random brick of some building definitely is.
*If you perceive something, it is significant. The more you perceive it, the more significant it is. Whether you perceive it directly or indirectly.
*Essentially, if you dont care about something, it can be thrown away and replaced with something else when you come back.
Entities (objects, patterns, events, whatever) are more significant if they are deeply rooted in the world. To perceive something you dont need to see it, its enough so see its effects. Effects should be tracked to some extent.
This is largely a form of procedural generation. Just a lot more fuzzier.
Since nothing will be exactly defined, the graphical and physical side need to account for this and just throw stuff around so it looks somewhat correct. If implemented in single player, and the generation is done from the local PoV, it might be that the paths the player walks will not make sense if mapped from a global perspective. It might be more interesting that way. Positions should always be relative to other objects, there should be no global positions. Objects could have the same position in the mathematical sense but still be far away from each other since it requires a global perspective to be able to deduce that the objects have the same location if they are accessed through very different paths.
Lets say your world has a street. The predictor says there are buildings next to it, so the engine slaps on some random buildings next to it. You walk close to one and look down at the line where the street and the building meet, so the engine figures the road should actually be of the same material as the path to the door and quickly fixes that. With some blur and random plants to make it not ugly. Maybe some ants too, theres ants in them cracks. So you get to the door, which the engine just moved to line up with the pathway because perfection. Then you get in and because the dev wanted a space game the engine decides its a space ship because theres some slight artistic bias in the database of expected stuff. Of course the shape of the spaceship is not defined so you see some random hallway with random scientific doors and stuff, and walk to the first door and it happens to be the cockpit because nobody felt like describing any other type of room. Out of the window you see some ugly space texture that was actually space as seen from the ground even through you are now in space but close enough. Then suddenly theres a hole and you get sucked into space because thats what happens in spaceships. Then you die and respawn to the beginner area.
I emphasize that the world is not meant to be perfectly consistent. This is an optimization. It should only be locally consistent.
Someone implement plz
I suggest starting by making a functioning artificial intelligence. This should be trivial because a consciousness module is probably not needed.