Riverflow map generator
Map generator featuring realistic-looking river networks, lakes and mountains
Map generator that aims to create realistic and nice-looking landscapes for the game, focused on river networks. It is based on algorithms modelling water flow and river erosion at a broad scale, similar to some used by researchers in Earth Sciences (the algorithm here is inspired from Fastscape).
It generates a more or less mountainous terrain with a consistent river network. Rivers always go downhill and combine together to form wider ones, until they reach the sea. Lakes of various sizes can happen, in which rivers may flow and outflow. The whole topography is sculpted by rivers, giving it an even more realistic appearance.
At the beginning it was using a Python script to pre-generate the map, which was then read by Lua, but this time is over. It now works in full Lua and is usable out-of-the-box. The remaining Python files are used for displaying the full map if you want, but they are in no way required for proper usage of the mod.
Starting from version 1.1.0 (February 2026), it is now using mapgen environment, which makes mapgen more efficient and lag less noticeable.
Requirements
No required dependency, but biomegen highly recommended (provides biome system). Using LuaJIT is also recommended for speed (official builds should include it, but it's worth checking if you compile Luanti yourself).
Usage
It is recommended to use it only in new worlds, with singlenode mapgen. On first start, it runs pre-generation to produce a grid, from which the map will be generated. This usually takes a few seconds, but depending on custom settings this can grow considerably longer.
By default, it only generates a 15k x 15k map, centered around the origin. To obtain a bigger map, you can increase grid size and/or block size in settings, but this can be more ressource-intensive (as the map has to be loaded in full at pre-generation).
Map displaying
The Python script view_map.py can be used for displaying the full map. You need to have Python 3 installed, as well as the libraries numpy, matplotlib, and optionally colorcet. For conda users, an environment.yml file is provided.
It can be run from command line by passing the world folder. Example:
./view_map.py ~/.minetest/worlds/test_mg_rivers Links
- Source: https://gitlab.com/gaelysam/mapgen_rivers
- Forum: https://forum.luanti.org/viewtopic.php?t=25683
- Issues: https://gitlab.com/gaelysam/mapgen_rivers/-/issues
- Original ContentDB page: content.luanti.org/packages/Gael de Sailly/mapgen_rivers/
License
LGPL-3.0-only
Development state
ACTIVELY_DEVELOPED
| Version | Date | Min engine | Size | Download |
|---|---|---|---|---|
| v1.1.2 | 2026-04-09 10:50:57 | 5.15 | 32.7 KB | Download |