Lua_api.txt: Split long lines part 6
authorparamat <paramat@users.noreply.github.com>
Sat, 17 Mar 2018 05:00:37 +0000 (05:00 +0000)
committerparamat <mat.gregory@virginmedia.com>
Sat, 17 Mar 2018 05:26:53 +0000 (05:26 +0000)
doc/lua_api.txt

index 041c302ce352590eae79cc19f548125b14b2fd2a..44cd07545d4360afd405f8cfb70b6f483ba68c38 100644 (file)
@@ -4794,51 +4794,58 @@ Definition tables
     --  ^ For players only. Defaults to `minetest.PLAYER_MAX_BREATH_DEFAULT`
         zoom_fov = 0.0,
     --  ^ For players only. Zoom FOV in degrees.
-    --    Note that zoom loads and/or generates world beyond the server's maximum
-    --    send and generate distances, so acts like a telescope.
+    --    Note that zoom loads and/or generates world beyond the server's
+    --    maximum send and generate distances, so acts like a telescope.
     --    Smaller zoomFOV values increase the distance loaded and/or generated.
     --    Defaults to 15 in creative mode, 0 in survival mode.
     --    zoom_fov = 0 disables zooming for the player.
         eye_height = 1.625,
-    --  ^ For players only. Camera height above feet position in nodes. Defaults to 1.625
+    --  ^ For players only. Camera height above feet position in nodes.
+    --    Defaults to 1.625.
         physical = true,
-        collide_with_objects = true, -- collide with other objects if physical = true
+        collide_with_objects = true,
+    --  ^ Collide with other objects if physical = true.
         weight = 5,
         collisionbox = {-0.5, 0.0, -0.5, 0.5, 1.0, 0.5},
         selectionbox = {-0.5, 0.0, -0.5, 0.5, 1.0, 0.5},
     --  ^ Default, uses collision box dimensions when not set.
     --  ^ For both boxes: {xmin, ymin, zmin, xmax, ymax, zmax} in nodes from
     --    object position.
-        pointable = true, -- overrides selection box when false
+        pointable = true,
+    --  ^ Overrides selection box when false.
         visual = "cube" / "sprite" / "upright_sprite" / "mesh" / "wielditem",
     --  ^ "cube" is a node-sized cube.
     --  ^ "sprite" is a flat texture always facing the player.
     --  ^ "upright_sprite" is a vertical flat texture.
     --  ^ "mesh" uses the defined mesh model.
-    --  ^ "wielditem" is used for dropped items (see builtin/game/item_entity.lua).
+    --  ^ "wielditem" is used for dropped items
+    --    (see builtin/game/item_entity.lua).
     --    For this use 'textures = {itemname}'.
-    --    If the item has a 'wield_image' the object will be an extrusion of that,
-    --    otherwise:
-    --    If 'itemname' is a cubic node or nodebox the object will appear identical
-    --    to 'itemname'.
-    --    If 'itemname' is a plantlike node the object will be an extrusion of its
-    --    texture.
+    --    If the item has a 'wield_image' the object will be an extrusion of
+    --    that, otherwise:
+    --    If 'itemname' is a cubic node or nodebox the object will appear
+    --    identical to 'itemname'.
+    --    If 'itemname' is a plantlike node the object will be an extrusion of
+    --    its texture.
     --    Otherwise for non-node items, the object will be an extrusion of
     --    'inventory_image'.
         visual_size = {x = 1, y = 1},
     --  ^ `x` multiplies horizontal (X and Z) visual size.
     --  ^ `y` multiplies vertical (Y) visual size.
         mesh = "model",
-        textures = {}, -- number of required textures depends on visual
+        textures = {},
+    --  ^ Number of required textures depends on visual.
     --  ^ "cube" uses 6 textures in the way a node does.
     --  ^ "sprite" uses 1 texture.
     --  ^ "upright_sprite" uses 2 textures: {front, back}.
     --  ^ "wielditem" expects 'textures = {itemname}' (see 'visual' above).
-        colors = {}, -- number of required colors depends on visual
+        colors = {},
+    --  ^ Number of required colors depends on visual.
         spritediv = {x = 1, y = 1},
-    --  ^ Used with spritesheet textures for animation and/or frame selection according
-    --    to position relative to player.
-    --  ^ Defines the number of columns and rows in the spritesheet: {columns, rows}.
+    --  ^ Used with spritesheet textures for animation and/or frame selection
+    --    according to position relative to player.
+    --  ^ Defines the number of columns and rows in the spritesheet:
+    --    {columns, rows}.
         initial_sprite_basepos = {x = 0, y = 0},
     --  ^ Used with spritesheet textures.
     --  ^ Defines the {column, row} position of the initially used frame in the
@@ -4855,17 +4862,22 @@ Definition tables
         automatic_face_movement_max_rotation_per_sec = -1,
     --  ^ Limit automatic rotation to this value in degrees per second,
     --    value < 0 no limit.
-        backface_culling = true, -- false to disable backface_culling for model
+        backface_culling = true,
+    --  ^ Set to false to disable backface_culling for model.
         glow = 0,
     --  ^ Add this much extra lighting when calculating texture color.
     --    Value < 0 disables light's effect on texture color.
