This map generator creates volcanic island style maps. The simplest way to explore the maps is to click the plus/minus arrows to change the Seed.
Try clicking on the Seed input box and hold down the Up arrow key to quickly scan many different island shapes. Can you find an ice lake? They’re rare at the default temperature. You can right-click on the map to save a higher resolution image, or click the share link to save all the current parameters in a URL.
The generator intentionally makes unrealistic terrain that was designed for the needs of our game, Realm of the Mad God[1]. Back in 2010 I wrote an article about the algorithms[2]; the original demo was in Flash[3]. Later I wrote a stylized map output that I then reused here.
Also take a look at mapgen4, my newer map generator that allows painting your own mountains, valleys, and oceans. It then simulates evaporation, wind, and rainfall, generating biomes and rivers that fit your map.
Source code
- redblobgames/mapgen2[4], Javascript map generation algorithms, Apache2 license
- redblobgames/dual-mesh[5], Javascript dual mesh library, Apache2 license
- I used the mapbox/delaunator[6] library, for fast Delaunay triangulation, ISC license
- There’s a C++ / Unreal port[7] of this project
- The UI for this page is Apache2 licensed, and can be seen in: draw.js + mapgen2.js + colormap.js. It’s messy.
- I drew the icons by hand and made them available for use under the Creative Commons CC-BY license.
Feel free to use the map generator in your projects! For other projects, I would use some of the same core algorithms but might assign coastlines, mountains, and biomes differently than what I did for this project. This project needed coastlines to be interesting island shapes. Another project might need maps not completely surrounded by water. This project needed mountains to be in the center of the island. Another project might need continents, where mountains are not limited to being in the center. Or it may need parallel mountain ranges. This project needed smooth elevation. Another project might need caves, cliffs, canyons, or chasms. This project needed simple biomes based on distance to coastline and distance to water. Another project might need biomes based on latitude and rainfall, which could be influenced by wind, which could be influenced by mountain ranges or weather systems. There are a lot of variants to explore! The demo above shows a fraction of what’s possible with these algorithms.
Also take a look at Azgaar’s Fantasy Map Generator[8], an amazing open source project with features discussed on github[9], reddit[10], blog[11], wiki[12], and trello[13].