VRID - Variable Realtime Interior Density

+
VRID - Variable Realtime Interior Density

Greetings,

since this Project is hopefully still in nice development i would like to suggest you guys a concept that we brought up on one our Game Projects wich sadly wasn't finished though. So i guess it would not hurt to let you know about VRID - Variable Realtime Interior Density.

The most Athmosphere breaking Part in any game that supports a open City is that there are thousands of Doors and only 100 of them actually lead into a Place and also just because they are Story relevant. The other doors are just statics and won't do anything. While we sure can agree, that not all doors in a City are unlocked, we can assume that many of them would be accessible at daytime atleast. Even more when you are some kind of Cop or Hacker or Brute ... Thief... who has access to door mechanisms.

So what VRID is about?
It is simple, to make almost all doors accessible with a Stairway behind it, leading to other rooms inside that building, wich leads (if they are hacked, lockpicked, forcefully opend) also to fully furnitured rooms even with people in it.

At this very moment you start to imagine how painfully it would be to modell all those thousands of rooms and interiors and stuff...and yes, if you would do them all by yourself it would be a work for years. But here the VRID System comes in. The base idea of this system is to have just a few base templates for Interiors that are generated and textured randomly by the system itself.
Lets make a example.
Residental houses:
Those are the most easy ones todo because in large citys those mostly have the same layout by their floors, stairways and rooms.
1. Create a Basement Floor. This always exist.
2. Create a stack up Floor. This floor will be placed on itself as a stairwair depending on how high the building is.
3. Create a Roof entry. The floors ends and you are at the last level so you can enter the roof.
These 3 parts need to come with variable clutter placeholders where static objects are placed randomly by the engine. Like plants, trash, dirt on the walls, grafitty, light and so on. And also Random NPC's can be placed.
If you want to drive it even further you can randomly texture the walls and let the game choose about texture presets fitting there.

lets say now you have about 30 Residental houses in the city, you can realtime generate their floors and stairways by this template just by telling the engine how much floors the building has. The engine will stack them up and place clutter also randomly so every rensidental building will look different from the inside. Of course once generated those informations must be saved for the ID of the house.
The same Principle also applys to the Residental rooms since every floor has alot of doors to private rooms. You just need to make a template of maybe two or three Room types. On Residental buildings the rooms are anyway all the same so also there you just need todo placeholders for certain Furnitures, clutter , dirt wich may appear , or not. There it even makes sense to randomize the Wall textures.

Ofcourse all this makes sense if the Player has some intrest in going there. So random Loot is also something that can be thought about. NPC's that are happy you came in or not. Random Scripted happenings like shouting or Help crys ... the possibilities are endless.
 
Last edited:
Interesting idea. The trick would be to reduce the "generic-ness" of the rooms. There tends to be either a sense of the random with this methodology or a sense of sameness.

I could move the thread to Off Topic, like most game-engine or non-CP2077-specific threads,, but it's fine here, for now.
 
I like it.
It would be GREAT to be able to enter any door you see but as you said creating a zillion interior spaces would be totally unreasonable from a development point of view. I wouldn't mind a certain amount of "generic" in the least as long as it was reduced as idea does.
Of course there would probably be no consistency as these rooms would be created and recreated each time you entered one.
Their base-line data could be stored but I'd have to see just how large such a database would be and how it would effect load times. When entering/exiting an exterior door I doubt anyone with even a basic grasp of computer mechanics would/could object to a load screen.
 
I think The ammount of "generic-ness" is simply a question of how much there is that can be placed randomly and how many base templates for rooms are available to choose from.The furniture and wallpaper of a room alone does a great impact on the genericness factor.

Also storing should not be that problem. It is even a option to let everything generate at the first install/start and save it in a small database file wich is quickly accesible.
This idea can spread even further and exterior clutters and objects can be placed that way, depending on the ammount not only the interior but also the exterior world would be unique for everyone.
 
Hm...

In Diablo II, one of the big selling points was the randomly generated maps. (In truth, there were a finite amount of maps, but how they linked up and what map you got was randomly rolled. Anyhoo.) For every save file you had, the game would remember the map it had selected previously.

Should they implement a system similar to what Moon_Fargis suggests, I think it'd be nice if the game saved the building interior that you randomly explored, for sake of continuity, should you decide to revisit.

(And to Wisdom's point: there are VERY few homes with basements here in California, where Cyberpunk 2020, and presumably, where 2077 is set. The only homes with basements here are very old, before people knew better about structural integrity in the face of earthquakes.)
 
If this was an option they could essentially be thinking about and the only wall they were hitting was money...
View attachment 5666
 

Attachments

  • shut-up-and-take-my-money.jpg
    shut-up-and-take-my-money.jpg
    21.4 KB · Views: 60
Top Bottom