-    --    For faking self-lighting, UI style entities, or programmatic coloring in mods.
-        nametag = "", -- by default empty, for players their name is shown if empty
-        nametag_color = <color>, -- sets color of nametag as ColorSpec
-        infotext = "", -- by default empty, text to be shown when pointed at object
+    --    For faking self-lighting, UI style entities, or programmatic coloring
+    --    in mods.
+        nametag = "",
+    --  ^ By default empty, for players their name is shown if empty.
+        nametag_color = <color>,
+    --  ^ Sets color of nametag as ColorSpec.
+        infotext = "",
+    --  ^ By default empty, text to be shown when pointed at object.
         static_save = true,
-    --  ^ If false, never save this object statically. It will simply be deleted when the
-    --    block gets unloaded.
+    --  ^ If false, never save this object statically. It will simply be
+    --    deleted when the block gets unloaded.
     --    The get_staticdata() callback is never called then.
     --    Defaults to 'true'
     }
@@ -4885,9 +4897,9 @@ Definition tables
     --  ^ Called sometimes; the string returned is passed to on_activate when
     --    the entity is re-activated from static state
 
-        -- Also you can define arbitrary member variables here (see item definition for
-        -- more info)
         _custom_field = whatever,
+    --  ^ You can define arbitrary member variables here (see item definition
+    --    for more info) by using a '_' prefix.
     }
 
 ### ABM (ActiveBlockModifier) definition (`register_abm`)
@@ -4907,17 +4919,21 @@ Definition tables
         interval = 1.0,
         ^ Operation interval in seconds.
         chance = 1,
-        ^ Chance of triggering `action` per-node per-interval is 1.0 / this value.
+        ^ Chance of triggering `action` per-node per-interval is 1.0 / this
+          value.
         catch_up = true,
-        ^ If true, catch-up behaviour is enabled: The `chance` value is temporarily
-          reduced when returning to an area to simulate time lost by the area being
-          unattended. Note that the `chance` value can often be reduced to 1.
+        ^ If true, catch-up behaviour is enabled: The `chance` value is
+          temporarily reduced when returning to an area to simulate time lost
+          by the area being unattended. Note that the `chance` value can often
+          be reduced to 1.
         action = function(pos, node, active_object_count, active_object_count_wider),
         ^ Function triggered for each qualifying node.
-        ^ `active_object_count` is number of active objects in the node's mapblock.
+        ^ `active_object_count` is number of active objects in the node's
+          mapblock.
         ^ `active_object_count_wider` is number of active objects in the node's
-          mapblock plus all 26 neighboring mapblocks. If any neighboring mapblocks
-          are unloaded an estmate is calculated for them based on loaded mapblocks.
+          mapblock plus all 26 neighboring mapblocks. If any neighboring
+          mapblocks are unloaded an estmate is calculated for them based on
+          loaded mapblocks.
     }
 
 ### LBM (LoadingBlockModifier) definition (`register_lbm`)
@@ -4949,7 +4965,8 @@ Definition tables
                             {bendy = 2, snappy = 1},
                             {hard = 1, metal = 1, spikes = 1}
         inventory_image = "default_tool_steelaxe.png",
-        inventory_overlay = "overlay.png", -- an overlay which does not get colorized
+        inventory_overlay = "overlay.png",
+        ^ An overlay which does not get colorized.
         wield_image = "",
         wield_overlay = "",
         palette = "",
@@ -4962,9 +4979,7 @@ Definition tables
         ^ "colorfacedir" and "colorwallmounted" nodes.
         ]]
         color = "0xFFFFFFFF",
-        --[[
         ^ The color of the item. The palette overrides this.
-        ]]
         wield_scale = {x = 1, y = 1, z = 1},
         stack_max = 99,
         range = 4.0,
@@ -4974,7 +4989,8 @@ Definition tables
             max_drop_level = 0,
             groupcaps = {
                 -- For example:
-                choppy = {times = {[1] = 2.50, [2] = 1.40, [3] = 1.00}, uses = 20, maxlevel = 2},
+                choppy = {times = {[1] = 2.50, [2] = 1.40, [3] = 1.00},
+                         uses = 20, maxlevel = 2},
             },
             damage_groups = {groupname = damage},
         },
@@ -5105,7 +5121,8 @@ Definition tables
         ^ node, for the other drawtypes the image will be centered on the node.
         ^ Note that positioning for "torchlike" may still change. ]]
         tiles = {tile definition 1, def2, def3, def4, def5, def6}, --[[
-        ^ Textures of node; +Y, -Y, +X, -X, +Z, -Z (old field name: tile_images)
+        ^ Textures of node; +Y, -Y, +X, -X, +Z, -Z
+        ^ Old field name was 'tile_images'.
         ^ List can be shortened to needed length ]]
         overlay_tiles = {tile definition 1, def2, def3, def4, def5, def6}, --[[
         ^ Same as `tiles`, but these textures are drawn on top of the
@@ -5114,27 +5131,34 @@ Definition tables
         ^ overlay is not drawn. Since such tiles are drawn twice, it
         ^ is not recommended to use overlays on very common nodes. ]]
         special_tiles = {tile definition 1, Tile definition 2}, --[[
-        ^ Special textures of node; used rarely (old field name: special_materials)
+        ^ Special textures of node; used rarely
+        ^ Old field name was 'special_materials'.
         ^ List can be shortened to needed length ]]
         color = ColorSpec, --[[
         ^ The node's original color will be multiplied with this color.
         ^ If the node has a palette, then this setting only has an effect
         ^ in the inventory and on the wield item. ]]
