- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
v0.31:Advanced world generation
This article is about an older version of DF. |
- This article contains information on advanced world generation. For information on basic world generation, see Template:L.
When you want more control of what your world looks like, it's time for advanced world generation. Help with this is provided below.
This article assumes that you are already familiar with Template:L.
Advanced World Generation Screen
Once you select Design New World With Advanced Parameters from the main menu, a screen that looks something like this will appear:
This screen is relatively intuitive but some parts could use some explanation.
Parameter Sets
The list of already defined parameter sets is in the upper right corner. You can select the current set that you want to work with using the up and down directional keys.
Hitting a will add a new set to the end of the list. You can also copy an existing set to a new one allowing you to base a new set on an existing one. Using t you can change the name of the parameter set but note that this will not effect the name of the world that is generated.
Parameter sets are stored in the data/init/world_gen.txt file in the main DF directory. The F1 and F6 keys will load and save all of the parameter sets to this file. You will need to save the world gen parameters to this file before you hit Enter to generate the world.
The world_gen.txt file can also be edited with a text editor. This is particularly useful because people will often post their parameter sets on the forum or wiki in text form. (See below for more info.) The F1 key comes in handy when editing this file while the game is still running.
The tokens used in world_gen.txt are at the bottom of each parameter description. Here's the one for title.
Token | Example | Notes |
---|---|---|
[TITLE: <name>] | [TITLE:MEDIUM ISLAND] | Required |
World Name
As previously mentioned, the title of the parameter set doesn't affect the name of the world. You can force a particular name for your world using n or set it back to the default random setting using N.
Token | Example | Notes |
---|---|---|
[CUSTOM_NAME: <name>] | [CUSTOM_NAME:Realm of Cheese Engravings] | For a random name, simply don't use this token. |
World Dimensions
The size of the map to be generated can be selected with u i o p. Larger maps take longer to generate and may limit Template:L in game.
Token | Example | Notes |
---|---|---|
[DIM:<width>:<height>] | [DIM:129:129] | Valid values are 17,33,65,129, and 257. Others may not work. |
Seed Values
The world generation process uses a PRNG (Pseudo Random Number Generator) algorithm. A PRNG will produce a sequence of numbers that "looks" random even though the actual sequence of numbers will always be the same if the PRNG is started with the same seed value. Basically this means that if you run word generation with a certain seed value on your computer, and someone else runs world generation with the same seed value on their computer, the same sequence of random numbers will be generated on both computers. The practical impact of this is that someone else can generate exactly the same world that you generated by entering the same seed value that you used.
A specific seed value can be entered with s. This will change all of the seed values to the value you enter. If you need to enter different seed values for each type of see, use e.
In order to find out what seed values were used for the last world you generated you can look at this screen. If you want to be able to tell someone else how to generate exactly the same world that you just generated, they will need all of the seed value listed under Last Param Set.
Normally you don't enter these seed values and the world generation process comes up with seed values based on some sort of "true" random information from things like random values in uninitialized memory, the current date/time, etc. If you have entered a seed value you can revert back to all seeds being random using S.
Entering Advanced Parameters and Generating a World
Unless you're using an already defined parameter set you will probably want to edit the parameters. Select the set you want to edit using the up/down directional keys and press e. Information about each parameter is documented below.
Once you are happy with the parameters you have set, hit Esc to get back to this screen, hit F6 to save the values you just edited, and hit Enter to start. The rest of the process is the same as basic Template:L.
Editing the Parameters Init File Directly
Parameter sets are stored in world_gen.txt in the \data\init folder, using world tokens. You can copy and paste other player's sets of parameters into your world_gen.txt to use their parameter sets, and some are provided at Pregenerated worlds. Another place to find parameter sets is the Worldgen cookbook thread on the official forums.
Advanced Parameters
To access advanced parameters, press e when at the screen for creating new worlds with parameters screen. This will bring you to an editable list of various guidelines the world-gen process will use when creating your new world.
Seed Values
Here you can enter specific seed values for different parts of the world generation process. Different sequences of pseudorandom numbers are used for different parts, so you can use this to reproduce only the particular part of world generation from some previously generated world if you want.
Normally you will want to leave all of these set to Random unless you're specifically trying to reproduce the results of another world generation run.
Token | Example | Notes |
---|---|---|
[SEED:<number>] | [SEED:31337] |
For each of these not in the config file, a random seed will be used. |
[HISTORY_SEED:<number>] | [HISTORY_SEED:31337] | |
[NAME_SEED:<number>] | [NAME_SEED:31337] | |
[CREATURE_SEED:<number>] | [CREATURE_SEED:31337] |
Embark Points
This controls the number of points that you have for skills and equipment when you embark in fortress mode. Turning this value up will allow games started in this world to start with more skilled dwarves with better equipment. Normally you can do just fine by leaving this value set to default, but you might want to up it for experimental/testing purposes or to help dwarves survive in a particularly evil world.
Token | Example | Notes |
---|---|---|
[EMBARK_POINTS:<number>] | [EMBARK_POINTS:1274] | Required |
End Year
This is how many years of history are generated for the world. This is basically the same as the History parameter in basic world gen, except that you can enter an exact value for number of years. See Template:L for more info.
Token | Example | Notes |
---|---|---|
[END_YEAR:<number>] | [END_YEAR:1050] | Required |
Population Cap After Civ Creation
This determines the maximum total population of all civilizations before history begins.[Verify] Turning the value up will result in larger civilizations. You can enter -1 to make population unlimited in which case populations will be limited by factors like biome and available space.[Verify]
Token | Example | Notes |
---|---|---|
[TOTAL_CIV_POPULATION:<number>] | [TOTAL_CIV_POPULATION:15000] | Required |
Site Cap After Civ Creation
This controls the maximum number of towns and similar sites for all civilizations. [Verify] Raising the number will allow for more towns, etc though the number of sites will still be limited by space and terrain.[Verify]
Token | Example | Notes |
---|---|---|
[SITE_CAP:<number>] | [SITE_CAP:1040] | Required |
Beast Control
These parameters don't usually matter too much, but may matter for small numbers of beasts.
Percentage of Beasts Dead for Stoppage
The world starts out with a certain number of megabeasts in existence. If this percentage of megabeasts dies during history generation, then history generation will stop early. For example if the value is 80, if history starts with 200 megabeasts and 160 of them are killed by historical events or otherwise die before End Year is reached, history generation will stop early.
Year to Begin Checking Megabeast Percentage
The percentage of dead megabeasts for stoppage will not be checked until this year is reached in history generation. The usefulness of this parameter is unknown.[Verify]
Token | Example | Notes |
---|---|---|
[BEAST_END_YEAR:<year>:<percentage or -1>] | [BEAST_END_YEAR:200:80] | Use -1 as percentage to disable. Year must still be at least 2. |
Cull Unimportant Historical Figures
Whether or not the game ignores unimportant figures in history generation. The culling is many CPU-intensive steps in history generation but it saves memory and will speed up loading/saving games a bit. This does mean that the "unimportant" figures will not appear in Legends mode or in things like dwarf engravings, but they might not appear in engravings anyway.
Unimportant figures are people or creatures who suffer early deaths, never having offspring or killing anything named during history generation. For example, residents of goblin towers may get murdered by demons at a young age. After culling unimportant figures, Legends mode would say something like the demon has killed "a creature at Eviltower in the year 102."
Token | Example | Notes |
---|---|---|
[CULL_HISTORICAL_FIGURES:<0 or 1>] | [CULL_HISTORICAL_FIGURES:0] | 0 = No, 1 = Yes |
Reveal All Historical Events
Setting this to Yes will allow access to all information about the history of the world in Legends mode. If set to No, then you will have to discover historical information in adventure mode or by instructing dwarves to make engravings.[Verify]
Token | Example | Notes |
---|---|---|
[REVEAL_ALL_HISTORY:<0 or 1>] | [REVEAL_ALL_HISTORY::1] | 0 = No, 1 = Yes |
Terrain Parameters
These determine how random values for terrain elevation, rainfall, temperature, drainage, volcanism, and savagery are generated.
Minimum and Maximums
These are the absolute minimum and maximum values that can ever be generated for a particular characteristic of a given map square. Changing these can cause the occurrence of certain Template:L to become impossible, so modify these with care. Because of this problem, you may want to use the Weighted Range parameters instead (described below).
X and Y Variance
These control how wildly things like elevation and rainfall can vary between adjacent map squares. For example, if these values are set to the maximum of 3,200 for elevation then you will end up with more very low areas right next to very high areas. The number for X determines the east-west variance and the number for Y determines the north-south variance. By setting only one of these to a high value you can, for example, create horizontal or vertical bands of areas which are more similar to each other.
Generally speaking, raising both of these values will create a more random "patchwork" of biomes.
Elevation
This controls the range of terrain elevations that can occur in the world. Usually you just want to leave the min/max values alone. Raising the minimum elevation can, for example, make it impossible for oceans to exist.[Verify] This does not control the number of available Z levels at a particular site. Raising the variance will result in a more uneven landscape.
Rainfall
Controls the amount of rainfall in each map square (Region?)[Verify] Setting the minimum too high or the maximum too low can make the formation of certain biomes impossible. Rainfall causes it to Template:L more in a given area, which can have effects on dwarves.
Temperature
These parameters control how hot or cold various areas will be. If you lower the minimum and maximum values, the world will be colder overall, for example. As with the others, changing these values too much can make it impossible for certain biomes to exist. See Template:L for more info.
Drainage
Changing drainage parameters will change the way lakes, rivers, and swamps are formed. Low drainage will contribute to the formation of Template:L, Template:L, and Swamps. High drainage will cause water to sink into the ground rather than sit on the surface.
Volcanism
Volcanism controls the occurrence of Igneous Template:L, and the formation of volcanoes. For a volcano to form, a square must have a volcanism value of 100 so reducing the maximum from 100 will make volcanoes impossible. Rising the minimum will increase the rarity of non-igneous layers.
Setting minimum to high value is not a good way to produce multiple volcanoes as you are likely to get a "Volcanism not evenly distributed" rejection. Instead use the Minimum Number of Volcanoes parameter and possibly adjust the weighted ranges for volcanism as described below.
Savagery
These parameters control the level of Template:L on the map. Raising the minimum savagery too high may make it impossible for certain races to exist, and similarly lowering the maximum too far can make it impossible for certain creatures to exist.
Configuration Tokens
Token | Example | Notes |
---|---|---|
[ELEVATION:<min>:<max>:<x variance>:<y variance>] | [ELEVATION:1:400:401:401] | Maximum of 400 required for mountain peaks. |
[RAINFALL:<min>:<max>:<x variance>:<y variance>] | [RAINFALL:0:100:200:200] | |
[TEMPERATURE:<min>:<max>:<x variance>:<y variance>] | [TEMPERATURE:25:75:200:200] | |
[DRAINAGE:<min>:<max>:<x variance>:<y variance>] | [DRAINAGE:0:100:200:200] | |
[VOLCANISM:<min>:<max>:<x variance>:<y variance>] | [VOLCANISM:1:100:200:200] | Maximum of 100 required for volcanoes. |
[SAVAGERY:<min>:<max>:<x variance>:<y variance>] | [SAVAGERY:1:100:200:200] |
Terrain Mesh Sizes and Weights
These parameters make it possible to influence the number of squares in a particular range without making conditions outside of that range impossible. For example, you can make it possible for more many more low elevation squares to exist without making it impossible for high elevations to form. Changing these parameters is often preferable to simply changing the min/max values.
Mesh Size
Mesh size determines how "finely grained" weighted ranges will be applied. So an 8x8 mesh should produce large 8x8 swaths of land with values in the same weight range. Smaller meshes such as 2x2 allow more diversity within a given area than do large meshes; each 2x2 area could have values in a different weighted range. Setting this to Ignore will cause the weighted range settings to be ignored for that terrain characteristic.
Weighted Ranges
If mesh size is set to something other than Ignore, these weights will be applied at the granularity of the selected mesh size for purposes of generating random values in each range. This allows random number generation to be non-linear for the given terrain characteristic.
For example, if the Elevation Weighted Range parameters were set to (starting with the 0-20 range) "60,10,10,10,10" then 60% of the map squares will have an elevation in the range of 0-20, and the other ranges will be represented by 10% of the map squares each. This is applied in blocks as defined by the mesh size, so if the mesh size is set to 2x2, divide the world into a bunch of 2x2 blocks, determine the range for each block, then generate a specific elevation (or whatever) for each square in that block in the block's range. Each of the squares in a block may have different elevations, but all elevations in those squares will be within a particular range such as 0-20 or whatever was generated for that block.
Configuration Tokens
Token | Example | Notes |
---|---|---|
[ELEVATION_FREQUENCY:<mesh>:<0-20 weight>:<20-40 weight>:<40-60 weight>:<60-80 weight>:<80-100 weight>] | [ELEVATION_FREQUENCY:2:1:2:3:4:5] | Valid mesh values:
1 = Ignore 2 = 2x2 3 = 4x4 4 = 8x8 5 = 16x16 6 = 32x32 (limited by world size) |
[RAIN_FREQUENCY:<mesh>:<0-20 weight>:<20-40 weight>:<40-60 weight>:<60-80 weight>:<80-100 weight>] | [RAIN_FREQUENCY:3:1:2:3:4:5] | |
[DRAINAGE_FREQUENCY:<mesh>:<0-20 weight>:<20-40 weight>:<40-60 weight>:<60-80 weight>:<80-100 weight>] | [DRAINAGE_FREQUENCY:4:1:2:3:4:5] | |
[TEMPERATURE_FREQUENCY:<mesh>:<0-20 weight>:<20-40 weight>:<40-60 weight>:<60-80 weight>:<80-100 weight>] | [TEMPERATURE_FREQUENCY:1:1:1:1:1:1] | |
[SAVAGERY_FREQUENCY:<mesh>:<0-20 weight>:<20-40 weight>:<40-60 weight>:<60-80 weight>:<80-100 weight>] | [SAVAGERY_FREQUENCY:5:1:2:3:4:5] | |
[VOLCANISM_FREQUENCY:<mesh>:<0-20 weight>:<20-40 weight>:<40-60 weight>:<60-80 weight>:<80-100 weight>] | [VOLCANISM_FREQUENCY:1:1:1:1:1:1] |
Minimum Mountain Peak Number
This will cause the world to be rejected if fewer than this many peaks (based on elevation) are present on the map. Elevations of 400 must be possible for mountain peaks to occur. If set to zero then worlds will not be rejected based on number of peaks.
Token | Example | Notes |
---|---|---|
[PEAK_NUMBER_MIN:<number>] | [PEAK_NUMBER_MIN:20] | Elevations of 400 must occur for peaks to form. |
Minimum Partial Edge Oceans
This will cause a world to be rejected unless there are at least this many oceans touching an edge of the map. If set to zero then worlds will not be rejected based on this criterion.
Token | Example | Notes |
---|---|---|
[PARTIAL_OCEAN_EDGE_MIN:<number>] | [PARTIAL_OCEAN_EDGE_MIN:2] | Maximum of 4 |
Minimum Complete Edge Oceans
This will cause a world to be rejected unless there are at least this many oceans which completely cover an edge of the map. Since a square map only has 4 edges, the maximum value possible is 4. Setting this to 4 will reject anything other than an "island" type world with one big continent surrounded by oceans. If set to zero then worlds will not be rejected based on this criterion.
Note that the ability for this many edge oceans to exist will be limited by elevation. Therefore to actually create an island you will probably need to change things like the Elevation Mesh Size and Weighted Ranges to increase the number of very low elevation squares on the map.
Token | Example | Notes |
---|---|---|
[COMPLETE_OCEAN_EDGE_MIN:<number>] | [COMPLETE_OCEAN_EDGE_MIN:0] | Maximum of 4 |
Minimum Volcano Number
Worlds with less than this number of volcanoes will be rejected. Note that this will not just create this many volcanoes at random; there must be at least this many squares with a Volcanism of 100. Therefore adjusting Weighted Range for 80-100 to some higher value is recommended if you want to facilitate a large number of volcanoes. In addition, Maximum Volcanism must be set to 100 or squares with volcanism of 100 will be impossible making volcanoes impossible.
Token | Example | Notes |
---|---|---|
[VOLCANO_MIN:<number>] | [VOLCANO_MIN:15] | Volcanoes require a volcanism of 100 to occur. |
Mineral Scarcity
Controls the frequency at which minerals occur. Setting this value lower will increase the amount of ore present on a map, the number of different types of ore, and the number/types of gems. The default value will result in a maximum of 2-4 metal ores per map (assuming you choose a good embark location) which may be limiting until the economy is fully implemented and desired metals can be traded for.
According to research by Shandra on v0.31.25, this is the relationship between the value of this setting and the approximate number of gems and ore:
This is for the same 8x8 embark region in a world which is otherwise the same except for the mineral scarcity parameter. See this forum thread for detailed information on peoples' experiments and possible changes to newer versions.
Token | Example | Notes |
---|---|---|
[MINERAL_SCARCITY:<number>] | [MINERAL_SCARCITY:2500] | Range: 100 to 100,000 |
Max Megabeast Caves
This is the maximum number of caves that will be inhabited by Template:L. Even though the parameter uses the word "caves" it appears to impact the number of sites (lairs) of different types.[Verify] If there are more megabeasts than "caves", megabeasts will suffer from a housing shortage and you may end up with things like 10 dragons sharing a lair.
Token | Example | Notes |
---|---|---|
[MEGABEAST_CAP:<number>] | [MEGABEAST_CAP:75] | Number of caves/labyrinths/lairs, not beasts. |
Max Semi-Megabeast Caves
The maximum number of caves that will be inhabited by Template:L. If there are more semi-megabeasts than caves, semi-megabeasts will be forced to cohabitate and you may end up with 10 minotaurs in one labyrinth (for example).
Token | Example | Notes |
---|---|---|
[SEMIMEGABEAST_CAP:<number>] | [SEMIMEGABEAST_CAP:150] | Number of caves/labyrinths/lairs, not beasts. |
Titan Parameters
Number
This controls the number of megabeasts and semi-megabeasts that exist at the beginning of history. Note that they can get killed or die later due to events during history generation.
Token | Example | Notes |
---|---|---|
[TITAN_NUMBER:<number>] | [TITAN_NUMBER:33] | 0 is a valid number |
Attack Population Requirement
Megabeasts will begin to attack your fort once at least this many dwarves inhabit it, regardless of whether any other attack criteria have been met. This number defaults to 80 which isn't usually too difficult to deal with.
Exported Wealth Requirement
Megabeasts will begin to attack your fort once you have exported at least this many Template:L worth of merchandise, regardless of whether or not any other criteria have been met. This parameter defaults to None (disabled).
Created Wealth Requirement
Megabeasts will begin to attack your fort once the fort's total wealth has reached this many Template:L in value. This happens regardless of whether any of the other criteria, such as population, have been met. Therefore even with 1 dwarf a fort could be attacked if the fort were worth at least this value.
Token | Example | Notes |
---|---|---|
[TITAN_ATTACK_TRIGGER:<population>:<exp wealth>:<created wealth>] | [TITAN_ATTACK_TRIGGER:80:0:100000] | 0 = None (disabled). Only one requirement must be met for an attack. |
Number of Demon Types
Template:L are similar to titans and forgotten beasts in that they are procedurally generated, but unlike titans they are not unique. This many different types of demons will exist in the world but there will be many members of each type. Setting this to zero means no demons will exist, limiting the amount of fun you can have.
Token | Example | Notes |
---|---|---|
[DEMON_NUMBER:<number>] | [DEMON_NUMBER:52] | 0 to 1000 |
Number of Night Creature Types
The number of different Template:L that will exist in the world. Setting this to zero means that the world will have no night creatures.
Token | Example | Notes |
---|---|---|
[NIGHT_CREATURE_NUMBER:<number>] | [NIGHT_CREATURE_NUMBER:52] | 0 to 1000 |
Desired Good/Evil Square Counts
These values change the amount of Template:L tiles on the map, depending on the size of the region they are being considered for. Overly large values seem to be fine; doubling or tripling the evil value of all three seems to not cause any errors.
Certain civilizations can not exist in good and/or evil squares, so too many of one or the other may limit the size of certain types of civilizations.
Currently it is unknown what constitutes a small, medium, or large subregion, or exactly what a subregion is.[Verify]
Warning: If any of these values are set to 0, no good or evil regions will be generated. Setting good or evil to 1:1:1 fixes this.
Token | Example | Notes |
---|---|---|
[GOOD_SQ_COUNTS:<small region>:<med region>:<lg region>] | [GOOD_SQ_COUNTS:100:1000:2000] | Use 1:1:1 to disable, not 0:0:0 |
[EVIL_SQ_COUNTS:<small region>:<med region>:<lg region>] | [EVIL_SQ_COUNTS:100:1000:2000] |
Minimum Biome Square Counts
These numbers control whether or not a world will be rejected based on a lack of different Template:L. Raising these numbers will not automatically generate the given number of squares of the given biome! For a biome to exist, certain conditions like elevation and rainfall must exist.
These parameters simply filter out worlds that randomly fail to have enough high elevation squares to support a given number of mountains or whatever type. Some settings may cause worlds to always be rejected. For example, if for some reason the maximum elevation parameter is set to a value below what will support mountain biomes, it will be impossible to satisfy a non-zero requirement for mountain squares. The same principle goes for other conditions and biomes such as low elevations and oceans, etc.
Certain civilizations require different biomes to exist (such as dwarves and mountains), so eliminating certain biomes will make it impossible for certain civilizations to form.
These parameters often result in world rejection problems. See Template:L for information on solving problems related to worlds always being rejected due to one or more of these parameters.
0 means no minimum for rejection. Setting to 0 does not guarantee 0 squares of that biome.
Minimum Initial Square Count
This is the minimum number of squares of the given biome that must exist before things like erosion take place.
Minimum Initial Region Count
This is the minimum number of regions of contiguous biome squares that must exist before other processes such as erosion take place.
Minimum Final Region Count
This many regions of the given biome must exist after erosion and similar phases of generation have been completed.
Token | Example |
---|---|
[REGION_COUNTS:SWAMP:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:SWAMP:1032:7:6] |
[REGION_COUNTS:DESERT:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:DESERT:1032:7:6] |
[REGION_COUNTS:FOREST:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:FOREST:4128:13:12] |
[REGION_COUNTS:MOUNTAINS:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:MOUNTAINS:8256:9:9] |
[REGION_COUNTS:OCEAN:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:OCEAN:8256:7:6] |
[REGION_COUNTS:GLACIER:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:GLACIER:0:0:0] |
[REGION_COUNTS:TUNDRA:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:TUNDRA:0:0:0] |
[REGION_COUNTS:GRASSLAND:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:GRASSLAND:8256:13:12] |
[REGION_COUNTS:HILLS:<init sq>:<init rg>:<final rg>] | [REGION_COUNTS:HILLS:8256:13:12] |
Erosion Cycle Count
This controls the duration of the erosion process which changes things like terrain elevation and form based on simulated erosion. Lower numbers result in less erosion, higher numbers result in more erosion. Very high numbers can flatten mountains into plains and drastically alter what biomes form, possibly resulting in rejection issues.
Token | Example | Notes |
---|---|---|
[EROSION_CYCLE_COUNT:<number>] | [EROSION_CYCLE_COUNT:250] | Range: 0 to 1000 |
Minimum/Desired River Start Locations
This is the minimum number of riverheads that must exist before and after erosion takes place. Worlds will be rejected if they fail to meet these numbers. As with minimum biome counts, raising this number doesn't automatically create this many riverheads. Other conditions like terrain and rainfall must exist for rivers to form.
Token | Example | Notes |
---|---|---|
[RIVER_MINS:<min pre-erosion>:<des post-erosion>] | [RIVER_MINS:200:400] | Range: 0 to 800 |
Periodically Erode Extreme Cliffs
This parameter, when set to 1, will smooth out extremely high cliffs during world generation, making them more slope-like and and accessible in adventurer or dwarf fortress mode. The exact mechanism by which this works is unknown.
Normally this is set to Yes (1).
Token | Example | Notes |
---|---|---|
[PERIODICALLY_ERODE_EXTREMES:<1 or 0>] | [PERIODICALLY_ERODE_EXTREMES:1] | 1/0 = Yes/No |
Do Orthographic Precipitation and Rain Shadows
Toggle that allows terrain height to affect rainfall. For example, moist air coming from the ocean blows over the land. As the terrain gets higher, it forces the moist air up, causing it to rain on the seaward side of a mountain. Eventually, all the rain has fallen if the mountain is tall enough. So, when the breeze goes over the top, there's no moisture left to fall on the other side, creating a rain-shadow. This should create a tendency for more extreme rainfall in regions, creating more forests, deserts, marshlands, and grasslands. Turning it off should result in more controllable, less complex rainfall conditions based on rainfall parameters.
Token | Example | Notes |
---|---|---|
[OROGRAPHIC_PRECIPITATION:<1 or 0>] | [OROGRAPHIC_PRECIPITATION:1] | 1/0 = Yes/No |
Maximum Number of Subregions
The maximum number of subregions a world can have. Larger values mean the regions can be smaller, while smaller values means they will be required to be larger. Logically, setting this to very low values will result in numerous rejections depending on variance parameters. If variance values are set to high numbers, many small regions will be created causing this number to be exceeded if it is not increased.
Increasing the value of this tag is oten a must when generating "patchwork" worlds with lots of biome variance.
Token | Example | Notes |
---|---|---|
[SUBREGION_MAX:<number>] | [SUBREGION_MAX:2750] | Range: 1 to 5000 |
Cavern Parameters
Template:L are the hollow areas underground which dwarves tend to encounter when they're digging around.
Cavern Layer Number
This parameter determines how many cavern systems will be generated, not including the Magma layer or the Bottom layer. Defaults to three. Setting it to lower values could help FPS.
Warning: If this is 0 then you will not have caverns on your map. Note that disabling caverns will make it impossible to grow any underground plants because none will exist for your civilization to cultivate. (Underground plants will not be available on embark.) If set to 1 then you will not have underground trees.[Verify]
Token | Example | Notes |
---|---|---|
[CAVERN_LAYER_COUNT:<number>] | [CAVERN_LAYER_COUNT:3] | Range: 0 to 3 |
Cavern Layout Parameters
Open caverns and dense passageways are not mutually exclusive. When both are raised, bizarre results can occur, such as layers showing a combination of open caverns, a cluster of network passages, and natural walls sprinkling the inside of an otherwise open cavern. Reference
If you want the largest open spaces possible, then decrease the density and increase the openness. If you want a labyrinth of passageways, lower the openness and raise the passage density.
Another interesting note about the cavern layers is that the seed and number of demon types effect the layout of the caverns.
Layer Openness Min/Max
Dictates the size of cavern passages. When Passage Density (see below) is set to minimum (0), caverns will be open expanses. Raising the maximum will increase the size of the caverns.
Token | Example | Notes |
---|---|---|
[CAVERN_LAYER_OPENNESS_MIN:<number>] | [CAVERN_LAYER_OPENNESS_MIN:0] | Range: 0 to 100 |
[CAVERN_LAYER_OPENNESS_MAX:<number>] | [CAVERN_LAYER_OPENNESS_MAX:100] |
Layer Passage Density Min/Max
This determines how many passages form the cavern. If openness (see above) is set to minimum and density increased then you will get a maze like network of small criss-crossing passages. Raising the values further increases the number of the maze-like passages.
Caverns will be large, open spaces at 0, and comprised of many small vertical shafts of rock at 100. Setting both values to be the same results in a uniform look for the caverns.[Verify]
Token | Example | Notes |
---|---|---|
[CAVERN_LAYER_PASSAGE_DENSITY_MIN:<number>] | [CAVERN_LAYER_PASSAGE_DENSITY_MIN:0] | Range: 0 to 100 |
[CAVERN_LAYER_PASSAGE_DENSITY_MAX:<number>] | [CAVERN_LAYER_PASSAGE_DENSITY_MAX:100] |
Layer Water min\max
Determines how many caverns will have water at the bottom. Note that, even at 100, there will be some amount of ground in caverns, but each cavern 'bubble' will contain some amount of water.
At 0, there will be no water in your caverns. This may impact future underground plant growth, although maps will still start with underground flora.[Verify]
Token | Example | Notes |
---|---|---|
[CAVERN_LAYER_WATER_MIN:<number>] | [CAVERN_LAYER_WATER_MIN:0] | Range: 0 to 100 |
[CAVERN_LAYER_WATER_MAX:<number>] | [CAVERN_LAYER_WATER_MAX:100] |
Magma Layer
This parameter controls whether the Template:L exists.
Setting 1/Yes causes the magma layer to exist, value 0/No prevents it. Appears not have impact on volcanoes, nor vulcanism, so even if 0/No there will still be emark locations with magma. If a Template:L exists, it appears to always tap the magma sea, but the magma sea will not be revealed by revealing the volcano.
Token | Example |
---|---|
[HAVE_BOTTOM_LAYER_1:<1 or 0>] | [HAVE_BOTTOM_LAYER_1:1] |
Bottom Layer
Determines if the space below the magma sea exists. If Yes the "HFS" layer is always present. Normally you want to leave this set to Yes for maximum fun.
If enabled, this will force the magma layer above it. (Unknown whether this has any impact on occurrence of HFS "temple".)[Verify]
Token | Example |
---|---|
[HAVE_BOTTOM_LAYER_2:<1 or 0>] | [HAVE_BOTTOM_LAYER_2:1] |
Z Levels (Depth) Settings
These parameters control the "thickness" of various "layers" on the map. Note that a "layer" in this case does not refer to one Z-level, but refers to a number of related Z-levels such as "levels above ground".
The following table assumes that you have 3 cavern layers. The Levels Above Layer settings control how many Z-Levels are above each layer. A layer may itself consist of multiple Z-Levels (and almost always does).
Setting Name | Token | Description |
---|---|---|
Above Ground | [LEVELS_ABOVE_GROUND:<number>] | The number of Z-Levels of air above the highest surface level. Has no impact on how many Z-levels deep the surface layer is. |
Above layer 1 | [LEVELS_ABOVE_LAYER_1:<number>] | Z-Levels of stone above the first cavern layer. Making this higher will guarantee at least this many levels to build your fortress, but will have no impact on how many z-levels thick the surface layer is. Also, the top of a cavern may be higher than the rest of a cavern, so in practice there will be more "solid" levels than this above the cavern. |
Above Layer 2 | [LEVELS_ABOVE_LAYER_2:<number>] | Z-levels of earth between very top of second cavern and very bottom of first cavern. |
Above Layer 3 | [LEVELS_ABOVE_LAYER_3:<number>] | Z-levels of earth between very top of third cavern and very bottom of second cavern. |
Above Layer 4 | [LEVELS_ABOVE_LAYER_4:<number>] | Z-Levels of earth between very highest magma and very bottom of third cavern. Spoiler Hidden (select invisible text to read): Making this high will give a large area for HFS veins, so that it never touches caverns, giving more to mine if it was impacting the cavern previously. |
Above Layer 5 | [LEVELS_ABOVE_LAYER_5:<number>] | Uncertain. May control the number of levels of "Semi Molten Rock" between HFS and Magma, may control number of levels of magma, may impact both. In experimentation, the overall depth of all magma sea and semi-molten rock levels appears to increase, but not consistent enough to say for certain. Only valid if Magma Layer present. Spoiler Hidden:Often the HFS vein will only extend as high as the highest magma, making this the only guaranteed way to increase amount of HFS to mine, but unfortunately also creating enormous useless semi-molten z-levels |
At Bottom | [LEVELS_AT_BOTTOM:<number>] | Appears to be number of levels of HFS chamber. Only valid if Bottom Layer present. Often has no impact. Values larger than default results in strange things. |
Some implications:
- The number of surface layers (e.g. soil), at this time, can not be controlled. For example, on a map with 1 layer of Peat, then a layer of Silt, then a layer of Obsidian, there is no control to let you increase either one to be, say, 20 z-levels. (though you may get lucky with the Obsidian).
- There can be multiple stone layers between the cavern and the surface. So increasing Levels Above Layer 1 may give you more Conglomerate, or more Granite, and you have no control over which stone layer spans those Z-Levels.
- The layers shown on embark span across the cavern layers in an unknown and inconsistent way. Sometimes those 10 different layers of stone are evenly distributed over your 400 z-level deep map, sometimes the first 9 get 1 z-level each and the last gets the other 391 levels. No way to control found yet.
- The HFS temple, if present, will always extend into the rock layers, and appears to always make contact with the bottom cave. Large values for levels above layer 5 and layer 4 can result in enormous temples, but the number of levels at the top (the part with undead) appears to be unaffected.
- Unconfirmed whether number of levels between caverns has any impact on cavern height. There will be connecting ramps and/or shafts between cavern layers no matter how many levels are between them.
- Very Important: These values appear to apply across a whole 16x16 Region, not just embark areas. That means that if a 16x16 region is completely flat, but has one tall mountain in one far corner, even if you set Levels Above Ground low (e.g. 2 z-levels) you still have all the empty air of the highest mountain in every embark tile (e.g. 200 z-levels). Also can happen to the semi-molten layer, and can lead to unexpected behavior.
- Very large values can cause strange things to happen. Even more true for small values.
Cave Parameters
Caves are sort of like caverns except that they have a passage to the surface and are generally much smaller. Caves can connect to caverns if they are sufficiently deep.
Minimum/Maximum Natural Cave Size
These parameters appear to control the length and depth of caves.
Token | Example | Notes |
---|---|---|
[CAVE_MIN_SIZE:<number>] | [CAVE_MIN_SIZE:5] | Range: 1 to 500 |
[CAVE_MAX_SIZE:<number>] | [CAVE_MAX_SIZE:25] |
Number of (Non-)Mountain Caves
These are the numbers of mountain and non-mountain caves that will be placed. These parameters will cause this number of caves to be placed, but rejections may occur if a world has an insufficient number of mountain or non-mountain squares to place the caves in.
Token | Example | Notes |
---|---|---|
[MOUNTAIN_CAVE_MIN:<number>] | [MOUNTAIN_CAVE_MIN:100] | Range: 1 to 800 |
[NON_MOUNTAIN_CAVE_MIN:<number>] | [NON_MOUNTAIN_CAVE_MIN:200] |
Make Caves Visible
If set to no (default) then the location of caves will not be marked on the map. If set to yes, caves will appear on the map as • symbols so that they may be sought out or avoided as desired.
Token | Example | Notes |
---|---|---|
[ALL_CAVES_VISIBLE:<1 or 0>] | [ALL_CAVES_VISIBLE:0] | 1/0 = Yes/No |
Allow Init Options to Show Tunnels
This parameter doesn't do anything in DF2010.[Verify] In older versions, tunnels could be built between dwarven settlements and these could appear on the map similarly to roads.
Token | Example | Notes |
---|---|---|
[SHOW_EMBARK_TUNNEL:<0-2>] | [SHOW_EMBARK_TUNNEL:2] | 0 = No 1 = Only in Finder 2 = Always |
Number of Civilizations
This number of civilizations will be placed on the map before history generation begins. These civilizations may later die out due to historical events.[Verify]
Token | Example | Notes |
---|---|---|
[TOTAL_CIV_NUMBER:<number>] | [TOTAL_CIV_NUMBER:40] | Range: 0 to 300 |
Playable Civilization Required
If this is set to yes (default) then worlds will be rejected if no dwarven civilization exists or if it dies out.
Token | Example | Notes |
---|---|---|
[PLAYABLE_CIVILIZATION_REQUIRED:<1 or 0>] | [PLAYABLE_CIVILIZATION_REQUIRED:1] | 1/0 = Yes/No |
Minimum Number of Mid/Low/High Characteristic Squares
These values will cause worlds to be rejected unless at least the given number of squares of the given type are randomly generated. Setting these values too high could result in worlds always being rejected if other parameters such as the maximum/minimums for elevation, etc, don't allow enough of those squares to get generated.
Token | Example | Notes |
---|---|---|
[ELEVATION_RANGES:<low sq>:<mid sq>:<high sq>] | [ELEVATION_RANGES:8256:16512:8256] | Minimum number of squares that must have low, medium, and high amounts of the given attribute. 0 = No minimum |
[RAIN_RANGES:<low sq>:<mid sq>:<high sq>] | [RAIN_RANGES:8256:16512:8256] | |
[DRAINAGE_RANGES:<low sq>:<mid sq>:<high sq>] | [DRAINAGE_RANGES:8256:16512:8256] | |
[SAVAGERY_RANGES:<low sq>:<mid sq>:<high sq>] | [SAVAGERY_RANGES:8256:16512:8256] | |
[VOLCANISM_RANGES:<low sq>:<mid sq>:<high sq>] | [VOLCANISM_RANGES:8256:16512:8256] |
"The World Generator is having trouble placing..."
- Main article Template:L
If you are having the common problem of your generated worlds always being rejected by the world generator, see Template:L as it contains many detailed suggestions on how to troubleshoot and solve these issues.
Default Worldgen Parameters
Samples and Examples
Worlds | |
---|---|