Procedurally-generated landscapes use algorithms to determine where things show up on-the-fly when constructing the world instead of storing object placements in a massive file. This lets it cut down on file size immensely, but it gives up the "hand placed" feel of having actual people populate a world by hand.
FUEL is no different. FUEL most likely uses an algorithm that generates "object spawn" points on the landscape, and then uses another algorithm to populate those spawn points. This lets it create scattered forests, dense forests, place buildings, random barrels, junk cars, etc, all across the landscape without needing to store a database file of where each object is placed. The logic of the algorithm places items based on their parameters. If the game uses the same seed number each time it generates things, then it can place the same things in the same locations every time.
Natural objects (trees, plants and grass) seem to be controlled by the DPC archive files. (At least I assume so, because I can't figure out where their control files are otherwise.)
However, there's two text files that control what man-made objects show up (signs, wrecks, buildings, etc), the frequency they show up, etc. They're located in the following folder:
- (Steam): <Steam install>\steamapps\common\fuel\AutoMesh\
- (Retail): \Program Files\Codemasters\FUEL\AutoMesh\
- AutoMesh.txt (what appears off-road, IE: on hills and countryside)
- RoadMesh.txt (what appears near roads, like barricades, signs, junk vehicles, etc)
NOTE: The end of each object line in these files includes a space. Each object line MUST have this space at the end or else it will bork things up. So, when you're done editing, be sure each line has that space still there.
The object names are in French, but you can use Google Translate to easily determine what each object is. (EG: "Route" = "Road" and "Fermee" = "Closed", so "RouteFermee" = "Road Closed" sign.)
The RoadMesh.txt file is the more complex of the two, because it has what kind of road (dirt, asphalt, etc), how much curve the road should have to generate the item (eg: barricades on the side of roads have a higher chance of showing up on more curved turns then on straight-aways), how far from the road (EG: barricades always show up on the sides of the road while junk cars can show up in the middle or sides), the probability of them showing up, etc.
The AutoMesh.txt file is a bit more simplified (and the one we're going to focus on), since it just tracks the item, the chance of it showing up, ground types it can show up on, and slope/hole frequencies. Of special interest are the following variables:
- ProbabilityX = Chance of item spawning
- GroundMaxPenteX = See below
- GroundMaxTrou = See below
X = value from 0 to 100 (percentage) on all of these. EG: Probability6, GroundMaxPente75, GroundMaxTrou60.
Probability is usually a pretty low number, because there are many objects vying for the "object spawn" nodes. FUEL may have unique "object spawn" nodes, though. EG: ones just for buildings, ones just for FUEL barrels, etc. That could be why it has such low probabilities for things. However, many objects probably share the same "object spawn" nodes. So, a FUEL barrel, a wood shack (the kind you can break), and that old junk blue truck you see in the woods are probably all trying to spawn on the same node. Once something spawns on the node then nothing else will. But, you'll notice that the landscape isn't totally covered with junk. The probabilities are sufficiently low enough to keep that from happening. (This also helps facilitate keeping FPS impact down to something reasonable). Setting it to 0 would most likely keep things from spawning, but some items are already set to 0 probability by default. So, this could just be a very, very low spawn chance.
GroundMaxPente (slope) & GroundMaxTrou (hole) seem to work in tandem to determine how flat or sloped of terrain things can show up on. GroundMaxPente (slope) seems to have a greater impact then GroundMaxTrou, though.
EG: if you set an objects GroundMaxPente to 100, then the object will spawn on hill sides. Set it to 50 and it will spawn on relatively flat surfaces. Set it to 1 and things will hardly spawn. Set it to 0 and the item won't spawn. GroundMaxTrou, by contrast, can be set to huge fluctuations of 1 to 100, and doesn't seem to have as great of an impact. It almost seems to cover what "side" of a hill things will spawn. What is sure is that if you set GroundMaxTrou to 0 then the item won't spawn. However, setting both higher will increase the odds of things spawning even more, because they increase the surface area on which things can spawn. So, if you have a Probability100, but GroundMaxPente10 and GroundMaxTrou10, you won't see too many things (there's a high probability to spawn, but on a very narrow range of surface conditions). But, if you have Probability100 with GroundMaxPente100 and GroundMaxTrou100 you will see that object spammed all over the place (high probability to spawn ... everywhere.)
So, what can we do with all of this besides screw around?
- Make backup copy of each file
- Open originals
- Delete everything in them (except "IT_Fuel01" and "IT_Fuel02" in AutoMesh.txt)
- Save files
- Start game
Notice how every man-made object no longer shows up ... except FUEL barrels. By not populating the world with these meshes it should cut down on the graphical overhead. Probably not by much, but every little bit may help.
This also causes the game to only populate with 4-barrel FUEL stacks instead of singles. Not sure why. I can't seem to find any other item that controls FUEL barrel population other than these two. I would think the one that had the highest probability to show up is the singles, and the quads are the lower probability. But, deleting everything causes only quads to show up. Weird. So, in a way this is a bit of a cheat (since singles will be replaced by quads going forward).
Note that this doesn't impact most Career races, since many of those have hand-placed buildings / objects. So, you'll still see them fully fleshed out. However, on most Challenges (save for hand-built ones, like small circuit courses) you'll notice the random buildings and such are missing from the landscape as you cut through it.
FUEL is now truly a wasteland. Mother Nature has taken back her land.
Adjust FUEL Barrel Frequency (CHEAT)
- Make backup copy of AutoMesh.txt (if not already done)
- Open original
- Go to the "IT_Fuel01" & "IT_Fuel02" lines
- Edit "ProbabilityX", "GroundMaxPenteX" and "GroundMaxTrouX" (where X = 0-100) on both lines
ADDMESH: IT_Fuel01 Probability2 GroundNormal GroundMaxPente50 GroundMaxTrou50 ADDMESH: IT_Fuel02 Probability1 GroundNormal GroundMaxPente50 GroundMaxTrou50
A few more barrels...
ADDMESH: IT_Fuel01 Probability5 GroundNormal GroundMaxPente50 GroundMaxTrou50 ADDMESH: IT_Fuel02 Probability5 GroundNormal GroundMaxPente50 GroundMaxTrou50
More + showing up in more places...
ADDMESH: IT_Fuel01 Probability5 GroundNormal GroundMaxPente75 GroundMaxTrou75 ADDMESH: IT_Fuel02 Probability5 GroundNormal GroundMaxPente75 GroundMaxTrou75
More + showing up everywhere...
ADDMESH: IT_Fuel01 Probability5 GroundNormal GroundMaxPente100 GroundMaxTrou100 ADDMESH: IT_Fuel02 Probability5 GroundNormal GroundMaxPente100 GroundMaxTrou100
A ton more, but only on default barrel-spawning places (hill tops / prairies)...
ADDMESH: IT_Fuel01 Probability100 GroundNormal GroundMaxPente50 GroundMaxTrou50 ADDMESH: IT_Fuel02 Probability100 GroundNormal GroundMaxPente50 GroundMaxTrou50
A ton more ... everywhere...
ADDMESH: IT_Fuel01 Probability100 GroundNormal GroundMaxPente100 GroundMaxTrou100 ADDMESH: IT_Fuel02 Probability100 GroundNormal GroundMaxPente100 GroundMaxTrou100
Editing the Probability alone will naturally increase FUEL barrel frequency, since you are literally increasing the frequency of them showing up. Editing the GroundMaxPente (Slope) and GroundMaxTrou (Hole) also adjust WHERE barrels are allowed to spawn. So, when you adjust those upwards you will naturally increase the amount of barrels showing up, too, as you increase the amount of surface conditions they are allowed to spawn in (hill sides/slopes, beaches, etc).
Adjust as you see fit ... cheater. :)