-        use_texture_alpha = false, -- Use texture's alpha channel
+        use_texture_alpha = false,
+        ^ Use texture's alpha channel.
         palette = "palette.png", --[[
         ^ The node's `param2` is used to select a pixel from the image
         ^ (pixels are arranged from left to right and from top to bottom).
         ^ The node's color will be multiplied with the selected pixel's
         ^ color. Tiles can override this behavior.
         ^ Only when `paramtype2` supports palettes. ]]
-        post_effect_color = "green#0F", -- If player is inside node, see "ColorSpec"
-        paramtype = "none", -- See "Nodes" --[[
-        ^ paramtype = "light" allows light to propagate from or through the node with light value
-        ^ falling by 1 per node. This line is essential for a light source node to spread its light. ]]
+        post_effect_color = "green#0F",
+        ^ Screen tint if player is inside node, see "ColorSpec".
+        paramtype = "none", --[[
+        ^ See "Nodes".
+        ^ paramtype = "light" allows light to propagate from or through the
+        ^ node with light value falling by 1 per node. This line is essential
+        ^ for a light source node to spread its light. ]]
         paramtype2 = "none", -- See "Nodes"
         place_param2 = nil, -- Force value for param2 when player places node
-        is_ground_content = true, -- If false, the cave generator will not carve through this
-        sunlight_propagates = false, -- If true, sunlight will go infinitely through this
+        is_ground_content = true,
+        ^ If false, the cave generator will not carve through this node.
+        sunlight_propagates = false,
+        ^ If true, sunlight will go infinitely through this.
         walkable = true, -- If true, objects collide with node
         pointable = true, -- If true, can be pointed at
         diggable = true, -- If false, can never be dug
@@ -5142,43 +5166,55 @@ Definition tables
         buildable_to = false, -- If true, placed nodes can replace this node
         floodable = false, --[[
         ^ If true, liquids flow into and replace this node.
-        ^ Warning: making a liquid node 'floodable' does not work and may cause problems. ]]
+        ^ Warning: making a liquid node 'floodable' will cause problems. ]]
         liquidtype = "none", -- "none"/"source"/"flowing"
         liquid_alternative_flowing = "", -- Flowing version of source liquid
         liquid_alternative_source = "", -- Source version of flowing liquid
         liquid_viscosity = 0, -- Higher viscosity = slower flow (max. 7)
         liquid_renewable = true, --[[
-        ^ If true, a new liquid source can be created by placing two or more sources nearby ]]
+        ^ If true, a new liquid source can be created by placing two or more
+          sources nearby. ]]
         leveled = 16, --[[
         ^ Only valid for "nodebox" drawtype with 'type = "leveled"'.
         ^ Allows defining the nodebox height without using param2.
         ^ The nodebox height is 'leveled' / 64 nodes.
         ^ The maximum value of 'leveled' is 127. ]]
         liquid_range = 8, -- number of flowing nodes around source (max. 8)
-        drowning = 0, -- Player will take this amount of damage if no bubbles are left
+        drowning = 0,
+        ^ Player will take this amount of damage if no bubbles are left.
         light_source = 0, --[[
         ^ Amount of light emitted by node.
-        ^ To set the maximum (currently 14), use the value 'minetest.LIGHT_MAX'.
-        ^ A value outside the range 0 to minetest.LIGHT_MAX causes undefined behavior.]]
-        damage_per_second = 0, -- If player is inside node, this damage is caused
+        ^ To set the maximum (currently 14), use the value
+        ^ 'minetest.LIGHT_MAX'.
+        ^ A value outside the range 0 to minetest.LIGHT_MAX causes undefined
+        ^ behavior.]]
+        damage_per_second = 0,
+        ^ If player is inside node, this damage is caused.
         node_box = {type="regular"}, -- See "Node boxes"
         connects_to = nodenames, --[[
-        * Used for nodebox nodes with the type == "connected"
-        * Specifies to what neighboring nodes connections will be drawn
-        * e.g. `{"group:fence", "default:wood"}` or `"default:stone"` ]]
-        connect_sides = { "top", "bottom", "front", "left", "back", "right" }, --[[
-        ^ Tells connected nodebox nodes to connect only to these sides of this node. ]]
+        ^ Used for nodebox nodes with the type == "connected"
+        ^ Specifies to what neighboring nodes connections will be drawn
+        ^ e.g. `{"group:fence", "default:wood"}` or `"default:stone"` ]]
+        connect_sides = { "top", "bottom", "front", "left", "back", "right" },
+               -- [[
+        ^ Tells connected nodebox nodes to connect only to these sides of this
+        ^ node. ]]
         mesh = "model",
