Procedural map generation for pokemon using C++ and Qt
this algorithm creates a height map based on simplex noise using FastNoise and then filter out non valid spots, and finishes by laying textures over the resulting tiles using a ruleset.
The current algorithm gives good results for maps with a maximum of 8 height levels, higher values cause bad-looking maps because the tile rules do not support multiple height edges.
The noise and the tiles maps differ because when there is not the best tile for a cell, it gets flattened, and the adjacent cells are rescanned.
Logical Tileset map generated only from height map and tile "rules".
Colors in the borders of each elevation represent a tile like "Grassy Left Corner tile" which is used to generate the final map.
Terrain heightmap used to generate the base map, some noises are filtered when generating the tilemap.
Temperature map, not used yet, but will influence biome distribution.
Rain map, not used yet, but will influence biome distribution.