# - filepath
# - key (will be ignored in GUI, since a special key change dialog exists)
# - flags
-# - noise_params
+# - noise_params_2d
+# - noise_params_3d
+# - v3f
#
# `type_args` can be:
# * int:
# * flags:
# Flags are always separated by comma without spaces.
# - default possible_flags
-# * noise_params:
-# TODO: these are currently treated like strings
+# * noise_params_2d:
+# Format is <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, <octaves>, <persistance>, <lacunarity>[, <default flags>]
+# - default
+# * noise_params_3d:
+# Format is <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, <octaves>, <persistance>, <lacunarity>[, <default flags>]
+# - default
+# * v3f:
+# Format is (<X>, <Y>, <Z>)
+# - default
#
# Comments directly above a setting are bound to this setting.
# All other comments are ignored.
# There shouldn't be too much settings per category; settings that shouldn't be
# modified by the "average user" should be in (sub-)categories called "Advanced".
-[Client]
-
-[*Controls]
+[Controls]
# If enabled, you can place blocks at the position (feet + eye level) where you stand.
# This is helpful when working with nodeboxes in small areas.
enable_build_where_you_stand (Build inside player) bool false
# This requires the "fly" privilege on the server.
free_move (Flying) bool false
-# Fast movement (via use key).
+# Fast movement (via the "special" key).
# This requires the "fast" privilege on the server.
fast_move (Fast movement) bool false
# Mouse sensitivity multiplier.
mouse_sensitivity (Mouse sensitivity) float 0.2
-# If enabled, "use" key instead of "sneak" key is used for climbing down and descending.
-aux1_descends (Key use for climbing/descending) bool false
+# If enabled, "special" key instead of "sneak" key is used for climbing down and
+# descending.
+aux1_descends (Special key for climbing/descending) bool false
# Double-tapping the jump key toggles fly mode.
doubletap_jump (Double tap jump for fly) bool false
-# If disabled "use" key is used to fly fast if both fly and fast mode are enabled.
+# If disabled, "special" key is used to fly fast if both fly and fast mode are
+# enabled.
always_fly_fast (Always fly and fast) bool true
-# The time in seconds it takes between repeated right clicks when holding the right mouse button.
+# The time in seconds it takes between repeated right clicks when holding the right
+# mouse button.
repeat_rightclick_time (Rightclick repetition interval) float 0.25
+# Prevent digging and placing from repeating when holding the mouse buttons.
+# Enable this when you dig or place too often by accident.
+safe_dig_and_place (Safe digging and placing) bool false
+
# Enable random user input (only used for testing).
random_input (Random input) bool false
# Continuous forward movement, toggled by autoforward key.
+# Press the autoforward key again or the backwards movement to disable.
continuous_forward (Continuous forward) bool false
-# Enable Joysticks
-enable_joysticks (Enable Joysticks) bool false
+# The length in pixels it takes for touch screen interaction to start.
+touchscreen_threshold (Touch screen threshold) int 20 0 100
+
+# (Android) Fixes the position of virtual joystick.
+# If disabled, virtual joystick will center to first-touch's position.
+fixed_virtual_joystick (Fixed virtual joystick) bool false
+
+# (Android) Use virtual joystick to trigger "aux" button.
+# If enabled, virtual joystick will also tap "aux" button when out of main circle.
+virtual_joystick_triggers_aux (Virtual joystick triggers aux button) bool false
+
+# Enable joysticks
+enable_joysticks (Enable joysticks) bool false
# The identifier of the joystick to use
joystick_id (Joystick ID) int 0
# The type of joystick
-joystick_type (Joystick Type) enum auto auto,generic,xbox
+joystick_type (Joystick type) enum auto auto,generic,xbox
# The time in seconds it takes between repeated events
# when holding down a joystick button combination.
keymap_forward (Forward key) key KEY_KEY_W
# Key for moving the player backward.
+# Will also disable autoforward, when active.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_backward (Backward key) key KEY_KEY_S
# Key for moving fast in fast mode.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
-keymap_special1 (Use key) key KEY_KEY_E
+keymap_special1 (Special key) key KEY_KEY_E
# Key for opening the chat window.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_cmd_local (Command key) key .
-# Key for opening the chat console.
-# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
-keyman_console (Console key) key KEY_F10
-
# Key for toggling unlimited view range.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_rangeselect (Range select key) key KEY_KEY_R
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_zoom (View zoom key) key KEY_KEY_Z
+# Key for selecting the first hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot1 (Hotbar slot 1 key) key KEY_KEY_1
+
+# Key for selecting the second hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot2 (Hotbar slot 2 key) key KEY_KEY_2
+
+# Key for selecting the third hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot3 (Hotbar slot 3 key) key KEY_KEY_3
+
+# Key for selecting the fourth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot4 (Hotbar slot 4 key) key KEY_KEY_4
+
+# Key for selecting the fifth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot5 (Hotbar slot 5 key) key KEY_KEY_5
+
+# Key for selecting the sixth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot6 (Hotbar slot 6 key) key KEY_KEY_6
+
+# Key for selecting the seventh hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot7 (Hotbar slot 7 key) key KEY_KEY_7
+
+# Key for selecting the eighth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot8 (Hotbar slot 8 key) key KEY_KEY_8
+
+# Key for selecting the ninth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot9 (Hotbar slot 9 key) key KEY_KEY_9
+
+# Key for selecting the tenth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot10 (Hotbar slot 10 key) key KEY_KEY_0
+
+# Key for selecting the 11th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot11 (Hotbar slot 11 key) key
+
+# Key for selecting the 12th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot12 (Hotbar slot 12 key) key
+
+# Key for selecting the 13th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot13 (Hotbar slot 13 key) key
+
+# Key for selecting the 14th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot14 (Hotbar slot 14 key) key
+
+# Key for selecting the 15th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot15 (Hotbar slot 15 key) key
+
+# Key for selecting the 16th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot16 (Hotbar slot 16 key) key
+
+# Key for selecting the 17th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot17 (Hotbar slot 17 key) key
+
+# Key for selecting the 18th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot18 (Hotbar slot 18 key) key
+
+# Key for selecting the 19th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot19 (Hotbar slot 19 key) key
+
+# Key for selecting the 20th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot20 (Hotbar slot 20 key) key
+
+# Key for selecting the 21th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot21 (Hotbar slot 21 key) key
+
+# Key for selecting the 22th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot22 (Hotbar slot 22 key) key
+
+# Key for selecting the 23th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+keymap_slot23 (Hotbar slot 23 key) key
+
# Key for toggling the display of the HUD.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_toggle_hud (HUD toggle key) key KEY_F1
-# Key for toggling the display of the chat.
+# Key for toggling the display of chat.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_toggle_chat (Chat toggle key) key KEY_F2
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_console (Large chat console key) key KEY_F10
-# Key for toggling the display of the fog.
+# Key for toggling the display of fog.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_toggle_force_fog_off (Fog toggle key) key KEY_F3
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_decrease_viewing_range_min (View range decrease key) key -
-# Key for printing debug stacks. Used for development.
-# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
-keymap_print_debug_stacks (Print stacks) key KEY_KEY_P
-
-[*Network]
-
-# Address to connect to.
-# Leave this blank to start a local server.
-# Note that the address field in the main menu overrides this setting.
-address (Server address) string
-
-# Port to connect to (UDP).
-# Note that the port field in the main menu overrides this setting.
-remote_port (Remote port) int 30000 1 65535
+[Graphics]
-# Whether to support older servers before protocol version 25.
-# Enable if you want to connect to 0.4.12 servers and before.
-# Servers starting with 0.4.13 will work, 0.4.12-dev servers may work.
-# Disabling this option will protect your password better.
-send_pre_v25_init (Support older servers) bool false
+[*In-Game]
-# Save the map received by the client on disk.
-enable_local_map_saving (Saving map received from server) bool false
-
-# Show entity selection boxes
-show_entity_selectionbox (Show entity selection boxes) bool true
-
-# Enable usage of remote media server (if provided by server).
-# Remote servers offer a significantly faster way to download media (e.g. textures)
-# when connecting to the server.
-enable_remote_media_server (Connect to external media server) bool true
-
-# Enable Lua modding support on client.
-# This support is experimental and API can change.
-enable_client_modding (Client modding) bool false
-
-# URL to the server list displayed in the Multiplayer Tab.
-serverlist_url (Serverlist URL) string servers.minetest.net
-
-# File in client/serverlist/ that contains your favorite servers displayed in the Multiplayer Tab.
-serverlist_file (Serverlist file) string favoriteservers.txt
-
-[*Graphics]
-
-[**In-Game]
-
-[***Basic]
+[**Basic]
# Enable VBO
enable_vbo (VBO) bool true
# Adds particles when digging a node.
enable_particles (Digging particles) bool true
-[***Filtering]
+[**Filtering]
-# Use mip mapping to scale textures. May slightly increase performance.
+# Use mip mapping to scale textures. May slightly increase performance,
+# especially when using a high resolution texture pack.
+# Gamma correct downscaling is not supported.
mip_map (Mipmapping) bool false
# Use anisotropic filtering when viewing at textures from an angle.
# Filtered textures can blend RGB values with fully-transparent neighbors,
# which PNG optimizers usually discard, sometimes resulting in a dark or
-# light edge to transparent textures. Apply this filter to clean that up
+# light edge to transparent textures. Apply this filter to clean that up
# at texture load time.
texture_clean_transparent (Clean transparent textures) bool false
# When using bilinear/trilinear/anisotropic filters, low-resolution textures
# can be blurred, so automatically upscale them with nearest-neighbor
-# interpolation to preserve crisp pixels. This sets the minimum texture size
+# interpolation to preserve crisp pixels. This sets the minimum texture size
# for the upscaled textures; higher values look sharper, but require more
-# memory. Powers of 2 are recommended. Setting this higher than 1 may not
+# memory. Powers of 2 are recommended. Setting this higher than 1 may not
# have a visible effect unless bilinear/trilinear/anisotropic filtering is
# enabled.
-texture_min_size (Minimum texture size for filters) int 64
+# This is also used as the base node texture size for world-aligned
+# texture autoscaling.
+texture_min_size (Minimum texture size) int 64
# Experimental option, might cause visible spaces between blocks
# when set to higher number than 0.
# It should give significant performance boost at the cost of less detailed image.
undersampling (Undersampling) enum 0 0,2,3,4
-[***Shaders]
+[**Shaders]
-# Shaders allow advanced visual effects and may increase performance on some video cards.
+# Shaders allow advanced visual effects and may increase performance on some video
+# cards.
# This only works with the OpenGL video backend.
enable_shaders (Shaders) bool true
# Path to shader directory. If no path is defined, default location will be used.
shader_path (Shader path) path
-[****Tone Mapping]
+[***Tone Mapping]
# Enables filmic tone mapping
tone_mapping (Filmic tone mapping) bool false
-[****Bumpmapping]
+[***Bumpmapping]
# Enables bumpmapping for textures. Normalmaps need to be supplied by the texture pack
# or need to be auto-generated.
# A higher value results in smoother normal maps.
normalmaps_smooth (Normalmaps sampling) int 0 0 2
-[****Parallax Occlusion]
+[***Parallax Occlusion]
# Enables parallax occlusion mapping.
# Requires shaders to be enabled.
parallax_occlusion_iterations (Parallax occlusion iterations) int 4
# Overall scale of parallax occlusion effect.
-parallax_occlusion_scale (Parallax occlusion Scale) float 0.08
+parallax_occlusion_scale (Parallax occlusion scale) float 0.08
# Overall bias of parallax occlusion effect, usually scale/2.
parallax_occlusion_bias (Parallax occlusion bias) float 0.04
-[****Waving Nodes]
+[***Waving Nodes]
# Set to true enables waving water.
# Requires shaders to be enabled.
# Requires shaders to be enabled.
enable_waving_plants (Waving plants) bool false
-[***Advanced]
+[**Advanced]
# Arm inertia, gives a more realistic movement of
# the arm when the camera moves.
# Maximum FPS when game is paused.
pause_fps_max (FPS in pause menu) int 20
+# Open the pause menu when the window's focus is lost. Does not pause if a formspec is
+# open.
+pause_on_lost_focus (Pause on lost window focus) bool false
+
# View distance in nodes.
viewing_range (Viewing range) int 100 20 4000
+# Camera near plane distance in nodes, between 0 and 0.5
+# Most users will not need to change this.
+# Increasing can reduce artifacting on weaker GPUs.
+# 0.1 = Default, 0.25 = Good value for weaker tablets.
+near_plane (Near plane) float 0.1 0 0.5
+
# Width component of the initial window size.
screen_w (Screen width) int 1024
# Height component of the initial window size.
-screen_h (Screen height) int 576
+screen_h (Screen height) int 600
# Save window size automatically when modified.
-autosave_screensize (Autosave Screen Size) bool true
+autosave_screensize (Autosave screen size) bool true
# Fullscreen mode.
fullscreen (Full screen) bool false
fullscreen_bpp (Full screen BPP) int 24
# Vertical screen synchronization.
-vsync (V-Sync) bool false
+vsync (VSync) bool false
# Field of view in degrees.
-fov (Field of view) int 72 30 160
-
-# Field of view while zooming in degrees.
-# This requires the "zoom" privilege on the server.
-zoom_fov (Field of view for zoom) int 15 7 160
+fov (Field of view) int 72 45 160
# Adjust the gamma encoding for the light tables. Higher numbers are brighter.
# This setting is for the client only and is ignored by the server.
-display_gamma (Gamma) float 2.2 1.0 3.0
+display_gamma (Gamma) float 1.0 0.5 3.0
+
+# Gradient of light curve at minimum light level.
+lighting_alpha (Darkness sharpness) float 0.0 0.0 4.0
+
+# Gradient of light curve at maximum light level.
+lighting_beta (Lightness sharpness) float 1.5 0.0 4.0
+
+# Strength of light curve mid-boost.
+lighting_boost (Light curve mid boost) float 0.2 0.0 1.0
+
+# Center of light curve mid-boost.
+lighting_boost_center (Light curve mid boost center) float 0.5 0.0 1.0
+
+# Spread of light curve mid-boost.
+# Standard deviation of the mid-boost gaussian.
+lighting_boost_spread (Light curve mid boost spread) float 0.2 0.0 1.0
# Path to texture directory. All textures are first searched from here.
texture_path (Texture path) path
# The rendering back-end for Irrlicht.
-video_driver (Video driver) enum opengl null,software,burningsvideo,direct3d8,direct3d9,opengl
-
-# Height on which clouds are appearing.
-cloud_height (Cloud height) int 120
+# A restart is required after changing this.
+# Note: On Android, stick with OGLES1 if unsure! App may fail to start otherwise.
+# On other platforms, OpenGL is recommended, and it’s the only driver with
+# shader support currently.
+video_driver (Video driver) enum opengl null,software,burningsvideo,direct3d8,direct3d9,opengl,ogles1,ogles2
# Radius of cloud area stated in number of 64 node cloud squares.
# Values larger than 26 will start to produce sharp cutoffs at cloud area corners.
# - interlaced: odd/even line based polarisation screen support.
# - topbottom: split screen top/bottom.
# - sidebyside: split screen side by side.
+# - crossview: Cross-eyed 3d
# - pageflip: quadbuffer based 3d.
-3d_mode (3D mode) enum none none,anaglyph,interlaced,topbottom,sidebyside,pageflip
+# Note that the interlaced mode requires shaders to be enabled.
+3d_mode (3D mode) enum none none,anaglyph,interlaced,topbottom,sidebyside,crossview,pageflip
# In-game chat console height, between 0.1 (10%) and 1.0 (100%).
-console_height (Console height) float 1.0 0.1 1.0
+console_height (Console height) float 0.6 0.1 1.0
# In-game chat console background color (R,G,B).
console_color (Console color) string (0,0,0)
# In-game chat console background alpha (opaqueness, between 0 and 255).
console_alpha (Console alpha) int 200 0 255
+# Formspec full-screen background opacity (between 0 and 255).
+formspec_fullscreen_bg_opacity (Formspec Full-Screen Background Opacity) int 140 0 255
+
+# Formspec full-screen background color (R,G,B).
+formspec_fullscreen_bg_color (Formspec Full-Screen Background Color) string (0,0,0)
+
+# Formspec default background opacity (between 0 and 255).
+formspec_default_bg_opacity (Formspec Default Background Opacity) int 140 0 255
+
+# Formspec default background color (R,G,B).
+formspec_default_bg_color (Formspec Default Background Color) string (0,0,0)
+
# Selection box border color (R,G,B).
selectionbox_color (Selection box color) string (0,0,0)
-# Width of the selectionbox's lines around nodes.
+# Width of the selection box lines around nodes.
selectionbox_width (Selection box width) int 2 1 5
# Crosshair color (R,G,B).
# Crosshair alpha (opaqueness, between 0 and 255).
crosshair_alpha (Crosshair alpha) int 255 0 255
+# Maximum number of recent chat messages to show
+recent_chat_messages (Recent Chat Messages) int 6 2 20
+
# Whether node texture animations should be desynchronized per mapblock.
desynchronize_mapblock_texture_animation (Desynchronize block animation) bool true
# Size of the MapBlock cache of the mesh generator. Increasing this will
# increase the cache hit %, reducing the data being copied from the main
# thread, thus reducing jitter.
-meshgen_block_cache_size (Mapblock mesh generator's MapBlock cache size MB) int 20 0 1000
+meshgen_block_cache_size (Mapblock mesh generator's MapBlock cache size in MB) int 20 0 1000
# Enables minimap.
enable_minimap (Minimap) bool true
# Enables animation of inventory items.
inventory_items_animations (Inventory items animations) bool false
-# Android systems only: Tries to create inventory textures from meshes
-# when no supported render was found.
-inventory_image_hack (Inventory image hack) bool false
-
# Fraction of the visible distance at which fog starts to be rendered
-fog_start (Fog Start) float 0.4 0.0 0.99
+fog_start (Fog start) float 0.4 0.0 0.99
# Makes all liquids opaque
opaque_water (Opaque liquids) bool false
-[**Menus]
+# Textures on a node may be aligned either to the node or to the world.
+# The former mode suits better things like machines, furniture, etc., while
+# the latter makes stairs and microblocks fit surroundings better.
+# However, as this possibility is new, thus may not be used by older servers,
+# this option allows enforcing it for certain node types. Note though that
+# that is considered EXPERIMENTAL and may not work properly.
+world_aligned_mode (World-aligned textures mode) enum enable disable,enable,force_solid,force_nodebox
+
+# World-aligned textures may be scaled to span several nodes. However,
+# the server may not send the scale you want, especially if you use
+# a specially-designed texture pack; with this option, the client tries
+# to determine the scale automatically basing on the texture size.
+# See also texture_min_size.
+# Warning: This option is EXPERIMENTAL!
+autoscale_mode (Autoscaling mode) enum disable disable,enable,force
+
+# Show entity selection boxes
+show_entity_selectionbox (Show entity selection boxes) bool true
+
+[*Menus]
# Use a cloud animation for the main menu background.
menu_clouds (Clouds in menu) bool true
-# Scale gui by a user specified value.
+# Scale GUI by a user specified value.
# Use a nearest-neighbor-anti-alias filter to scale the GUI.
# This will smooth over some of the rough edges, and blend
# pixels when scaling down, at the cost of blurring some
# Delay showing tooltips, stated in milliseconds.
tooltip_show_delay (Tooltip delay) int 400
-# Whether freetype fonts are used, requires freetype support to be compiled in.
-freetype (Freetype fonts) bool true
+# Append item name to tooltip.
+tooltip_append_itemname (Append item name) bool false
+
+# Whether FreeType fonts are used, requires FreeType support to be compiled in.
+freetype (FreeType fonts) bool true
# Path to TrueTypeFont or bitmap.
font_path (Font path) filepath fonts/liberationsans.ttf
# Use 0 for default quality.
screenshot_quality (Screenshot quality) int 0 0 100
-[**Advanced]
+[*Advanced]
# Adjust dpi configuration to your screen (non X11/Android only) e.g. for 4k screens.
screen_dpi (DPI) int 72
# Contains the same information as the file debug.txt (default name).
enable_console (Enable console window) bool false
-[*Sound]
+[Sound]
enable_sound (Sound) bool true
sound_volume (Volume) float 0.7 0.0 1.0
+mute_sound (Mute sound) bool false
+
+[Client]
+
+[*Network]
+
+# Address to connect to.
+# Leave this blank to start a local server.
+# Note that the address field in the main menu overrides this setting.
+address (Server address) string
+
+# Port to connect to (UDP).
+# Note that the port field in the main menu overrides this setting.
+remote_port (Remote port) int 30000 1 65535
+
+# Save the map received by the client on disk.
+enable_local_map_saving (Saving map received from server) bool false
+
+# Enable usage of remote media server (if provided by server).
+# Remote servers offer a significantly faster way to download media (e.g. textures)
+# when connecting to the server.
+enable_remote_media_server (Connect to external media server) bool true
+
+# Enable Lua modding support on client.
+# This support is experimental and API can change.
+enable_client_modding (Client modding) bool false
+
+# URL to the server list displayed in the Multiplayer Tab.
+serverlist_url (Serverlist URL) string servers.minetest.net
+
+# File in client/serverlist/ that contains your favorite servers displayed in the
+# Multiplayer Tab.
+serverlist_file (Serverlist file) string favoriteservers.txt
+
+# Maximum size of the out chat queue.
+# 0 to disable queueing and -1 to make the queue size unlimited.
+max_out_chat_queue_size (Maximum size of the out chat queue) int 20
+
[*Advanced]
# Timeout for client to remove unused map data from memory.
server_address (Server address) string game.minetest.net
# Homepage of server, to be displayed in the serverlist.
-server_url (Server URL) string http://minetest.net
+server_url (Server URL) string https://minetest.net
# Automaticaly report to the serverlist.
server_announce (Announce server) bool false
# Announce to this serverlist.
-# If you want to announce your ipv6 address, use serverlist_url = v6.servers.minetest.net.
serverlist_url (Serverlist URL) string servers.minetest.net
-# Remove color codes from incoming chat messages
-# Use this to stop players from being able to use color in their messages
+# Remove color codes from incoming chat messages
+# Use this to stop players from being able to use color in their messages
strip_color_codes (Strip color codes) bool false
[*Network]
[**Advanced]
# Maximum number of blocks that are simultaneously sent per client.
-max_simultaneous_block_sends_per_client (Maximum simultaneous block sends per client) int 10
-
-# Maximum number of blocks that are simultaneously sent in total.
-max_simultaneous_block_sends_server_total (Maximum simultaneous block sends total) int 40
+# The maximum total count is calculated dynamically:
+# max_total = ceil((#clients + max_users) * per_client / 4)
+max_simultaneous_block_sends_per_client (Maximum simultaneous block sends per client) int 40
# To reduce lag, block transfers are slowed down when a player is building something.
# This determines how long they are slowed down after placing or removing a node.
# Message of the day displayed to players connecting.
motd (Message of the day) string
-# Maximum number of players that can connect simultaneously.
+# Maximum number of players that can be connected simultaneously.
max_users (Maximum users) int 15
# World directory (everything in the world is stored here).
# Setting it to -1 disables the feature.
item_entity_ttl (Item entity TTL) int 900
-# If enabled, show the server status message on player connection.
-show_statusline_on_connect (Status message on connection) bool true
-
# Enable players getting damage and dying.
enable_damage (Damage) bool false
default_privs (Default privileges) string interact, shout
# Privileges that players with basic_privs can grant
-basic_privs (Basic Privileges) string interact, shout
+basic_privs (Basic privileges) string interact, shout
# Whether players are shown to clients without any range limit.
# Deprecated, use the setting player_transfer_distance instead.
player_transfer_distance (Player transfer distance) int 0
# Whether to allow players to damage and kill each other.
-enable_pvp (Player versus Player) bool true
+enable_pvp (Player versus player) bool true
+
+# Enable mod channels support.
+enable_mod_channels (Mod channels) bool false
# If this is set, players will always (re)spawn at the given position.
static_spawnpoint (Static spawnpoint) string
ask_reconnect_on_crash (Ask to reconnect after crash) bool false
# From how far clients know about objects, stated in mapblocks (16 nodes).
+#
+# Setting this larger than active_block_range will also cause the server
+# to maintain active objects up to this distance in the direction the
+# player is looking. (This can avoid mobs suddenly disappearing from view)
active_object_send_range_blocks (Active object send range) int 3
-# How large area of blocks are subject to the active block stuff, stated in mapblocks (16 nodes).
+# The radius of the volume of blocks around every player that is subject to the
+# active block stuff, stated in mapblocks (16 nodes).
# In active blocks objects are loaded and ABMs run.
+# This is also the minimum range in which active objects (mobs) are maintained.
+# This should be configured together with active_object_range.
active_block_range (Active block range) int 3
# From how far blocks are sent to clients, stated in mapblocks (16 nodes).
-max_block_send_distance (Max block send distance) int 10
+max_block_send_distance (Max block send distance) int 9
# Maximum number of forceloaded mapblocks.
max_forceloaded_blocks (Maximum forceloaded blocks) int 16
time_send_interval (Time send interval) int 5
# Controls length of day/night cycle.
-# Examples: 72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged.
+# Examples:
+# 72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged.
time_speed (Time speed) int 72
+# Time of day when a new world is started, in millihours (0-23999).
+world_start_time (World start time) int 5250 0 23999
+
# Interval of saving important changes in the world, stated in seconds.
server_map_save_interval (Map save interval) float 5.3
# Set the maximum character length of a chat message sent by clients.
-# chat_message_max_size int 500
+chat_message_max_size (Chat message max length) int 500
-# Limit a single player to send X messages per 10 seconds.
-# chat_message_limit_per_10sec float 10.0
+# Amount of messages a player may send per 10 seconds.
+chat_message_limit_per_10sec (Chat message count limit) float 10.0
-# Kick player if send more than X messages per 10 seconds.
-# chat_message_limit_trigger_kick int 50
+# Kick players who sent more than X messages per 10 seconds.
+chat_message_limit_trigger_kick (Chat message kick threshold) int 50
[**Physics]
movement_acceleration_air (Acceleration in air) float 2
movement_acceleration_fast (Fast mode acceleration) float 10
movement_speed_walk (Walking speed) float 4
-movement_speed_crouch (Crouch speed) float 1.35
+movement_speed_crouch (Sneaking speed) float 1.35
movement_speed_fast (Fast mode speed) float 20
movement_speed_climb (Climbing speed) float 3
movement_speed_jump (Jumping speed) float 6.5
movement_liquid_fluidity (Liquid fluidity) float 1
movement_liquid_fluidity_smooth (Liquid fluidity smoothing) float 0.5
-movement_liquid_sink (Liquid sink) float 10
+movement_liquid_sink (Liquid sinking speed) float 10
movement_gravity (Gravity) float 9.81
[**Advanced]
# Maximum number of statically stored objects in a block.
max_objects_per_block (Maximum objects per block) int 64
-# See http://www.sqlite.org/pragma.html#pragma_synchronous
+# See https://www.sqlite.org/pragma.html#pragma_synchronous
sqlite_synchronous (Synchronous SQLite) enum 2 0,1,2
-# Length of a server tick and the interval at which objects are generally updated over network.
-dedicated_server_step (Dedicated server step) float 0.1
+# Length of a server tick and the interval at which objects are generally updated over
+# network.
+dedicated_server_step (Dedicated server step) float 0.09
-# Time in between active block management cycles
-active_block_mgmt_interval (Active Block Management interval) float 2.0
+# Length of time between active block management cycles
+active_block_mgmt_interval (Active block management interval) float 2.0
-# Length of time between ABM execution cycles
-abm_interval (Active Block Modifier interval) float 1.0
+# Length of time between Active Block Modifier (ABM) execution cycles
+abm_interval (ABM interval) float 1.0
# Length of time between NodeTimer execution cycles
nodetimer_interval (NodeTimer interval) float 0.2
# Liquid update interval in seconds.
liquid_update (Liquid update tick) float 1.0
-# At this distance the server will aggressively optimize which blocks are sent to clients.
-# Small values potentially improve performance a lot, at the expense of visible rendering glitches.
-# (some blocks will not be rendered under water and in caves, as well as sometimes on land)
-# Setting this to a value greater than max_block_send_distance disables this optimization.
-# Stated in mapblocks (16 nodes)
-block_send_optimize_distance (block send optimize distance) int 4 2
+# At this distance the server will aggressively optimize which blocks are sent to
+# clients.
+# Small values potentially improve performance a lot, at the expense of visible
+# rendering glitches (some blocks will not be rendered under water and in caves,
+# as well as sometimes on land).
+# Setting this to a value greater than max_block_send_distance disables this
+# optimization.
+# Stated in mapblocks (16 nodes).
+block_send_optimize_distance (Block send optimize distance) int 4 2
# If enabled the server will perform map block occlusion culling based on
# on the eye position of the player. This can reduce the number of blocks
# so that the utility of noclip mode is reduced.
server_side_occlusion_culling (Server side occlusion culling) bool true
-[*Mapgen]
+# Restricts the access of certain client-side functions on servers
+# Combine these byteflags below to restrict client-side features:
+# LOAD_CLIENT_MODS: 1 (disable client mods loading)
+# CHAT_MESSAGES: 2 (disable send_chat_message call client-side)
+# READ_ITEMDEFS: 4 (disable get_item_def call client-side)
+# READ_NODEDEFS: 8 (disable get_node_def call client-side)
+# LOOKUP_NODES_LIMIT: 16 (limits get_node call client-side to
+# csm_restriction_noderange)
+csm_restriction_flags (Client side modding restrictions) int 30
+
+# If the CSM restriction for node range is enabled, get_node calls are limited
+# to this distance from the player to the node.
+csm_restriction_noderange (Client side node lookup range restriction) int 0
+
+[*Security]
+
+# Prevent mods from doing insecure things like running shell commands.
+secure.enable_security (Enable mod security) bool true
+
+# Comma-separated list of trusted mods that are allowed to access insecure
+# functions even when mod security is on (via request_insecure_environment()).
+secure.trusted_mods (Trusted mods) string
+
+# Comma-separated list of mods that are allowed to access HTTP APIs, which
+# allow them to upload and download data to/from the internet.
+secure.http_mods (HTTP mods) string
+
+[*Advanced]
+
+[**Profiling]
+# Load the game profiler to collect game profiling data.
+# Provides a /profiler command to access the compiled profile.
+# Useful for mod developers and server operators.
+profiler.load (Load the game profiler) bool false
+
+# The default format in which profiles are being saved,
+# when calling `/profiler save [format]` without format.
+profiler.default_report_format (Default report format) enum txt txt,csv,lua,json,json_pretty
+
+# The file path relative to your worldpath in which profiles will be saved to.
+profiler.report_path (Report path) string ""
+
+[***Instrumentation]
+
+# Instrument the methods of entities on registration.
+instrument.entity (Entity methods) bool true
+
+# Instrument the action function of Active Block Modifiers on registration.
+instrument.abm (Active Block Modifiers) bool true
+
+# Instrument the action function of Loading Block Modifiers on registration.
+instrument.lbm (Loading Block Modifiers) bool true
+
+# Instrument chatcommands on registration.
+instrument.chatcommand (Chatcommands) bool true
+
+# Instrument global callback functions on registration.
+# (anything you pass to a minetest.register_*() function)
+instrument.global_callback (Global callbacks) bool true
+
+[****Advanced]
+# Instrument builtin.
+# This is usually only needed by core/builtin contributors
+instrument.builtin (Builtin) bool false
+
+# Have the profiler instrument itself:
+# * Instrument an empty function.
+# This estimates the overhead, that instrumentation is adding (+1 function call).
+# * Instrument the sampler being used to update the statistics.
+instrument.profiler (Profiler) bool false
+
+[Client and Server]
+
+# Name of the player.
+# When running a server, clients connecting with this name are admins.
+# When starting from the main menu, this is overridden.
+name (Player name) string
+
+# Set the language. Leave empty to use the system language.
+# A restart is required after changing this.
+language (Language) enum ,be,ca,cs,da,de,dv,en,eo,es,et,fr,he,hu,id,it,ja,jbo,ko,ky,lt,ms,nb,nl,pl,pt,pt_BR,ro,ru,sl,sr_Cyrl,sv,sw,tr,uk,zh_CN,zh_TW
+
+
+# Level of logging to be written to debug.txt:
+# - <nothing> (no logging)
+# - none (messages with no level)
+# - error
+# - warning
+# - action
+# - info
+# - verbose
+debug_log_level (Debug log level) enum action ,none,error,warning,action,info,verbose
+
+# IPv6 support.
+enable_ipv6 (IPv6) bool true
+
+[*Advanced]
+
+# Default timeout for cURL, stated in milliseconds.
+# Only has an effect if compiled with cURL.
+curl_timeout (cURL timeout) int 5000
+
+# Limits number of parallel HTTP requests. Affects:
+# - Media fetch if server uses remote_media setting.
+# - Serverlist download and server announcement.
+# - Downloads performed by main menu (e.g. mod manager).
+# Only has an effect if compiled with cURL.
+curl_parallel_limit (cURL parallel limit) int 8
+
+# Maximum time in ms a file download (e.g. a mod download) may take.
+curl_file_download_timeout (cURL file download timeout) int 300000
+
+# Makes DirectX work with LuaJIT. Disable if it causes troubles.
+high_precision_fpu (High-precision FPU) bool true
+
+# Changes the main menu UI:
+# - Full: Multple singleplayer worlds, game choice, texture pack chooser, etc.
+# - Simple: One singleplayer world, no game or texture pack choosers. May be
+# necessary for smaller screens.
+# - Auto: Simple on Android, full on everything else.
+main_menu_style (Main menu style) enum auto auto,full,simple
+
+# Replaces the default main menu with a custom one.
+main_menu_script (Main menu script) string
+
+main_menu_game_mgr (Main menu game manager) int 0
+
+main_menu_mod_mgr (Main menu mod manager) int 1
+
+# Print the engine's profiling data in regular intervals (in seconds).
+# 0 = disable. Useful for developers.
+profiler_print_interval (Engine profiling data print interval) int 0
+
+[Mapgen]
# Name of map generator to be used when creating a new world.
# Creating a world in the main menu will override this.
+# Current stable mapgens: v6, v7 (except floatlands).
+# 'stable' means the terrain shape in an existing world will not
+# be changed in the future. Note that biomes are defined by games
+# and may still change.
mg_name (Mapgen name) enum v7 v5,v6,v7,flat,valleys,fractal,singlenode
# Water surface level of the world.
# Global map generation attributes.
# In Mapgen v6 the 'decorations' flag controls all decorations except trees
# and junglegrass, in all other mapgens this flag controls all decorations.
-# Flags that are not specified in the flag string are not modified from the default.
+# Flags that are not enabled are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
-mg_flags (Mapgen flags) flags caves,dungeons,light,decorations caves,dungeons,light,decorations,nocaves,nodungeons,nolight,nodecorations
+mg_flags (Mapgen flags) flags caves,dungeons,light,decorations,biomes caves,dungeons,light,decorations,biomes,nocaves,nodungeons,nolight,nodecorations,nobiomes
# Whether dungeons occasionally project from the terrain.
projecting_dungeons (Projecting dungeons) bool true
-[**Advanced]
-
-# Size of chunks to be generated at once by mapgen, stated in mapblocks (16 nodes).
-chunksize (Chunk size) int 5
-
-# Dump the mapgen debug infos.
-enable_mapgen_debug_info (Mapgen debug) bool false
-
-# Maximum number of blocks that can be queued for loading.
-emergequeue_limit_total (Absolute limit of emerge queues) int 256
-
-# Maximum number of blocks to be queued that are to be loaded from file.
-# Set to blank for an appropriate amount to be chosen automatically.
-emergequeue_limit_diskonly (Limit of emerge queues on disk) int 32
-
-# Maximum number of blocks to be queued that are to be generated.
-# Set to blank for an appropriate amount to be chosen automatically.
-emergequeue_limit_generate (Limit of emerge queues to generate) int 32
-
-# Number of emerge threads to use. Make this field blank, or increase this number
-# to use multiple threads. On multiprocessor systems, this will improve mapgen speed greatly
-# at the cost of slightly buggy caves.
-num_emerge_threads (Number of emerge threads) int 1
-
-[***Biome API temperature and humidity noise parameters]
+[*Biome API temperature and humidity noise parameters]
# Temperature variation for biomes.
-mg_biome_np_heat (Heat noise) noise_params 50, 50, (1000, 1000, 1000), 5349, 3, 0.5, 2.0
+mg_biome_np_heat (Heat noise) noise_params_2d 50, 50, (1000, 1000, 1000), 5349, 3, 0.5, 2.0, eased
# Small-scale temperature variation for blending biomes on borders.
-mg_biome_np_heat_blend (Heat blend noise) noise_params 0, 1.5, (8, 8, 8), 13, 2, 1.0, 2.0
+mg_biome_np_heat_blend (Heat blend noise) noise_params_2d 0, 1.5, (8, 8, 8), 13, 2, 1.0, 2.0, eased
# Humidity variation for biomes.
-mg_biome_np_humidity (Humidity noise) noise_params 50, 50, (1000, 1000, 1000), 842, 3, 0.5, 2.0
+mg_biome_np_humidity (Humidity noise) noise_params_2d 50, 50, (1000, 1000, 1000), 842, 3, 0.5, 2.0, eased
# Small-scale humidity variation for blending biomes on borders.
-mg_biome_np_humidity_blend (Humidity blend noise) noise_params 0, 1.5, (8, 8, 8), 90003, 2, 1.0, 2.0
+mg_biome_np_humidity_blend (Humidity blend noise) noise_params_2d 0, 1.5, (8, 8, 8), 90003, 2, 1.0, 2.0, eased
-[***Mapgen v5]
+[*Mapgen V5]
# Map generation attributes specific to Mapgen v5.
-# Flags that are not specified in the flag string are not modified from the default.
+# Flags that are not enabled are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
-mgv5_spflags (Mapgen v5 specific flags) flags caverns caverns,nocaverns
+mgv5_spflags (Mapgen V5 specific flags) flags caverns caverns,nocaverns
# Controls width of tunnels, a smaller value creates wider tunnels.
-mgv5_cave_width (Cave width) float 0.125
+mgv5_cave_width (Cave width) float 0.09
# Y of upper limit of large caves.
mgv5_large_cave_depth (Large cave depth) int -256
# Defines full size of caverns, smaller values create larger caverns.
mgv5_cavern_threshold (Cavern threshold) float 0.7
+# Lower Y limit of dungeons.
+mgv5_dungeon_ymin (Dungeon minimum Y) int -31000
+
+# Upper Y limit of dungeons.
+mgv5_dungeon_ymax (Dungeon maximum Y) int 31000
+
+[**Noises]
+
# Variation of biome filler depth.
-mgv5_np_filler_depth (Filler depth noise) noise_params 0, 1, (150, 150, 150), 261, 4, 0.7, 2.0
+mgv5_np_filler_depth (Filler depth noise) noise_params_2d 0, 1, (150, 150, 150), 261, 4, 0.7, 2.0, eased
# Variation of terrain vertical scale.
# When noise is < -0.55 terrain is near-flat.
-mgv5_np_factor (Factor noise) noise_params 0, 1, (250, 250, 250), 920381, 3, 0.45, 2.0
+mgv5_np_factor (Factor noise) noise_params_2d 0, 1, (250, 250, 250), 920381, 3, 0.45, 2.0, eased
# Y-level of average terrain surface.
-mgv5_np_height (Height noise) noise_params 0, 10, (250, 250, 250), 84174, 4, 0.5, 2.0
+mgv5_np_height (Height noise) noise_params_2d 0, 10, (250, 250, 250), 84174, 4, 0.5, 2.0, eased
-# First of 2 3D noises that together define tunnels.
-mgv5_np_cave1 (Cave1 noise) noise_params 0, 12, (50, 50, 50), 52534, 4, 0.5, 2.0
+# First of two 3D noises that together define tunnels.
+mgv5_np_cave1 (Cave1 noise) noise_params_3d 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-# Second of 2 3D noises that together define tunnels.
-mgv5_np_cave2 (Cave2 noise) noise_params 0, 12, (50, 50, 50), 10325, 4, 0.5, 2.0
+# Second of two 3D noises that together define tunnels.
+mgv5_np_cave2 (Cave2 noise) noise_params_3d 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
# 3D noise defining giant caverns.
-mgv5_np_cavern (Cavern noise) noise_params 0, 1, (384, 128, 384), 723, 5, 0.63, 2.0
+mgv5_np_cavern (Cavern noise) noise_params_3d 0, 1, (384, 128, 384), 723, 5, 0.63, 2.0
-# TODO
-# Noise parameters in group format, unsupported by advanced settings
-# menu but settable in minetest.conf.
-# See documentation of noise parameter formats in minetest.conf.example.
# 3D noise defining terrain.
-#mgv5_np_ground = {
-# offset = 0
-# scale = 40
-# spread = (80, 80, 80)
-# seed = 983240
-# octaves = 4
-# persistence = 0.55
-# lacunarity = 2.0
-# flags = "eased"
-#}
-
-[***Mapgen v6]
+mgv5_np_ground (Ground noise) noise_params_3d 0, 40, (80, 80, 80), 983240, 4, 0.55, 2.0, eased
+
+[*Mapgen V6]
# Map generation attributes specific to Mapgen v6.
# The 'snowbiomes' flag enables the new 5 biome system.
# When the new biome system is enabled jungles are automatically enabled and
# the 'jungles' flag is ignored.
-# Flags that are not specified in the flag string are not modified from the default.
+# Flags that are not enabled are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
-mgv6_spflags (Mapgen v6 specific flags) flags jungles,biomeblend,mudflow,snowbiomes,trees jungles,biomeblend,mudflow,snowbiomes,flat,trees,nojungles,nobiomeblend,nomudflow,nosnowbiomes,noflat,notrees
+mgv6_spflags (Mapgen V6 specific flags) flags jungles,biomeblend,mudflow,snowbiomes,trees jungles,biomeblend,mudflow,snowbiomes,flat,trees,nojungles,nobiomeblend,nomudflow,nosnowbiomes,noflat,notrees
# Deserts occur when np_biome exceeds this value.
# When the new biome system is enabled, this is ignored.
# Sandy beaches occur when np_beach exceeds this value.
mgv6_freq_beach (Beach noise threshold) float 0.15
-# Y-level of lower terrain and lakebeds.
-mgv6_np_terrain_base (Terrain base noise) noise_params -4, 20, (250, 250, 250), 82341, 5, 0.6, 2.0
+# Lower Y limit of dungeons.
+mgv6_dungeon_ymin (Dungeon minimum Y) int -31000
+
+# Upper Y limit of dungeons.
+mgv6_dungeon_ymax (Dungeon maximum Y) int 31000
+
+[**Noises]
-# Y-level of higher (cliff-top) terrain.
-mgv6_np_terrain_higher (Terrain higher noise) noise_params 20, 16, (500, 500, 500), 85039, 5, 0.6, 2.0
+# Y-level of lower terrain and seabed.
+mgv6_np_terrain_base (Terrain base noise) noise_params_2d -4, 20, (250, 250, 250), 82341, 5, 0.6, 2.0, eased
+
+# Y-level of higher terrain that creates cliffs.
+mgv6_np_terrain_higher (Terrain higher noise) noise_params_2d 20, 16, (500, 500, 500), 85039, 5, 0.6, 2.0, eased
# Varies steepness of cliffs.
-mgv6_np_steepness (Steepness noise) noise_params 0.85, 0.5, (125, 125, 125), -932, 5, 0.7, 2.0
+mgv6_np_steepness (Steepness noise) noise_params_2d 0.85, 0.5, (125, 125, 125), -932, 5, 0.7, 2.0, eased
-# Defines areas of 'terrain_higher' (cliff-top terrain).
-mgv6_np_height_select (Height select noise) noise_params 0.5, 1, (250, 250, 250), 4213, 5, 0.69, 2.0
+# Defines distribution of higher terrain.
+mgv6_np_height_select (Height select noise) noise_params_2d 0.5, 1, (250, 250, 250), 4213, 5, 0.69, 2.0, eased
# Varies depth of biome surface nodes.
-mgv6_np_mud (Mud noise) noise_params 4, 2, (200, 200, 200), 91013, 3, 0.55, 2.0
+mgv6_np_mud (Mud noise) noise_params_2d 4, 2, (200, 200, 200), 91013, 3, 0.55, 2.0, eased
# Defines areas with sandy beaches.
-mgv6_np_beach (Beach noise) noise_params 0, 1, (250, 250, 250), 59420, 3, 0.50, 2.0
+mgv6_np_beach (Beach noise) noise_params_2d 0, 1, (250, 250, 250), 59420, 3, 0.50, 2.0, eased
# Temperature variation for biomes.
-mgv6_np_biome (Biome noise) noise_params 0, 1, (500, 500, 500), 9130, 3, 0.50, 2.0
+mgv6_np_biome (Biome noise) noise_params_2d 0, 1, (500, 500, 500), 9130, 3, 0.50, 2.0, eased
# Variation of number of caves.
-mgv6_np_cave (Cave noise) noise_params 6, 6, (250, 250, 250), 34329, 3, 0.50, 2.0
+mgv6_np_cave (Cave noise) noise_params_2d 6, 6, (250, 250, 250), 34329, 3, 0.50, 2.0, eased
# Humidity variation for biomes.
-mgv6_np_humidity (Humidity noise) noise_params 0.5, 0.5, (500, 500, 500), 72384, 3, 0.50, 2.0
+mgv6_np_humidity (Humidity noise) noise_params_2d 0.5, 0.5, (500, 500, 500), 72384, 3, 0.50, 2.0, eased
# Defines tree areas and tree density.
-mgv6_np_trees (Trees noise) noise_params 0, 1, (125, 125, 125), 2, 4, 0.66, 2.0
+mgv6_np_trees (Trees noise) noise_params_2d 0, 1, (125, 125, 125), 2, 4, 0.66, 2.0, eased
# Defines areas where trees have apples.
-mgv6_np_apple_trees (Apple trees noise) noise_params 0, 1, (100, 100, 100), 342902, 3, 0.45, 2.0
+mgv6_np_apple_trees (Apple trees noise) noise_params_2d 0, 1, (100, 100, 100), 342902, 3, 0.45, 2.0, eased
-[***Mapgen v7]
+[*Mapgen V7]
# Map generation attributes specific to Mapgen v7.
-# The 'ridges' flag enables the rivers.
-# Floatlands are currently experimental and subject to change.
-# Flags that are not specified in the flag string are not modified from the default.
+# 'ridges' enables the rivers.
+# Flags that are not enabled are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
-mgv7_spflags (Mapgen v7 specific flags) flags mountains,ridges,nofloatlands,caverns mountains,ridges,floatlands,caverns,nomountains,noridges,nofloatlands,nocaverns
+mgv7_spflags (Mapgen V7 specific flags) flags mountains,ridges,nofloatlands,caverns mountains,ridges,floatlands,caverns,nomountains,noridges,nofloatlands,nocaverns
+
+# Y of mountain density gradient zero level. Used to shift mountains vertically.
+mgv7_mount_zero_level (Mountain zero level) int 0
# Controls width of tunnels, a smaller value creates wider tunnels.
mgv7_cave_width (Cave width) float 0.09
# Y of upper limit of lava in large caves.
mgv7_lava_depth (Lava depth) int -256
-# Controls the density of floatland mountain terrain.
-# Is an offset added to the 'np_mountain' noise value.
+# Controls the density of mountain-type floatlands.
+# Is a noise offset added to the 'mgv7_np_mountain' noise value.
mgv7_float_mount_density (Floatland mountain density) float 0.6
-# Typical maximum height, above and below midpoint, of floatland mountain terrain.
+# Typical maximum height, above and below midpoint, of floatland mountains.
mgv7_float_mount_height (Floatland mountain height) float 128.0
+# Alters how mountain-type floatlands taper above and below midpoint.
+mgv7_float_mount_exponent (Floatland mountain exponent) float 0.75
+
# Y-level of floatland midpoint and lake surface.
mgv7_floatland_level (Floatland level) int 1280
# Defines full size of caverns, smaller values create larger caverns.
mgv7_cavern_threshold (Cavern threshold) float 0.7
-# Y-level of higher (cliff-top) terrain.
-mgv7_np_terrain_base (Terrain base noise) noise_params 4, 70, (600, 600, 600), 82341, 5, 0.6, 2.0
+# Lower Y limit of dungeons.
+mgv7_dungeon_ymin (Dungeon minimum Y) int -31000
+
+# Upper Y limit of dungeons.
+mgv7_dungeon_ymax (Dungeon maximum Y) int 31000
-# Y-level of lower terrain and lakebeds.
-mgv7_np_terrain_alt (Terrain alt noise) noise_params 4, 25, (600, 600, 600), 5934, 5, 0.6, 2.0
+[**Noises]
+
+# Y-level of higher terrain that creates cliffs.
+mgv7_np_terrain_base (Terrain base noise) noise_params_2d 4, 70, (600, 600, 600), 82341, 5, 0.6, 2.0, eased
+
+# Y-level of lower terrain and seabed.
+mgv7_np_terrain_alt (Terrain alternative noise) noise_params_2d 4, 25, (600, 600, 600), 5934, 5, 0.6, 2.0, eased
# Varies roughness of terrain.
# Defines the 'persistence' value for terrain_base and terrain_alt noises.
-mgv7_np_terrain_persist (Terrain persistence noise) noise_params 0.6, 0.1, (2000, 2000, 2000), 539, 3, 0.6, 2.0
+mgv7_np_terrain_persist (Terrain persistence noise) noise_params_2d 0.6, 0.1, (2000, 2000, 2000), 539, 3, 0.6, 2.0, eased
-# Defines areas of higher (cliff-top) terrain and affects steepness of cliffs.
-mgv7_np_height_select (Height select noise) noise_params -8, 16, (500, 500, 500), 4213, 6, 0.7, 2.0
+# Defines distribution of higher terrain and steepness of cliffs.
+mgv7_np_height_select (Height select noise) noise_params_2d -8, 16, (500, 500, 500), 4213, 6, 0.7, 2.0, eased
# Variation of biome filler depth.
-mgv7_np_filler_depth (Filler depth noise) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
+mgv7_np_filler_depth (Filler depth noise) noise_params_2d 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0, eased
# Variation of maximum mountain height (in nodes).
-mgv7_np_mount_height (Mountain height noise) noise_params 256, 112, (1000, 1000, 1000), 72449, 3, 0.6, 2.0
+mgv7_np_mount_height (Mountain height noise) noise_params_2d 256, 112, (1000, 1000, 1000), 72449, 3, 0.6, 2.0, eased
# Defines large-scale river channel structure.
-mgv7_np_ridge_uwater (Ridge underwater noise) noise_params 0, 1, (1000, 1000, 1000), 85039, 5, 0.6, 2.0
+mgv7_np_ridge_uwater (Ridge underwater noise) noise_params_2d 0, 1, (1000, 1000, 1000), 85039, 5, 0.6, 2.0, eased
# Defines areas of floatland smooth terrain.
# Smooth floatlands occur when noise > 0.
-mgv7_np_floatland_base (Floatland base noise) noise_params -0.6, 1.5, (600, 600, 600), 114, 5, 0.6, 2.0
+mgv7_np_floatland_base (Floatland base noise) noise_params_2d -0.6, 1.5, (600, 600, 600), 114, 5, 0.6, 2.0, eased
# Variation of hill height and lake depth on floatland smooth terrain.
-mgv7_np_float_base_height (Floatland base height noise) noise_params 48, 24, (300, 300, 300), 907, 4, 0.7, 2.0
+mgv7_np_float_base_height (Floatland base height noise) noise_params_2d 48, 24, (300, 300, 300), 907, 4, 0.7, 2.0, eased
# 3D noise defining mountain structure and height.
# Also defines structure of floatland mountain terrain.
-mgv7_np_mountain (Mountain noise) noise_params -0.6, 1, (250, 350, 250), 5333, 5, 0.63, 2.0
+mgv7_np_mountain (Mountain noise) noise_params_3d -0.6, 1, (250, 350, 250), 5333, 5, 0.63, 2.0
# 3D noise defining structure of river canyon walls.
-mgv7_np_ridge (Ridge noise) noise_params 0, 1, (100, 100, 100), 6467, 4, 0.75, 2.0
+mgv7_np_ridge (Ridge noise) noise_params_3d 0, 1, (100, 100, 100), 6467, 4, 0.75, 2.0
# 3D noise defining giant caverns.
-mgv7_np_cavern (Cavern noise) noise_params 0, 1, (384, 128, 384), 723, 5, 0.63, 2.0
+mgv7_np_cavern (Cavern noise) noise_params_3d 0, 1, (384, 128, 384), 723, 5, 0.63, 2.0
-# First of 2 3D noises that together define tunnels.
-mgv7_np_cave1 (Cave1 noise) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
+# First of two 3D noises that together define tunnels.
+mgv7_np_cave1 (Cave1 noise) noise_params_3d 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-# Second of 2 3D noises that together define tunnels.
-mgv7_np_cave2 (Cave2 noise) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
+# Second of two 3D noises that together define tunnels.
+mgv7_np_cave2 (Cave2 noise) noise_params_3d 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
-[***Mapgen carpathian]
+[*Mapgen Carpathian]
# Map generation attributes specific to Mapgen Carpathian.
-# Flags that are not specified in the flag string are not modified from the default.
+# Flags that are not enabled are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
mgcarpathian_spflags (Mapgen Carpathian specific flags) flags caverns caverns,nocaverns
+# Defines the base ground level.
+mgcarpathian_base_level (Base ground level) float 12.0
+
# Controls width of tunnels, a smaller value creates wider tunnels.
mgcarpathian_cave_width (Cave width) float 0.09
# Defines full size of caverns, smaller values create larger caverns.
mgcarpathian_cavern_threshold (Cavern threshold) float 0.7
-# 2D noise that defines the base ground level.
-mgcarpathian_np_base (Base ground noise) noise_params 12, 1, (2557, 2557, 2557), 6538, 4, 0.8, 0.5
+# Lower Y limit of dungeons.
+mgcarpathian_dungeon_ymin (Dungeon minimum Y) int -31000
+
+# Upper Y limit of dungeons.
+mgcarpathian_dungeon_ymax (Dungeon maximum Y) int 31000
+
+[**Noises]
# Variation of biome filler depth.
-mgcarpathian_np_filler_depth (Filler depth noise) noise_params 0, 1, (128, 128, 128), 261, 3, 0.7, 2.0
+mgcarpathian_np_filler_depth (Filler depth noise) noise_params_2d 0, 1, (128, 128, 128), 261, 3, 0.7, 2.0, eased
-# First of 4 3D noises that together define hill/mountain range height.
-mgcarpathian_np_height1 (Hilliness1 noise) noise_params 0, 5, (251, 251, 251), 9613, 5, 0.5, 2.0
+# First of 4 2D noises that together define hill/mountain range height.
+mgcarpathian_np_height1 (Hilliness1 noise) noise_params_2d 0, 5, (251, 251, 251), 9613, 5, 0.5, 2.0, eased
-# Second of 4 3D noises that together define hill/mountain range height.
-mgcarpathian_np_height2 (Hilliness2 noise) noise_params 0, 5, (383, 383, 383), 1949, 5, 0.5, 2.0
+# Second of 4 2D noises that together define hill/mountain range height.
+mgcarpathian_np_height2 (Hilliness2 noise) noise_params_2d 0, 5, (383, 383, 383), 1949, 5, 0.5, 2.0, eased
-# Third of 4 3D noises that together define hill/mountain range height.
-mgcarpathian_np_height3 (Hilliness3 noise) noise_params 0, 5, (509, 509, 509), 3211, 5, 0.5, 2.0
+# Third of 4 2D noises that together define hill/mountain range height.
+mgcarpathian_np_height3 (Hilliness3 noise) noise_params_2d 0, 5, (509, 509, 509), 3211, 5, 0.5, 2.0, eased
-# Fourth of 4 3D noises that together define hill/mountain range height.
-mgcarpathian_np_height4 (Hilliness4 noise) noise_params 0, 5, (631, 631, 631), 1583, 5, 0.5, 2.0
+# Fourth of 4 2D noises that together define hill/mountain range height.
+mgcarpathian_np_height4 (Hilliness4 noise) noise_params_2d 0, 5, (631, 631, 631), 1583, 5, 0.5, 2.0, eased
# 2D noise that controls the size/occurance of rolling hills.
-mgcarpathian_np_hills_terrain (Rolling hills spread noise) noise_params 1, 1, (1301, 1301, 1301), 1692, 3, 0.5, 2.0
+mgcarpathian_np_hills_terrain (Rolling hills spread noise) noise_params_2d 1, 1, (1301, 1301, 1301), 1692, 3, 0.5, 2.0, eased
# 2D noise that controls the size/occurance of ridged mountain ranges.
-mgcarpathian_np_ridge_terrain (Ridge mountain spread noise) noise_params 1, 1, (1889, 1889, 1889), 3568, 3, 0.5, 2.0
+mgcarpathian_np_ridge_terrain (Ridge mountain spread noise) noise_params_2d 1, 1, (1889, 1889, 1889), 3568, 3, 0.5, 2.0, eased
# 2D noise that controls the size/occurance of step mountain ranges.
-mgcarpathian_np_step_terrain (Step mountain spread noise) noise_params 1, 1, (1889, 1889, 1889), 4157, 3, 0.5, 2.0
+mgcarpathian_np_step_terrain (Step mountain spread noise) noise_params_2d 1, 1, (1889, 1889, 1889), 4157, 3, 0.5, 2.0, eased
# 2D noise that controls the shape/size of rolling hills.
-mgcarpathian_np_hills (Rolling hill size noise) noise_params 0, 3, (257, 257, 257), 6604, 6, 0.5, 2.0
+mgcarpathian_np_hills (Rolling hill size noise) noise_params_2d 0, 3, (257, 257, 257), 6604, 6, 0.5, 2.0, eased
# 2D noise that controls the shape/size of ridged mountains.
-mgcarpathian_np_ridge_mnt (Ridged mountain size noise) noise_params 0, 12, (743, 743, 743), 5520, 6, 0.7, 2.0
+mgcarpathian_np_ridge_mnt (Ridged mountain size noise) noise_params_2d 0, 12, (743, 743, 743), 5520, 6, 0.7, 2.0, eased
# 2D noise that controls the shape/size of step mountains.
-mgcarpathian_np_step_mnt (Step mountain size noise) noise_params 0, 8, (509, 509, 509), 2590, 6, 0.6, 2.0
+mgcarpathian_np_step_mnt (Step mountain size noise) noise_params_2d 0, 8, (509, 509, 509), 2590, 6, 0.6, 2.0, eased
# 3D noise for mountain overhangs, cliffs, etc. Usually small variations.
-mgcarpathian_np_mnt_var (Mountain variation noise) noise_params 0, 1, (499, 499, 499), 2490, 5, 0.6, 2.0
+mgcarpathian_np_mnt_var (Mountain variation noise) noise_params_3d 0, 1, (499, 499, 499), 2490, 5, 0.55, 2.0
-# First of 2 3D noises that together define tunnels.
-mgcarpathian_np_cave1 (Cave1 noise) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
+# First of two 3D noises that together define tunnels.
+mgcarpathian_np_cave1 (Cave1 noise) noise_params_3d 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-# Second of 2 3D noises that together define tunnels.
-mgcarpathian_np_cave2 (Cave2 noise) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
+# Second of two 3D noises that together define tunnels.
+mgcarpathian_np_cave2 (Cave2 noise) noise_params_3d 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
# 3D noise defining giant caverns.
-mgcarpathian_np_cavern (Cavern noise) noise_params 0, 1, (384, 128, 384), 723, 5, 0.63, 2.0
+mgcarpathian_np_cavern (Cavern noise) noise_params_3d 0, 1, (384, 128, 384), 723, 5, 0.63, 2.0
-[***Mapgen flat]
+[*Mapgen Flat]
# Map generation attributes specific to Mapgen flat.
# Occasional lakes and hills can be added to the flat world.
-# Flags that are not specified in the flag string are not modified from the default.
+# Flags that are not enabled are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
-mgflat_spflags (Mapgen flat specific flags) flags nolakes,nohills lakes,hills,nolakes,nohills
+mgflat_spflags (Mapgen Flat specific flags) flags nolakes,nohills lakes,hills,nolakes,nohills
# Y of flat ground.
mgflat_ground_level (Ground level) int 8
# Controls steepness/height of hills.
mgflat_hill_steepness (Hill steepness) float 64.0
+# Lower Y limit of dungeons.
+mgflat_dungeon_ymin (Dungeon minimum Y) int -31000
+
+# Upper Y limit of dungeons.
+mgflat_dungeon_ymax (Dungeon maximum Y) int 31000
+
+[**Noises]
+
# Defines location and terrain of optional hills and lakes.
-mgflat_np_terrain (Terrain noise) noise_params 0, 1, (600, 600, 600), 7244, 5, 0.6, 2.0
+mgflat_np_terrain (Terrain noise) noise_params_2d 0, 1, (600, 600, 600), 7244, 5, 0.6, 2.0, eased
# Variation of biome filler depth.
-mgflat_np_filler_depth (Filler depth noise) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
+mgflat_np_filler_depth (Filler depth noise) noise_params_2d 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0, eased
-# First of 2 3D noises that together define tunnels.
-mgflat_np_cave1 (Cave1 noise) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
+# First of two 3D noises that together define tunnels.
+mgflat_np_cave1 (Cave1 noise) noise_params_3d 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-# Second of 2 3D noises that together define tunnels.
-mgflat_np_cave2 (Cave2 noise) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
+# Second of two 3D noises that together define tunnels.
+mgflat_np_cave2 (Cave2 noise) noise_params_3d 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
-[***Mapgen fractal]
+[*Mapgen Fractal]
# Controls width of tunnels, a smaller value creates wider tunnels.
mgfractal_cave_width (Cave width) float 0.09
# Y of upper limit of lava in large caves.
mgfractal_lava_depth (Lava depth) int -256
-# Choice of 18 fractals from 9 formulas.
+# Lower Y limit of dungeons.
+mgfractal_dungeon_ymin (Dungeon minimum Y) int -31000
+
+# Upper Y limit of dungeons.
+mgfractal_dungeon_ymax (Dungeon maximum Y) int 31000
+
+# Selects one of 18 fractal types.
# 1 = 4D "Roundy" mandelbrot set.
# 2 = 4D "Roundy" julia set.
# 3 = 4D "Squarry" mandelbrot set.
mgfractal_fractal (Fractal type) int 1 1 18
# Iterations of the recursive function.
-# Controls the amount of fine detail.
+# Increasing this increases the amount of fine detail, but also
+# increases processing load.
+# At iterations = 20 this mapgen has a similar load to mapgen V7.
mgfractal_iterations (Iterations) int 11
-# Approximate (X,Y,Z) scale of fractal in nodes.
+# (X,Y,Z) scale of fractal in nodes.
+# Actual fractal size will be 2 to 3 times larger.
+# These numbers can be made very large, the fractal does
+# not have to fit inside the world.
+# Increase these to 'zoom' into the detail of the fractal.
+# Default is for a vertically-squashed shape suitable for
+# an island, set all 3 numbers equal for the raw shape.
mgfractal_scale (Scale) v3f (4096.0, 1024.0, 4096.0)
# (X,Y,Z) offset of fractal from world centre in units of 'scale'.
-# Used to move a suitable spawn area of low land close to (0, 0).
-# The default is suitable for mandelbrot sets, it needs to be edited for julia sets.
+# Can be used to move a desired point to (0, 0) to create a
+# suitable spawn point, or to allow 'zooming in' on a desired
+# point by increasing 'scale'.
+# The default is tuned for a suitable spawn point for mandelbrot
+# sets with default parameters, it may need altering in other
+# situations.
# Range roughly -2 to 2. Multiply by 'scale' for offset in nodes.
mgfractal_offset (Offset) v3f (1.79, 0.0, 0.0)
# W co-ordinate of the generated 3D slice of a 4D fractal.
# Determines which 3D slice of the 4D shape is generated.
+# Alters the shape of the fractal.
# Has no effect on 3D fractals.
# Range roughly -2 to 2.
mgfractal_slice_w (Slice w) float 0.0
-# Julia set only: X component of hypercomplex constant determining julia shape.
+# Julia set only.
+# X component of hypercomplex constant.
+# Alters the shape of the fractal.
# Range roughly -2 to 2.
mgfractal_julia_x (Julia x) float 0.33
-# Julia set only: Y component of hypercomplex constant determining julia shape.
+# Julia set only.
+# Y component of hypercomplex constant.
+# Alters the shape of the fractal.
# Range roughly -2 to 2.
mgfractal_julia_y (Julia y) float 0.33
-# Julia set only: Z component of hypercomplex constant determining julia shape.
+# Julia set only.
+# Z component of hypercomplex constant.
+# Alters the shape of the fractal.
# Range roughly -2 to 2.
mgfractal_julia_z (Julia z) float 0.33
-# Julia set only: W component of hypercomplex constant determining julia shape.
+# Julia set only.
+# W component of hypercomplex constant.
+# Alters the shape of the fractal.
# Has no effect on 3D fractals.
# Range roughly -2 to 2.
mgfractal_julia_w (Julia w) float 0.33
+[**Noises]
+
# Y-level of seabed.
-mgfractal_np_seabed (Seabed noise) noise_params -14, 9, (600, 600, 600), 41900, 5, 0.6, 2.0
+mgfractal_np_seabed (Seabed noise) noise_params_2d -14, 9, (600, 600, 600), 41900, 5, 0.6, 2.0, eased
# Variation of biome filler depth.
-mgfractal_np_filler_depth (Filler depth noise) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
-
-# First of 2 3D noises that together define tunnels.
-mgfractal_np_cave1 (Cave1 noise) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
+mgfractal_np_filler_depth (Filler depth noise) noise_params_2d 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0, eased
-# Second of 2 3D noises that together define tunnels.
-mgfractal_np_cave2 (Cave2 noise) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
+# First of two 3D noises that together define tunnels.
+mgfractal_np_cave1 (Cave1 noise) noise_params_3d 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-# Mapgen Valleys parameters
-[***Mapgen Valleys]
+# Second of two 3D noises that together define tunnels.
+mgfractal_np_cave2 (Cave2 noise) noise_params_3d 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
-# General parameters
-[****General]
+[*Mapgen Valleys]
# Map generation attributes specific to Mapgen Valleys.
-# 'altitude_chill' makes higher elevations colder, which may cause biome issues.
-# 'humid_rivers' modifies the humidity around rivers and in areas where water would tend to pool,
-# it may interfere with delicately adjusted biomes.
-# Flags that are not specified in the flag string are not modified from the default.
-# Flags starting with 'no' are used to explicitly disable them.
-mg_valleys_spflags (Valleys C Flags) flags altitude_chill,humid_rivers altitude_chill,noaltitude_chill,humid_rivers,nohumid_rivers
-
-# The altitude at which temperature drops by 20C
-mgvalleys_altitude_chill (Altitude Chill) int 90
-
-# Depth below which you'll find large caves.
+# 'altitude_chill': Reduces heat with altitude.
+# 'humid_rivers': Increases humidity around rivers and where water pools.
+# 'vary_river_depth': If enabled, low humidity and high heat causes rivers
+# to become shallower and occasionally dry.
+# 'altitude_dry': Reduces humidity with altitude.
+mgvalleys_spflags (Mapgen Valleys specific flags) flags altitude_chill,humid_rivers,vary_river_depth,altitude_dry altitude_chill,noaltitude_chill,humid_rivers,nohumid_rivers,vary_river_depth,novary_river_depth,altitude_dry,noaltitude_dry
+
+# The vertical distance over which heat drops by 20 if 'altitude_chill' is
+# enabled. Also the vertical distance over which humidity drops by 10 if
+# 'altitude_dry' is enabled.
+mgvalleys_altitude_chill (Altitude chill) int 90
+
+# Depth below which you'll find large caves.
mgvalleys_large_cave_depth (Large cave depth) int -33
-# Creates unpredictable lava features in caves.
-# These can make mining difficult. Zero disables them. (0-10)
-mgvalleys_lava_features (Lava Features) int 0
+# Y of upper limit of lava in large caves.
+mgvalleys_lava_depth (Lava depth) int 1
+
+# Depth below which you'll find giant caverns.
+mgvalleys_cavern_limit (Cavern upper limit) int -256
-# Depth below which you'll find massive caves.
-mgvalleys_massive_cave_depth (Massive cave depth) int -256
+# Y-distance over which caverns expand to full size.
+mgvalleys_cavern_taper (Cavern taper) int 192
-# How deep to make rivers
-mgvalleys_river_depth (River Depth) int 4
+# Defines full size of caverns, smaller values create larger caverns.
+mgvalleys_cavern_threshold (Cavern threshold) float 0.6
-# How wide to make rivers
-mgvalleys_river_size (River Size) int 5
+# How deep to make rivers.
+mgvalleys_river_depth (River depth) int 4
-# Creates unpredictable water features in caves.
-# These can make mining difficult. Zero disables them. (0-10)
-mgvalleys_water_features (Water Features) int 0
+# How wide to make rivers.
+mgvalleys_river_size (River size) int 5
# Controls width of tunnels, a smaller value creates wider tunnels.
mgvalleys_cave_width (Cave width) float 0.09
-# Noise parameters
-[****Noises]
-
-# Caves and tunnels form at the intersection of the two noises
-mgvalleys_np_cave1 (Cave noise #1) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-
-# Caves and tunnels form at the intersection of the two noises
-mgvalleys_np_cave2 (Cave noise #2) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
+# Lower Y limit of dungeons.
+mgvalleys_dungeon_ymin (Dungeon minimum Y) int -31000
-# The depth of dirt or other filler
-mgvalleys_np_filler_depth (Filler Depth) noise_params 0, 1.2, (256, 256, 256), 1605, 3, 0.5, 2.0
+# Upper Y limit of dungeons.
+mgvalleys_dungeon_ymax (Dungeon maximum Y) int 63
-# Massive caves form here.
-mgvalleys_np_massive_caves (Massive cave noise) noise_params 0, 1, (768, 256, 768), 59033, 6, 0.63, 2.0
+[**Noises]
-# River noise -- rivers occur close to zero
-mgvalleys_np_rivers (River Noise) noise_params 0, 1, (256, 256, 256), -6050, 5, 0.6, 2.0
+# First of two 3D noises that together define tunnels.
+mgvalleys_np_cave1 (Cave noise #1) noise_params_3d 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
-# Base terrain height
-mgvalleys_np_terrain_height (Terrain Height) noise_params -10, 50, (1024, 1024, 1024), 5202, 6, 0.4, 2.0
+# Second of two 3D noises that together define tunnels.
+mgvalleys_np_cave2 (Cave noise #2) noise_params_3d 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
-# Raises terrain to make valleys around the rivers
-mgvalleys_np_valley_depth (Valley Depth) noise_params 5, 4, (512, 512, 512), -1914, 1, 1.0, 2.0
+# The depth of dirt or other biome filler node.
+mgvalleys_np_filler_depth (Filler depth) noise_params_2d 0, 1.2, (256, 256, 256), 1605, 3, 0.5, 2.0, eased
-# Slope and fill work together to modify the heights
-mgvalleys_np_inter_valley_fill (Valley Fill) noise_params 0, 1, (256, 512, 256), 1993, 6, 0.8, 2.0
-
-# Amplifies the valleys
-mgvalleys_np_valley_profile (Valley Profile) noise_params 0.6, 0.5, (512, 512, 512), 777, 1, 1.0, 2.0
-
-# Slope and fill work together to modify the heights
-mgvalleys_np_inter_valley_slope (Valley Slope) noise_params 0.5, 0.5, (128, 128, 128), 746, 1, 1.0, 2.0
-
-[*Security]
-
-# Prevent mods from doing insecure things like running shell commands.
-secure.enable_security (Enable mod security) bool true
-
-# Comma-separated list of trusted mods that are allowed to access insecure
-# functions even when mod security is on (via request_insecure_environment()).
-secure.trusted_mods (Trusted mods) string
-
-# Comma-separated list of mods that are allowed to access HTTP APIs, which
-# allow them to upload and download data to/from the internet.
-secure.http_mods (HTTP Mods) string
-
-[*Advanced]
-
-[**Profiling]
-# Load the game profiler to collect game profiling data.
-# Provides a /profiler command to access the compiled profile.
-# Useful for mod developers and server operators.
-profiler.load (Load the game profiler) bool false
-
-# The default format in which profiles are being saved,
-# when calling `/profiler save [format]` without format.
-profiler.default_report_format (Default report format) enum txt txt,csv,lua,json,json_pretty
-
-# The file path relative to your worldpath in which profiles will be saved to.
-profiler.report_path (Report path) string ""
-
-[***Instrumentation]
-
-# Instrument the methods of entities on registration.
-instrument.entity (Entity methods) bool true
-
-# Instrument the action function of Active Block Modifiers on registration.
-instrument.abm (Active Block Modifiers) bool true
-
-# Instrument the action function of Loading Block Modifiers on registration.
-instrument.lbm (Loading Block Modifiers) bool true
-
-# Instrument chatcommands on registration.
-instrument.chatcommand (Chatcommands) bool true
-
-# Instrument global callback functions on registration.
-# (anything you pass to a minetest.register_*() function)
-instrument.global_callback (Global callbacks) bool true
-
-[****Advanced]
-# Instrument builtin.
-# This is usually only needed by core/builtin contributors
-instrument.builtin (Builtin) bool false
+# 3D noise defining giant caverns.
+mgvalleys_np_cavern (Cavern noise) noise_params_3d 0, 1, (768, 256, 768), 59033, 6, 0.63, 2.0
-# Have the profiler instrument itself:
-# * Instrument an empty function.
-# This estimates the overhead, that instrumentation is adding (+1 function call).
-# * Instrument the sampler being used to update the statistics.
-instrument.profiler (Profiler) bool false
+# Defines large-scale river channel structure.
+mgvalleys_np_rivers (River noise) noise_params_2d 0, 1, (256, 256, 256), -6050, 5, 0.6, 2.0, eased
-[Client and Server]
+# Base terrain height.
+mgvalleys_np_terrain_height (Terrain height) noise_params_2d -10, 50, (1024, 1024, 1024), 5202, 6, 0.4, 2.0, eased
-# Name of the player.
-# When running a server, clients connecting with this name are admins.
-# When starting from the main menu, this is overridden.
-name (Player name) string
+# Raises terrain to make valleys around the rivers.
+mgvalleys_np_valley_depth (Valley depth) noise_params_2d 5, 4, (512, 512, 512), -1914, 1, 1.0, 2.0, eased
-# Set the language. Leave empty to use the system language.
-# A restart is required after changing this.
-language (Language) enum ,be,ca,cs,da,de,en,eo,es,et,fr,he,hu,id,it,ja,jbo,ko,ky,lt,nb,nl,pl,pt,pt_BR,ro,ru,sr_Cyrl,tr,uk,zh_CN,zh_TW
+# Slope and fill work together to modify the heights.
+mgvalleys_np_inter_valley_fill (Valley fill) noise_params_3d 0, 1, (256, 512, 256), 1993, 6, 0.8, 2.0
-# Level of logging to be written to debug.txt:
-# - <nothing> (no logging)
-# - none (messages with no level)
-# - error
-# - warning
-# - action
-# - info
-# - verbose
-debug_log_level (Debug log level) enum action ,none,error,warning,action,info,verbose
+# Amplifies the valleys.
+mgvalleys_np_valley_profile (Valley profile) noise_params_2d 0.6, 0.5, (512, 512, 512), 777, 1, 1.0, 2.0, eased
-# IPv6 support.
-enable_ipv6 (IPv6) bool true
+# Slope and fill work together to modify the heights.
+mgvalleys_np_inter_valley_slope (Valley slope) noise_params_2d 0.5, 0.5, (128, 128, 128), 746, 1, 1.0, 2.0, eased
[*Advanced]
-# Default timeout for cURL, stated in milliseconds.
-# Only has an effect if compiled with cURL.
-curl_timeout (cURL timeout) int 5000
-
-# Limits number of parallel HTTP requests. Affects:
-# - Media fetch if server uses remote_media setting.
-# - Serverlist download and server announcement.
-# - Downloads performed by main menu (e.g. mod manager).
-# Only has an effect if compiled with cURL.
-curl_parallel_limit (cURL parallel limit) int 8
-
-# Maximum time in ms a file download (e.g. a mod download) may take.
-curl_file_download_timeout (cURL file download timeout) int 300000
+# Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).
+# WARNING!: There is no benefit, and there are several dangers, in
+# increasing this value above 5.
+# Reducing this value increases cave and dungeon density.
+# Altering this value is for special usage, leaving it unchanged is
+# recommended.
+chunksize (Chunk size) int 5
-# Makes DirectX work with LuaJIT. Disable if it causes troubles.
-high_precision_fpu (High-precision FPU) bool true
+# Dump the mapgen debug information.
+enable_mapgen_debug_info (Mapgen debug) bool false
-# Replaces the default main menu with a custom one.
-main_menu_script (Main menu script) string
+# Maximum number of blocks that can be queued for loading.
+emergequeue_limit_total (Absolute limit of emerge queues) int 512
-main_menu_game_mgr (Main menu game manager) int 0
+# Maximum number of blocks to be queued that are to be loaded from file.
+# Set to blank for an appropriate amount to be chosen automatically.
+emergequeue_limit_diskonly (Limit of emerge queues on disk) int 64
-main_menu_mod_mgr (Main menu mod manager) int 1
+# Maximum number of blocks to be queued that are to be generated.
+# Set to blank for an appropriate amount to be chosen automatically.
+emergequeue_limit_generate (Limit of emerge queues to generate) int 64
-# Print the engine's profiling data in regular intervals (in seconds). 0 = disable. Useful for developers.
-profiler_print_interval (Engine profiling data print interval) int 0
+# Number of emerge threads to use.
+# Make this field blank or 0, or increase this number to use multiple threads.
+# On multiprocessor systems, this will improve mapgen speed greatly at the cost
+# of slightly buggy caves.
+num_emerge_threads (Number of emerge threads) int 0