-        selection_box = {type="regular"}, -- See "Node boxes" --[[
-        ^ If drawtype "nodebox" is used and selection_box is nil, then node_box is used. ]]
-        legacy_facedir_simple = false, -- Support maps made in and before January 2012
-        legacy_wallmounted = false, -- Support maps made in and before January 2012
-        waving = 0, --[[ valid for mesh, nodebox, plantlike, allfaces_optional nodes
+        selection_box = {type="regular"}, --[[
+        ^ See "Node boxes".
+        ^ If drawtype "nodebox" is used and selection_box is nil, then node_box
+        ^ is used. ]]
+        legacy_facedir_simple = false,
+        ^ Support maps made in and before January 2012.
+        legacy_wallmounted = false,
+        ^ Support maps made in and before January 2012.
+        waving = 0, --[[
+        ^ Valid for mesh, nodebox, plantlike, allfaces_optional nodes.
         ^ 1 - wave node like plants (top of node moves, bottom is fixed)
-        ^ 2 - wave node like leaves (whole node moves side-to-side synchronously)
-        ^ caveats: not all models will properly wave
-        ^ plantlike drawtype nodes can only wave like plants
-        ^ allfaces_optional drawtype nodes can only wave like leaves --]]
+        ^ 2 - wave node like leaves (whole node moves side-to-side)
+        ^ caveats: not all models will properly wave.
+        ^ plantlike drawtype nodes can only wave like plants.
+        ^ allfaces_optional drawtype nodes can only wave like leaves. --]]
         sounds = {
             footstep = <SimpleSoundSpec>,
             dig = <SimpleSoundSpec>, -- "__group" = group-based sound (default)
@@ -5186,15 +5222,17 @@ Definition tables
             place = <SimpleSoundSpec>,
             place_failed = <SimpleSoundSpec>,
         },
-        drop = "",  -- Name of dropped node when dug. Default is the node itself.
-        -- Alternatively:
+        drop = "",
+        ^ Name of dropped node when dug. Default is the node itself.
+        ^ Alternatively:
         drop = {
             max_items = 1,  -- Maximum number of items to drop.
-            items = { -- Choose max_items randomly from this list.
+            items = {  -- Choose max_items randomly from this list.
                 {
                     items = {"foo:bar", "baz:frob"},  -- Items to drop.
                     rarity = 1,  -- Probability of dropping is 1 / rarity.
-                    inherit_color = true, -- To inherit palette color from the node
+                    inherit_color = true, -- To inherit palette color from the
+                                             node.
                 },
             },
         },
@@ -5204,14 +5242,17 @@ Definition tables
         ^ Can set up metadata and stuff like that
         ^ Not called for bulk node placement (i.e. schematics and VoxelManip)
         ^ default: nil ]]
+
         on_destruct = func(pos), --[[
         ^ Node destructor; called before removing node
         ^ Not called for bulk node placement (i.e. schematics and VoxelManip)
         ^ default: nil ]]
+
         after_destruct = func(pos, oldnode), --[[
         ^ Node destructor; called after removing node
         ^ Not called for bulk node placement (i.e. schematics and VoxelManip)
         ^ default: nil ]]
+
         on_flood = func(pos, oldnode, newnode), --[[
         ^ Called when a liquid (newnode) is about to flood oldnode, if
         ^ it has `floodable = true` in the nodedef. Not called for bulk
@@ -5219,26 +5260,31 @@ Definition tables
         ^ return true the node is not flooded, but on_flood callback will
         ^ most likely be called over and over again every liquid update
         ^ interval. Default: nil.
-        ^ Warning: making a liquid node 'floodable' does not work and may cause problems. ]]
-
-       preserve_metadata = func(pos, oldnode, oldmeta, drops) --[[
-       ^ Called when oldnode is about be converted to an item, but before the
-         node is deleted from the world or the drops are added.  This is generally
-         the result of either the node being dug or an attached node becoming detached.
-       ^ drops is a table of ItemStacks, so any metadata to be preserved can be
-         added directly to one or more of the dropped items.  See "ItemStackMetaRef".
-       ^ default: nil ]]
+        ^ Warning: making a liquid node 'floodable' will cause problems. ]]
+
+        preserve_metadata = func(pos, oldnode, oldmeta, drops) --[[
+        ^ Called when oldnode is about be converted to an item, but before the
+        ^ node is deleted from the world or the drops are added. This is
+        ^ generally the result of either the node being dug or an attached node
+        ^ becoming detached.
+        ^ drops is a table of ItemStacks, so any metadata to be preserved can
+        ^ be added directly to one or more of the dropped items. See
+        ^ "ItemStackMetaRef".
+        ^ default: nil ]]
+
         after_place_node = func(pos, placer, itemstack, pointed_thing) --[[
         ^ Called after constructing node when node was placed using
-          minetest.item_place_node / minetest.place_node
+        ^ minetest.item_place_node / minetest.place_node
         ^ If return true no item is taken from itemstack
         ^ `placer` may be any valid ObjectRef or nil
         ^ default: nil ]]
+
         after_dig_node = func(pos, oldnode, oldmetadata, digger), --[[
         ^ oldmetadata is in table format
         ^ Called after destructing node when node was dug using
-          minetest.node_dig / minetest.dig_node
+        ^ minetest.node_dig / minetest.dig_node
         ^ default: nil ]]
+
         can_dig = function(pos, [player]) --[[
         ^ returns true if node can be dug, or false if not
         ^ default: nil ]]
@@ -5246,13 +5292,15 @@ Definition tables
         on_punch = func(pos, node, puncher, pointed_thing), --[[
         ^ default: minetest.node_punch
         ^ By default: Calls minetest.register_on_punchnode callbacks ]]
