
Basics of map generator:
There are major issues regarding map generator. All maps are made by 3 level of Perlin noise:
- height
- humidity
- temperature
There are also effects of:
- evaporation (temperature on humidity)
- erosion (humidity on height)
- Coriolis effect for wind (height on humidity)
Here are some example maps, any feedback is welcome. Basically all parameters can be changed if needed, currently I test range for each one. Hope until the end of week it will be finished.


I would like to know Your feedback about it (answer in brackets).
- Minimum and maximum size of generated maps (number) -> major impact on game length and units speed
- Generator as a option of map editor (yes / no)
- Generator as a standalone application (yes / no)
- Generator as a option in new game (yes / no)
- Customize editor option like curves for height / humidity / temperature levels on planets in XML files (yes / no)
- Customize flat terrains requirement for humidity / temperature in XML file as a 2D matrix (yes / no)
Some more things that I can implement, but it depends how complex this generator must be:
- Standard earth like maps or any custom maps, with wide range of parameters (standard / custom)
- Predefined pack of settings for special custom maps like ice-age, barren world or water-world (yes / no)
- Number of settings to control map final result (many small detailed / few major)
- Additional general function to process map like flat world or don-ought world (yes / no)
- Plants natural evolution like grow of the forest or move of the deserts (yes / no)
- Special random events like floods, forest fires, mountain chains or volcanoes (yes / no)
Those things could be run a an option from editor, I will do proper function in my lib for future usage. Remember that map generator is working on 3 sets of 2D layers and final output is exported at the end. So adding a “fire forest” is done not on WeeBot map but on map generator pre-map.
Flat terrain requirements:
Fallowing 2D matrix define flat terrain requirement based on local humidity and temperature. This can be change to get rid of middle terrains like plains or tundra if needed.
This issue MUST be heavy tested, because it has huge impact on map quality.
Additional terrains:
Second issue to discuss are things which are not normal in natural environment:
- Bases, shipyards and airports (do we need ?)
- Roads, bridges and rivers (do we need ?)
- Other non-standard, human made type of terrain like concrete or walls (do we need ?)
Do we really need those things and why not ? :) I think this can be done by making proper places for colonization (height, humidity and temperature) and then add some in more random places. Roads could be used to connect those good colonization places using A* algorithm. Bridges can be used to connect random land tiles, if only there is single water tile between them.
Map generator and fog of war:
Random map could be great if used with full fog of war. This need to implement two layer fog of war in WeeBot. First layer is to cover terrain (unexplored) and second is to cover units (explored but not visible). Need discussion how can this feature can be connected with random map generator.
Fallowing 2D matrix define flat terrain requirement based on local humidity and temperature. This can be change to get rid of middle terrains like plains or tundra if needed.