Mapgen objects

From Minetest Developer Wiki
Revision as of 07:55, 11 July 2015 by Hybrid Dog (talk | contribs)
Jump to navigation Jump to search

A mapgen object is a construct used in map generation. Mapgen objects can be used by an `on_generate` callback to speed up operations by avoiding unnecessary recalculations; these can be retrieved using the `minetest.get_mapgen_object()` function. If the requested Mapgen object is unavailable, or `get_mapgen_object()` was called outside of an `on_generate()` callback, `nil` is returned.

voxelmanip

This returns three values; the `VoxelManip` object to be used, minimum and maximum emerged position, in that order. All mapgens support this object.

heightmap

Returns an array containing the y coordinates of the ground levels of nodes in the most recently generated chunk by the current mapgen.

biomemap

Returns an array containing the biome IDs of nodes in the most recently generated chunk by the current mapgen.

heatmap

Returns an array containing the temperature values of nodes in the most recently generated chunk by the current mapgen.

humiditymap

Returns an array containing the humidity values of nodes in the most recently generated chunk by the current mapgen.

gennotify

Returns a table mapping requested generation notification types to arrays of positions at which the corresponding generated structures are located at within the current chunk. To set the capture of positions of interest to be recorded on generate, use `minetest.set_gen_notify()`.

Possible fields of the table returned are:

  • `dungeon`
  • `temple`
  • `cave_begin`
  • `cave_end`
  • `large_cave_begin`
  • `large_cave_end`
  • `decoration`

Decorations have a key in the format of `"decoration#id"`, where `id` is the numeric unique decoration ID.

Mbox important.png This article is incomplete.
Please help expand this article to include more useful information.