-        on_rightclick = func(pos, node, clicker, itemstack, pointed_thing), --[[
+
+        on_rightclick = func(pos, node, clicker, itemstack, pointed_thing),
+        --[[
         ^ default: nil
         ^ itemstack will hold clicker's wielded item
         ^ Shall return the leftover itemstack
         ^ Note: pointed_thing can be nil, if a mod calls this function
-          This function does not get triggered by clients <=0.4.16 if the
-          "formspec" node metadata field is set ]]
+        ^ This function does not get triggered by clients <=0.4.16 if the
+        ^ "formspec" node metadata field is set ]]
 
         on_dig = func(pos, node, digger), --[[
         ^ default: minetest.node_dig
@@ -5262,33 +5310,37 @@ Definition tables
         ^ default: nil
         ^ called by NodeTimers, see minetest.get_node_timer and NodeTimerRef
         ^ elapsed is the total time passed since the timer was started
-        ^ return true to run the timer for another cycle with the same timeout value ]]
+        ^ return true to run the timer for another cycle with the same timeout
+        ^ value. ]]
 
         on_receive_fields = func(pos, formname, fields, sender), --[[
         ^ fields = {name1 = value1, name2 = value2, ...}
         ^ Called when an UI form (e.g. sign text input) returns data
         ^ default: nil ]]
 
