Things are busy, so without further introduction, let's get back to the topic of Random generation!
Random Gen modularity.
Quest generation work continues as intended. The ultimate goal is to give the framework as much flexibility as possible and allow the system to be easy to implement in quests, events, pretty much anything.
The other side of its easy to use was a goal to make it also very easy to create new elements for the system.
And after a lot of deep tweaking and writing crazy algorithms, we have managed to create a modular structure generation that makes creating presets very easy and convenient!
Just like before, we will try to discuss the generation step by step.
1) Preset design
2) Premade structures
3) Randomly choosing a structure
4) Populating the structure
Repeating steps 3 and 4 desired amount of times.
5) Introducing outdoor sceneries.
1) Preset design
Listing items and setting them down was the usual way of how things were done on S3, I will use encounter containers as an example.
The containers are spawned on preset locations, they are set inside encounter map and are taking a single hex of space to not cause any kind of overlapping. This is a very simple and straightforward way to generate additional content on the map.
Our current goal is to improve such generation by a total rework, we want system to be:
- Allowing bigger than 1 hex sized elements
- Allowing walls/roofs/floors to spawn
- Reducing the need to describe elements in such deep detail for things to work properly.
Well, we did it. The current system supports multi hex containers and sceneries, that are not overlapping each other, have significantly improved the randomness of spawn and are generated within premade structures that are spawned into the map.
Without getting into technical detail I will show you the Tribal preset that is used as a testing ground.
Above you can see the "list" of items that can spawn within the tribal settlements, the system picks up data from a map preset file and builds it into a preset on the server-side. Here a person can define what is going to spawn where - 1/2/3 are containers with different rotations that help to define against what wall can what be spawned, latter 4/5/6 is the same concept but for spawning sceneries, a flavor. And last 7 are the elements that will spawn outdoors in the settlements.
There aren't many tribal elements in the Fallout files to fill up those lists with more content, but I'm certain raider camps and such will be far more varied!
All a person has to do is to put desired elements in the set spot, it is insanely easy! There is no need to duplicate files, to list them down inside game scripts, this single map is ALL that the server needs to fill up Tribal structures! The rest is handled by the ever-growing code of Random Generation.
2) Premade structures
To take the best of two worlds we connect random element spawning with premade structures. Those structures can be designed one after another by an eager mapper skilled person. There are no crazy requirements, just like with elements, structures are also modular and saving the map file after adding some more is all a person has to do.
The structure is made from 3 key things, SPOT hexes to define where structure begins and ends, LOOT hexes where the elements from presets can spawn, and the structure itself - walls, details, roof, and floor.
So... We've created a map file, without too much detail, what happens in-game?
The settlements are generated, of course! The above pictures are some of the randomly generated settlements that were created on the Quests.
The quest is telling what preset and how many buildings to generate (Adjusted by little randomness) and the randomly chosen structures - 3) spawn into the world one after another, becoming populated - 4) with preset elements. After all of those are spawned, the outdoor area of settlement is additionally populated with outdoor elements to add even more flavor.
The settlements feel pretty empty without NPC characters, but this has to wait into far further future when the AI system for enemies is complete.
This Preset system, based on a single map can take any form we desire, they can be monster nests, raider camps, ruined buildings - whole districts separated by roads, such system will make every encounter, every quest, slightly varied and unlike the previous.
Thank you for sticking with us folks, we are glad we can continue our passion project without pressure, taking all the time we need to deliver what we intend to.
There are more things related to S4 stirring in the background, including the concept of weapon modding, but things are not too set in stone yet to bring them to light!
Oh, I have almost forgotten! Happy anniversary! In last month we have hit the 5th year of Season 3! I am working arm to arm with contributors to squeeze out some things and create a quality update for the occasion, so stay tuned for that!