-        allow_metadata_inventory_move = func(pos, from_list, from_index,
-                to_list, to_index, count, player), --[[
+        allow_metadata_inventory_move = func(pos, from_list, from_index, to_list, to_index, count, player),
+        --[[
         ^ Called when a player wants to move items inside the inventory
         ^ Return value: number of items allowed to move ]]
 
-        allow_metadata_inventory_put = func(pos, listname, index, stack, player), --[[
+        allow_metadata_inventory_put = func(pos, listname, index, stack, player),
+        --[[
         ^ Called when a player wants to put something into the inventory
         ^ Return value: number of items allowed to put
         ^ Return value: -1: Allow and don't modify item count in inventory ]]
 
-        allow_metadata_inventory_take = func(pos, listname, index, stack, player), --[[
+        allow_metadata_inventory_take = func(pos, listname, index, stack, player),
+        --[[
         ^ Called when a player wants to take something out of the inventory
         ^ Return value: number of items allowed to take
         ^ Return value: -1: Allow and don't modify item count in inventory ]]
 
-        on_metadata_inventory_move = func(pos, from_list, from_index,
-                to_list, to_index, count, player),
+        on_metadata_inventory_move = func(pos, from_list, from_index, to_list, to_index, count, player),
         on_metadata_inventory_put = func(pos, listname, index, stack, player),
-        on_metadata_inventory_take = func(pos, listname, index, stack, player), --[[
-        ^ Called after the actual action has happened, according to what was allowed.
+        on_metadata_inventory_take = func(pos, listname, index, stack, player),
+        --[[
+        ^ Called after the actual action has happened, according to what was
+        ^ allowed.
         ^ No return value ]]
 
         on_blast = func(pos, intensity), --[[
@@ -5361,18 +5413,20 @@ Definition tables
     --  ^ a list of nodenames is supported too
         clust_scarcity = 8 * 8 * 8,
     --  ^ Ore has a 1 out of clust_scarcity chance of spawning in a node
-    --  ^ If the desired average distance between ores is 'd', set this to d * d * d.
+    --  ^ If the desired average distance between ores is 'd', set this to
+    --  ^ d * d * d.
         clust_num_ores = 8,
     --  ^ Number of ores in a cluster
         clust_size = 3,
     --  ^ Size of the bounding box of the cluster
-    --  ^ In this example, there is a 3 * 3 * 3 cluster where 8 out of the 27 nodes
-    --  ^ are coal ore.
+    --  ^ In this example, there is a 3 * 3 * 3 cluster where 8 out of the 27
+    --  ^ nodes are coal ore.
         y_min = -31000,
         y_max = 64,
     --  ^ Lower and upper limits for ore.
         flags = "",
-    --  ^ Attributes for this ore generation, see 'Ore attributes' section above.
+    --  ^ Attributes for this ore generation, see 'Ore attributes' section
+    --  ^ above.
         noise_threshold = 0.5,
     --  ^ If noise is above this threshold, ore is placed. Not needed for a
     --  ^ uniform distribution.
@@ -5384,15 +5438,16 @@ Definition tables
             octaves = 3,
             persist = 0.7
         },
-    --  ^ NoiseParams structure describing one of the perlin noises used for ore
-    --  ^ distribution.
+    --  ^ NoiseParams structure describing one of the perlin noises used for
+    --  ^ ore distribution.
     --  ^ Needed by "sheet", "puff", "blob" and "vein" ores.
     --  ^ Omit from "scatter" ore for a uniform ore distribution.
-    --  ^ Omit from "stratum ore for a simple horizontal strata from y_min to y_max.
+    --  ^ Omit from "stratum ore for a simple horizontal strata from y_min to
+    --  ^ y_max.
         biomes = {"desert", "rainforest"}
     --  ^ List of biomes in which this decoration occurs.
-    --  ^ Occurs in all biomes if this is omitted, and ignored if the Mapgen being
-    --  ^ used does not support biomes.
+    --  ^ Occurs in all biomes if this is omitted, and ignored if the Mapgen
+    --  ^ being used does not support biomes.
     --  ^ Can be a list of (or a single) biome names, IDs, or definitions.
         column_height_min = 1,
         column_height_max = 16,
@@ -5451,9 +5506,11 @@ Definition tables
         depth_water_top = 10,
     --  ^ Node forming a surface layer in seawater with the defined thickness.
         node_water = "",
-    --  ^ Node that replaces all seawater nodes not in the defined surface layer.
+    --  ^ Node that replaces all seawater nodes not in the defined surface
+    --  ^ layer.
         node_river_water = "default:ice",
-    --  ^ Node that replaces river water in mapgens that use default:river_water.
+    --  ^ Node that replaces river water in mapgens that use
+    --  ^ default:river_water.
         node_riverbed = "default:gravel",
         depth_riverbed = 2,
     --  ^ Node placed under river water and thickness of this layer.
@@ -5488,17 +5545,31 @@ Definition tables
         place_on = "default:dirt_with_grass",
     --  ^ Node (or list of nodes) that the decoration can be placed on
         sidelen = 8,
-    --  ^ Size of divisions made in the chunk being generated.
-    --  ^ If the chunk size is not evenly divisible by sidelen, sidelen is made equal to the chunk size.
+    --  ^ Size of the square divisions of the mapchunk being generated.
+    --  ^ Determines the resolution of noise variation if used.
+    --  ^ If the chunk size is not evenly divisible by sidelen, sidelen is made
+    --  ^ equal to the chunk size.
         fill_ratio = 0.02,
-    --  ^ Ratio of the area to be uniformly filled by the decoration.
+    --  ^ The value determines 'decorations per surface node'.
     --  ^ Used only if noise_params is not specified.
-        noise_params = {offset=0, scale=.45, spread={x=100, y=100, z=100}, seed=354, octaves=3, persist=0.7},
-    --  ^ NoiseParams structure describing the perlin noise used for decoration distribution.
-    --  ^ The result of this is multiplied by the 2d area of the division being decorated.
+        noise_params = {
+            offset = 0,
+            scale = 0.45,
+            spread = {x = 100, y = 100, z = 100},
+            seed = 354,
+            octaves = 3,
+            persist = 0.7,
+            lacunarity = 2.0,
+            flags = "absvalue"
+        },
+    --  ^ NoiseParams structure describing the perlin noise used for decoration
+    --  ^ distribution.
+    --  ^ A noise value is calculated for each square division and determines
+    --  ^ 'decorations per surface node' within each division.
         biomes = {"Oceanside", "Hills", "Plains"},
-    --  ^ List of biomes in which this decoration occurs.  Occurs in all biomes if this is omitted,
-    --  ^ and ignored if the Mapgen being used does not support biomes.
+    --  ^ List of biomes in which this decoration occurs. Occurs in all biomes
+    --  ^ if this is omitted, and ignored if the Mapgen being used does not
+    --  ^ support biomes.
     --  ^ Can be a list of (or a single) biome names, IDs, or definitions.
         y_min = -31000
         y_max = 31000
@@ -5506,10 +5577,12 @@ Definition tables
     --  ^ These parameters refer to the Y co-ordinate of the 'place_on' node.
         spawn_by = "default:water",
     --  ^ Node (or list of nodes) that the decoration only spawns next to.
-    --  ^ Checks two horizontal planes of neighbouring nodes (including diagonal neighbours),
-    --  ^ one plane level with the 'place_on' node and a plane one node above that.
+    --  ^ Checks two horizontal planes of 8 neighbouring nodes (including
+    --  ^ diagonal neighbours), one plane level with the 'place_on' node and a
+    --  ^ plane one node above that.
         num_spawn_by = 1,
-    --  ^ Number of spawn_by nodes that must be surrounding the decoration position to occur.
+    --  ^ Number of spawn_by nodes that must be surrounding the decoration
+    --  ^ position to occur.
     --  ^ If absent or -1, decorations occur next to any nodes.
         flags = "liquid_surface, force_placement, all_floors, all_ceilings",
     --  ^ Flags for all decoration types.
@@ -5531,16 +5604,19 @@ Definition tables
         ----- Simple-type parameters
         decoration = "default:grass",
     --  ^ The node name used as the decoration.
-    --  ^ If instead a list of strings, a randomly selected node from the list is placed as the decoration.
+    --  ^ If instead a list of strings, a randomly selected node from the list
+    --  ^ is placed as the decoration.
         height = 1,
     --  ^ Decoration height in nodes.
-    --  ^ If height_max is not 0, this is the lower limit of a randomly selected height.
+    --  ^ If height_max is not 0, this is the lower limit of a randomly
+    --  ^ selected height.
         height_max = 0,
     --  ^ Upper limit of the randomly selected height.
     --  ^ If absent, the parameter 'height' is used as a constant.
         param2 = 0,
     --  ^ Param2 value of decoration nodes.
-    --  ^ If param2_max is not 0, this is the lower limit of a randomly selected param2.
+    --  ^ If param2_max is not 0, this is the lower limit of a randomly
+    --  ^ selected param2.
         param2_max = 0,
     --  ^ Upper limit of the randomly selected param2.
     --  ^ If absent, the parameter 'param2' is used as a constant.
@@ -5554,23 +5630,22 @@ Definition tables
 
         ----- Schematic-type parameters
         schematic = "foobar.mts",
-    --  ^ If schematic is a string, it is the filepath relative to the current working directory of the
-    --  ^ specified Minetest schematic file.
+    --  ^ If schematic is a string, it is the filepath relative to the current
+    --  ^ working directory of the specified Minetest schematic file.
     --  ^  - OR -, could be the ID of a previously registered schematic
-    --  ^  - OR -, could instead be a table containing two mandatory fields, size and data,
-    --  ^ and an optional table yslice_prob:
+    --  ^  - OR -, could instead be a table containing two mandatory fields,
+    --  ^ size and data, and an optional table yslice_prob:
         schematic = {
-            size = {x=4, y=6, z=4},
+            size = {x = 4, y = 6, z = 4},
             data = {
-                {name="default:cobble", param1=255, param2=0},
-                {name="default:dirt_with_grass", param1=255, param2=0},
-                {name="ignore", param1=255, param2=0},
-                {name="air", param1=255, param2=0},
+                {name = "default:cobble", param1 = 255, param2 = 0},
+                {name = "default:dirt_with_grass", param1 = 255, param2 = 0},
+                {name = "air", param1 = 255, param2 = 0},
                  ...
             },
             yslice_prob = {
-                {ypos=2, prob=128},
-                {ypos=5, prob=64},
+                {ypos = 2, prob = 128},
+                {ypos = 5, prob = 64},
                  ...
             },
         },
@@ -5578,7 +5653,7 @@ Definition tables
         replacements = {["oldname"] = "convert_to", ...},
         flags = "place_center_x, place_center_y, place_center_z",
     --  ^ Flags for schematic decorations.  See 'Schematic attributes'.
-        rotation = "90" -- rotate schematic 90 degrees on placement
+        rotation = "90",
     --  ^ Rotation can be "0", "90", "180", "270", or "random".
         place_offset_y = 0,
     --  ^ If the flag 'place_center_y' is set this parameter is ignored.
@@ -5597,19 +5672,21 @@ Definition tables
         description = "Remove privilege from player", -- Full description
         privs = {privs=true}, -- Require the "privs" privilege to run
         func = function(name, param), -- Called when command is run.
-                                      -- Returns boolean success and text output.
+                                      -- Returns boolean success and text
+                                      -- output.
     }
 
 Note that in params, use of symbols is as follows:
 
-* `<>` signifies a placeholder to be replaced when the command is used. For example,
-  when a player name is needed: `<name>`
-* `[]` signifies param is optional and not required when the command is used. For
-  example, if you require param1 but param2 is optional: `<param1> [<param2>]`
+* `<>` signifies a placeholder to be replaced when the command is used. For
+  example, when a player name is needed: `<name>`
+* `[]` signifies param is optional and not required when the command is used.
+  For example, if you require param1 but param2 is optional:
+  `<param1> [<param2>]`
 * `|` signifies exclusive or. The command requires one param from the options
   provided. For example: `<param1> | <param2>`
-* `()` signifies grouping. For example, when param1 and param2 are both required,
-  or only param3 is required: `(<param1> <param2>) | <param3>`
+* `()` signifies grouping. For example, when param1 and param2 are both
+  required, or only param3 is required: `(<param1> <param2>) | <param3>`
 
 ### Detached inventory callbacks
 
@@ -5631,7 +5708,8 @@ Note that in params, use of symbols is as follows:
         on_move = func(inv, from_list, from_index, to_list, to_index, count, player),
         on_put = func(inv, listname, index, stack, player),
         on_take = func(inv, listname, index, stack, player),
-    --  ^ Called after the actual action has happened, according to what was allowed.
+    --  ^ Called after the actual action has happened, according to what was
+    --  ^ allowed.
     --  ^ No return value
     }
 
@@ -5639,11 +5717,12 @@ Note that in params, use of symbols is as follows:
 
     {
         hud_elem_type = "image", -- see HUD element types
-    --  ^ type of HUD element, can be either of "image", "text", "statbar", or "inventory"
+    --  ^ type of HUD element, can be either of "image", "text", "statbar",
+          "inventory".
         position = {x=0.5, y=0.5},
     --  ^ Left corner position of element
         name = "<name>",
-        scale = {x=2, y=2},
+        scale = {x = 2, y = 2},
         text = "<text>",
         number = 2,
         item = 3,
@@ -5691,7 +5770,8 @@ Note that in params, use of symbols is as follows:
     {
         amount = 1,
         time = 1,
-    --  ^ If time is 0 has infinite lifespan and spawns the amount on a per-second base
+    --  ^ If time is 0 has infinite lifespan and spawns the amount on a
+    --  ^ per-second basis.
         minpos = {x=0, y=0, z=0},
         maxpos = {x=0, y=0, z=0},
         minvel = {x=0, y=0, z=0},
@@ -5703,22 +5783,24 @@ Note that in params, use of symbols is as follows:
         minsize = 1,
         maxsize = 1,
     --  ^ The particle's properties are random values in between the bounds:
-    --  ^ minpos/maxpos, minvel/maxvel (velocity), minacc/maxacc (acceleration),
-    --  ^ minsize/maxsize, minexptime/maxexptime (expirationtime)
+    --  ^ minpos/maxpos, minvel/maxvel (velocity),
+    --  ^ minacc/maxacc (acceleration), minsize/maxsize,
+    --  ^ minexptime/maxexptime (expirationtime).
         collisiondetection = false,
     --  ^ collisiondetection: if true uses collision detection
         collision_removal = false,
     --  ^ collision_removal: if true then particle is removed when it collides,
     --  ^ requires collisiondetection = true to have any effect
         attached = ObjectRef,
-    --  ^ attached: if defined, particle positions, velocities and accelerations
-    --  ^ are relative to this object's position and yaw.
+    --  ^ attached: if defined, particle positions, velocities and
+    --  ^ accelerations are relative to this object's position and yaw.
         vertical = false,
     --  ^ vertical: if true faces player using y axis only
         texture = "image.png",
     --  ^ Uses texture (string)
         playername = "singleplayer"
-    --  ^ Playername is optional, if specified spawns particle only on the player's client
+    --  ^ Playername is optional, if specified spawns particle only on the
+    --  ^ player's client.
         animation = {Tile Animation definition},
     --  ^ optional, specifies how to animate the particle texture
         glow = 0
@@ -5730,32 +5812,36 @@ Note that in params, use of symbols is as follows:
     {
         url = "http://example.org",
         timeout = 10,
-     -- ^ Timeout for connection in seconds. Default is 3 seconds.
-        post_data = "Raw POST request data string" OR { field1 = "data1", field2 = "data2" },
-     -- ^ Optional, if specified a POST request with post_data is performed.
-     -- ^ Accepts both a string and a table. If a table is specified, encodes table
-     -- ^ as x-www-form-urlencoded key-value pairs.
-     -- ^ If post_data ist not specified, a GET request is performed instead.
+    --  ^ Timeout for connection in seconds. Default is 3 seconds.
+        post_data = "Raw POST request data string" OR {field1 = "data1", field2 = "data2"},
+    --  ^ Optional, if specified a POST request with post_data is performed.
+    --  ^ Accepts both a string and a table. If a table is specified, encodes
+    --  ^ table as x-www-form-urlencoded key-value pairs.
+    --  ^ If post_data ist not specified, a GET request is performed instead.
         user_agent = "ExampleUserAgent",
-     -- ^ Optional, if specified replaces the default minetest user agent with given string
+    --  ^ Optional, if specified replaces the default minetest user agent with
+    --  ^ given string.
         extra_headers = { "Accept-Language: en-us", "Accept-Charset: utf-8" },
-     -- ^ Optional, if specified adds additional headers to the HTTP request. You must make sure
-     -- ^ that the header strings follow HTTP specification ("Key: Value").
+    --  ^ Optional, if specified adds additional headers to the HTTP request.
+    --  ^ You must make sure that the header strings follow HTTP specification
+    --  ^ ("Key: Value").
         multipart = boolean
-     -- ^ Optional, if true performs a multipart HTTP request. Default is false.
+    --  ^ Optional, if true performs a multipart HTTP request.
+    --  ^ Default is false.
     }
 
 ### `HTTPRequestResult` definition (`HTTPApiTable.fetch` callback, `HTTPApiTable.fetch_async_get`)
 
     {
         completed = true,
-     -- ^ If true, the request has finished (either succeeded, failed or timed out)
+    --  ^ If true, the request has finished (either succeeded, failed or timed
+          out).
         succeeded = true,
-     -- ^ If true, the request was successful
+    --  ^ If true, the request was successful
         timeout = false,
-     -- ^ If true, the request timed out
+    --  ^ If true, the request timed out
         code = 200,
-     -- ^ HTTP status code
+    --  ^ HTTP status code
         data = "response"
     }
 
@@ -5763,25 +5849,30 @@ Note that in params, use of symbols is as follows:
 
     {
         get_auth = func(name),
-    --  ^ Get authentication data for existing player `name` (`nil` if player doesn't exist)
-    --  ^ returns following structure `{password=<string>, privileges=<table>, last_login=<number or nil>}`
+    --  ^ Get authentication data for existing player `name` (`nil` if player
+          doesn't exist).
+    --  ^ returns following structure:
+    --  ^ `{password=<string>, privileges=<table>, last_login=<number or nil>}`
         create_auth = func(name, password),
     --  ^ Create new auth data for player `name`
-    --  ^ Note that `password` is not plain-text but an arbitrary representation decided by the engine
+    --  ^ Note that `password` is not plain-text but an arbitrary
+    --  ^ representation decided by the engine
         delete_auth = func(name),
-    --  ^ Delete auth data of player `name`, returns boolean indicating success (false if player nonexistant)
+    --  ^ Delete auth data of player `name`, returns boolean indicating success
+    --  ^ (false if player nonexistant).
         set_password = func(name, password),
     --  ^ Set password of player `name` to `password`
            Auth data should be created if not present
         set_privileges = func(name, privileges),
     --  ^ Set privileges of player `name`
-    --  ^ `privileges` is in table form, auth data should be created if not present
+    --  ^ `privileges` is in table form, auth data should be created if not
+    --  ^ present.
         reload = func(),
     --  ^ Reload authentication data from the storage location
     --  ^ Returns boolean indicating success
         record_login = func(name),
     --  ^ Called when player joins, used for keeping track of last_login
         iterate = func(),
-    --  ^ Returns an iterator (use with `for` loops) for all player names currently in the auth database
+    --  ^ Returns an iterator (use with `for` loops) for all player names
+    --  ^ currently in the auth database.
     }
-