-# This file is read by default from:
+# This file contains a list of all available settings and their default value for minetest.conf
+
+# By default, all the settings are commented and not functional.
+# Uncomment settings by removing the preceding #.
+
+# minetest.conf is read by default from:
# ../minetest.conf
# ../../minetest.conf
# Any other path can be chosen by passing the path as a parameter
# to the program, eg. "minetest.exe --config ../minetest.conf.example".
-# By default, all the settings are commented and not functional.
-# Uncomment settings by removing the preceding #.
-
# Further documentation:
# http://wiki.minetest.net/
-# NOTE: This file might not be up-to-date, refer to the
-# defaultsettings.cpp file for an up-to-date list:
-# https://github.com/minetest/minetest/blob/master/src/defaultsettings.cpp
-
-# A vim command to convert most of defaultsettings.cpp to conf file format:
-# :'<,'>s/\tsettings->setDefault("\([^"]*\)", "\([^"]*\)");.*/#\1 = \2/g
-# Note: Some of the settings are implemented in Lua.
-
#
-# Client and server
+# Controls
#
-# Name of player, on a server this is the main admin
-#name =
+# 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.
+# type: bool
+# enable_build_where_you_stand = false
+
+# Player is able to fly without being affected by gravity.
+# This requires the "fly" privilege on the server.
+# type: bool
+# free_move = false
+
+# Fast movement (via the "special" key).
+# This requires the "fast" privilege on the server.
+# type: bool
+# fast_move = false
+
+# If enabled together with fly mode, player is able to fly through solid nodes.
+# This requires the "noclip" privilege on the server.
+# type: bool
+# noclip = false
+
+# Smooths camera when looking around. Also called look or mouse smoothing.
+# Useful for recording videos.
+# type: bool
+# cinematic = false
+
+# Smooths rotation of camera. 0 to disable.
+# type: float min: 0 max: 0.99
+# camera_smoothing = 0.0
+
+# Smooths rotation of camera in cinematic mode. 0 to disable.
+# type: float min: 0 max: 0.99
+# cinematic_camera_smoothing = 0.7
+
+# Invert vertical mouse movement.
+# type: bool
+# invert_mouse = false
+
+# Mouse sensitivity multiplier.
+# type: float
+# mouse_sensitivity = 0.2
+
+# If enabled, "special" key instead of "sneak" key is used for climbing down and descending.
+# type: bool
+# aux1_descends = false
+
+# Double-tapping the jump key toggles fly mode.
+# type: bool
+# doubletap_jump = false
+
+# If disabled, "special" key is used to fly fast if both fly and fast mode are enabled.
+# type: bool
+# always_fly_fast = true
+
+# The time in seconds it takes between repeated right clicks when holding the right mouse button.
+# type: float
+# repeat_rightclick_time = 0.25
+
+# Prevent digging and placing from repeating when holding the mouse buttons.
+# Enable this when you dig or place too often by accident.
+# type: bool
+# safe_dig_and_place = false
+
+# Enable random user input (only used for testing).
+# type: bool
+# random_input = false
+
+# Continuous forward movement, toggled by autoforward key.
+# type: bool
+# continuous_forward = false
+
+# The length in pixels it takes for touch screen interaction to start.
+# type: int
+# touchscreen_threshold = 20
+
+# (Android) Fixes the position of virtual joystick.
+# If disabled, virtual joystick will center to first-touch's position.
+# type: int
+# fixed_virtual_joystick = false
+
+# Enable Joysticks
+# type: bool
+# enable_joysticks = false
+
+# The identifier of the joystick to use
+# type: int
+# joystick_id = 0
+
+# The type of joystick
+# type: enum values: auto, generic, xbox
+# joystick_type = auto
+
+# The time in seconds it takes between repeated events
+# when holding down a joystick button combination.
+# type: float
+# repeat_joystick_button_time = 0.17
+
+# The sensitivity of the joystick axes for moving the
+# ingame view frustum around.
+# type: float
+# joystick_frustum_sensitivity = 170
+
+# Key for moving the player forward.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_forward = KEY_KEY_W
+
+# Key for moving the player backward.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_backward = KEY_KEY_S
+
+# Key for moving the player left.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_left = KEY_KEY_A
+
+# Key for moving the player right.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_right = KEY_KEY_D
+
+# Key for jumping.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_jump = KEY_SPACE
+
+# Key for sneaking.
+# Also used for climbing down and descending in water if aux1_descends is disabled.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_sneak = KEY_LSHIFT
+
+# Key for opening the inventory.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_inventory = KEY_KEY_I
+
+# Key for moving fast in fast mode.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_special1 = KEY_KEY_E
+
+# Key for opening the chat window.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_chat = KEY_KEY_T
+
+# Key for opening the chat window to type commands.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_cmd = /
+
+# Key for opening the chat window to type local commands.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_cmd_local = .
+
+# Key for toggling unlimited view range.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_rangeselect = KEY_KEY_R
+
+# Key for toggling flying.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_freemove = KEY_KEY_K
+
+# Key for toggling fast mode.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_fastmove = KEY_KEY_J
+
+# Key for toggling noclip mode.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_noclip = KEY_KEY_H
+
+# Key for selecting the next item in the hotbar.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_hotbar_next = KEY_KEY_N
+
+# Key for selecting the previous item in the hotbar.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_hotbar_previous = KEY_KEY_B
+
+# Key for muting the game.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_mute = KEY_KEY_M
+
+# Key for increasing the volume.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_increase_volume =
+
+# Key for decreasing the volume.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_decrease_volume =
+
+# Key for toggling autoforward.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_autoforward =
+
+# Key for toggling cinematic mode.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_cinematic =
+
+# Key for toggling display of minimap.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_minimap = KEY_F9
+
+# Key for taking screenshots.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_screenshot = KEY_F12
+
+# Key for dropping the currently selected item.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_drop = KEY_KEY_Q
+
+# Key to use view zoom when possible.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_zoom = KEY_KEY_Z
+
+# Key for selecting the first hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot1 = KEY_KEY_1
+
+# Key for selecting the second hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot2 = KEY_KEY_2
+
+# Key for selecting the third hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot3 = KEY_KEY_3
+
+# Key for selecting the fourth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot4 = KEY_KEY_4
+
+# Key for selecting the fifth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot5 = KEY_KEY_5
+
+# Key for selecting the sixth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot6 = KEY_KEY_6
+
+# Key for selecting the seventh hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot7 = KEY_KEY_7
+
+# Key for selecting the eighth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot8 = KEY_KEY_8
+
+# Key for selecting the ninth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot9 = KEY_KEY_9
+
+# Key for selecting the tenth hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot10 = KEY_KEY_0
+
+# Key for selecting the 11th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot11 =
+
+# Key for selecting the 12th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot12 =
+
+# Key for selecting the 13th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot13 =
+
+# Key for selecting the 14th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot14 =
+
+# Key for selecting the 15th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot15 =
+
+# Key for selecting the 16th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot16 =
+
+# Key for selecting the 17th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot17 =
+
+# Key for selecting the 18th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot18 =
+
+# Key for selecting the 19th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot19 =
+
+# Key for selecting the 20th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot20 =
+
+# Key for selecting the 21th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot21 =
+
+# Key for selecting the 22th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot22 =
+
+# Key for selecting the 23th hotbar slot.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_slot23 =
+
+# Key for toggling the display of the HUD.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_toggle_hud = KEY_F1
+
+# Key for toggling the display of the chat.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_toggle_chat = KEY_F2
+
+# Key for toggling the display of the large chat console.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_console = KEY_F10
+
+# Key for toggling the display of the fog.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_toggle_force_fog_off = KEY_F3
+
+# Key for toggling the camera update. Only used for development
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_toggle_update_camera =
+
+# Key for toggling the display of debug info.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_toggle_debug = KEY_F5
+
+# Key for toggling the display of the profiler. Used for development.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_toggle_profiler = KEY_F6
+
+# Key for switching between first- and third-person camera.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_camera_mode = KEY_F7
+
+# Key for increasing the viewing range.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_increase_viewing_range_min = +
+
+# Key for decreasing the viewing range.
+# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
+# type: key
+# keymap_decrease_viewing_range_min = -
#
-# Client stuff
+# Graphics
#
-# Port to connect to (UDP)
-#remote_port =
-# Key mappings.
-# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
-#keymap_forward = KEY_KEY_W
-#keymap_backward = KEY_KEY_S
-#keymap_left = KEY_KEY_A
-#keymap_right = KEY_KEY_D
-#keymap_jump = KEY_SPACE
-#keymap_sneak = KEY_LSHIFT
-#keymap_inventory = KEY_KEY_I
-# Go down ladder / go down in fly mode / go fast in fast mode
-#keymap_special1 = KEY_KEY_E
-#keymap_chat = KEY_KEY_T
-#keymap_cmd = /
-#keyman_console = KEY_F10
-#keymap_rangeselect = KEY_KEY_R
-#keymap_freemove = KEY_KEY_K
-#keymap_fastmove = KEY_KEY_J
-#keymap_cinematic = KEY_F8
-#keymap_screenshot = KEY_F12
-# If true, keymap_special1 instead of keymap_sneak is used for climbing down and descending
-#aux1_descends = false
-# Double-tapping the jump key toggles fly mode
-#doubletap_jump = false
-# If false aux1 is used to fly fast
-#always_fly_fast = true
-# Some (temporary) keys for debugging
-#keymap_print_debug_stacks = KEY_KEY_P
-#keymap_quicktune_prev = KEY_HOME
-#keymap_quicktune_next = KEY_END
-#keymap_quicktune_dec = KEY_NEXT
-#keymap_quicktune_inc = KEY_PRIOR
-
-# If set to true, you can place blocks at the position (feet + eye level) where you stand.
-# This is helpful when working with nodeboxes.
-#enable_build_where_you_stand = false
-# Minimum FPS.
-# The amount of rendered stuff is dynamically set according to this.
-#wanted_fps = 30
-# If FPS would go higher than this, limit it by sleeping
-# to not waste CPU power for no benefit.
-#fps_max = 60
-# Maximum FPS when game is paused
-#pause_fps_max = 20
-# The allowed adjustment range for the automatic rendering range adjustment
-#viewing_range_nodes_max = 160
-#viewing_range_nodes_min = 35
-# Initial window size
-#screenW = 800
-#screenH = 600
-#fullscreen = false
-#fullscreen_bpp = 24
-# Experimental option, might cause visible spaces between blocks
-# when set to higher number than 0.
-#fsaa = 0
-#vsync = false
-# Field of view in degrees
-#fov = 72
-# Address to connect to (#blank = start local server)
-#address =
-# Enable random user input, for testing
-#random_input = false
-# Timeout for client to remove unused map data from memory
-#client_unload_unused_data_timeout = 600
-# Maximum number of mapblocks for client to be kept in memory
-# Set to -1 for unlimited amount
-#client_mapblock_limit = 1000
-# Whether to fog out the end of the visible area
-#enable_fog = true
-# Whether to show the client debug info (has the same effect as hitting F5)
-#show_debug = false
-# Enable a bit lower water surface; disable for speed (not quite optimized)
-#new_style_water = false
-# Max liquids processed per step
-#liquid_loop_max = 100000
-# The time (in seconds) that the liquids queue may grow beyond processing
-# capacity until an attempt is made to decrease its size by dumping old queue
-# items. A value of 0 disables the functionality.
-#liquid_queue_purge_time = 0
-# Liquid update interval in seconds
-#liquid_update = 1.0
+## In-Game
+
+### Basic
+
+# Enable VBO
+# type: bool
+# enable_vbo = true
+
+# Whether to fog out the end of the visible area.
+# type: bool
+# enable_fog = true
+
# Leaves style:
-# fancy - all faces visible
-# simple - only outer faces, if defined special_tiles are used
-# opaque - disable transparency
-#leaves_style = fancy
-# Connects glass if supported by node
-#connected_glass = false
+# - Fancy: all faces visible
+# - Simple: only outer faces, if defined special_tiles are used
+# - Opaque: disable transparency
+# type: enum values: fancy, simple, opaque
+# leaves_style = fancy
+
+# Connects glass if supported by node.
+# type: bool
+# connected_glass = false
+
# Enable smooth lighting with simple ambient occlusion.
# Disable for speed or for different looks.
-#smooth_lighting = true
-# Adjust the gamma encoding for the light tables. Valid values are in the range
-# 1.0 to 3.0 (inclusive); lower numbers are brighter. This setting is for the
-# client only and is ignored by the server
-#display_gamma = 1.8
-# Path to texture directory. All textures are first searched from here.
-#texture_path =
-# Video back-end.
-# Possible values: null, software, burningsvideo, direct3d8, direct3d9, opengl.
-#video_driver = opengl
-# Unobstructed movement without physics, downwards key is keymap_special1
-#free_move = false
-# Continuous forward movement (for testing)
-#continuous_forward = false
-# Enable cinematic mode
-#cinematic = false
-# Camera smoothing - smooths rotation of camera. 0 is no smoothing.
-# Must be equal to or greater than 0, and less than 1.
-#camera_smoothing = 0.0
-# Camera smoothing when in cinematic mode
-#cinematic_camera_smoothing = 0.7
-# Fast movement (keymap_special1)
-#fast_move = false
-# Invert mouse
-#invert_mouse = false
-# Enable/disable clouds
-#enable_clouds = true
-#cloud_height = 120
-# 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.
-#cloud_radius = 12
-#enable_3d_clouds = true
-# Use a cloud animation for the main menu background
-#menu_clouds = true
-# Path for screenshots
-#screenshot_path =
-# Amount of view bobbing (0 = no view bobbing, 1.0 = normal, 2.0 = double)
-#view_bobbing_amount = 1.0
-# Amount of fall bobbing (0 = no fall bobbing, 1.0 = normal, 2.0 = double)
-#fall_bobbing_amount = 0.0
-# 3d support.
-# Currently:
-# "none" = no 3d output.
-# "anaglyph" = cyan/magenta color 3d.
-# "interlaced" = odd/even line based polarisation screen support.
-# "topbottom" = split screen top/bottom.
-# "sidebyside" = split screen side by side.
-#3d_mode = none
-#3d_parallax_strength = 0.025
-# In-game chat console background color (R,G,B)
-#console_color = (0,0,0)
-# In-game chat console background alpha (opaqueness, between 0 and 255)
-#console_alpha = 200
-# Selection box border color (R,G,B)
-#selectionbox_color = (0,0,0)
-# Crosshair color (R,G,B)
-#crosshair_color = (255,255,255)
-# Cross alpha (opaqueness, between 0 and 255)
-#crosshair_alpha = 255
-# Scale gui by a user specified value
-#gui_scaling = 1.0
-# 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
-# edge pixels when images are scaled by non-integer sizes.
-#gui_scaling_filter = false
-# When gui_scaling_filter is true, all GUI images need to be
-# filtered in software, but some images are generated directly
-# to hardware (e.g. render-to-texture for nodes in inventory).
-# When gui_scaling_filter_txr2img is true, copy those images
-# from hardware to software for scaling. When false, fall back
-# to the old scaling method, for video drivers that don't
-# propery support downloading textures back from hardware.
-#gui_scaling_filter_txr2img = true
-# Sensitivity multiplier
-#mouse_sensitivity = 0.2
-# Sound settings
-#enable_sound = true
-#sound_volume = 0.7
-# Whether node texture animations should be desynchronized per mapblock
-#desynchronize_mapblock_texture_animation = true
-# Width of the selectionbox's lines (Between 1 and 5)
-#selectionbox_width = 2
-# Maximum proportion of current window to be used for hotbar.
-# Useful if there's something to be displayed right or left of hotbar.
-#hud_hotbar_max_width = 1.0
-# Save the map received by the client on disk
-#enable_local_map_saving = false
-# Enable selection highlighting for nodes (disables selectionbox)
-#enable_node_highlighting = false
-# Texture filtering settings
-#mip_map = false
-#anisotropic_filter = false
-#bilinear_filter = false
-#trilinear_filter = false
+# type: bool
+# smooth_lighting = true
+
+# Clouds are a client side effect.
+# type: bool
+# enable_clouds = true
+
+# Use 3D cloud look instead of flat.
+# type: bool
+# enable_3d_clouds = true
+
+# Method used to highlight selected object.
+# type: enum values: box, halo, none
+# node_highlighting = box
+
+# Adds particles when digging a node.
+# type: bool
+# enable_particles = true
+
+### Filtering
+
+# Use mip mapping to scale textures. May slightly increase performance.
+# type: bool
+# mip_map = false
+
+# Use anisotropic filtering when viewing at textures from an angle.
+# type: bool
+# anisotropic_filter = false
+
+# Use bilinear filtering when scaling textures.
+# type: bool
+# bilinear_filter = false
+
+# Use trilinear filtering when scaling textures.
+# type: bool
+# trilinear_filter = false
+
# 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
# at texture load time.
-#texture_clean_transparent = false
+# type: bool
+# texture_clean_transparent = 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
# 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 = 64
-# Set to true to pre-generate all item visuals
-#preload_item_visuals = false
-# Set to true to enable shaders. Disable them if video_driver = direct3d9/8.
-
-#enable_shaders = true
-#enable_bumpmapping = false
-# Set to true to enable textures bumpmapping. Requires shaders enabled.
-#generate_normalmaps = false
-# Set to true enables on the fly normalmap generation (Emboss effect).
-# Requires bumpmapping enabled.
-#normalmaps_strength = 0.6
-# Strength of generated normalmaps
-#normalmaps_smooth = 0
-# Defines sampling step of texture (0 - 2).
+# This is also used as the base node texture size for world-aligned
+# texture autoscaling.
+# type: int
+# texture_min_size = 64
+
+# Experimental option, might cause visible spaces between blocks
+# when set to higher number than 0.
+# type: enum values: 0, 1, 2, 4, 8, 16
+# fsaa = 0
+
+# Undersampling is similar to using lower screen resolution, but it applies
+# to the game world only, keeping the GUI intact.
+# It should give significant performance boost at the cost of less detailed image.
+# type: enum values: 0, 2, 3, 4
+# undersampling = 0
+
+### Shaders
+
+# Shaders allow advanced visual effects and may increase performance on some video cards.
+# This only works with the OpenGL video backend.
+# type: bool
+# enable_shaders = true
+
+# Path to shader directory. If no path is defined, default location will be used.
+# type: path
+# shader_path =
+
+#### Tone Mapping
+
+# Enables filmic tone mapping
+# type: bool
+# tone_mapping = false
+
+#### Bumpmapping
+
+# Enables bumpmapping for textures. Normalmaps need to be supplied by the texture pack
+# or need to be auto-generated.
+# Requires shaders to be enabled.
+# type: bool
+# enable_bumpmapping = false
+
+# Enables on the fly normalmap generation (Emboss effect).
+# Requires bumpmapping to be enabled.
+# type: bool
+# generate_normalmaps = false
+
+# Strength of generated normalmaps.
+# type: float
+# normalmaps_strength = 0.6
+
+# Defines sampling step of texture.
# A higher value results in smoother normal maps.
-#parallax_occlusion_mode = 1
-# 0 = parallax occlusion with slope information (faster)
-# 1 = relief mapping (slower, more accurate)
-#enable_parallax_occlusion = false
-# Set to true enables parallax occlusion mapping. Requires shaders enabled.
-#parallax_occlusion_iterations = 4
-# Number of parallax occlusion iterations
-#parallax_occlusion_scale = 0.08
-# Overall scale of parallax occlusion effect
-#parallax_occlusion_bias = 0.04
-# Overall bias of parallax occlusion effect, usually scale/2
-#enable_waving_water = false
-# Set to true enables waving water. Requires shaders enabled.
-# Parameters for waving water:
-#water_wave_height = 1.0
-#water_wave_length = 20.0
-#water_wave_speed = 5.0
-#enable_waving_leaves = false
-# Set to true enables waving leaves. Requires shaders enabled.
-#enable_waving_plants = false
-# Set to true enables waving plants. Requires shaders enabled.
-#ambient_occlusion_gamma = 2.2
-# The strength (darkness) of node ambient-occlusion shading.
-# Lower is darker, Higher is lighter. The valid range of values for this
-# setting is 0.25 to 4.0 inclusive. If the value is out of range it will be
-# set to the nearest valid value.
-#enable_mesh_cache = false
-# Enables caching of facedir rotated meshes
-
-#enable_minimap = true
-# Enables minimap
-#minimap_shape_round = true
-# true - round shape, false - square
-#minimap_double_scan_height = true
-# true = 256, false = 128
-# useable to make minimap smoother on slower machines
-
-# The time in seconds it takes between repeated
-# right clicks when holding the right mouse button.
-#repeat_rightclick_time = 0.25
-# Make fog and sky colors depend on daytime (dawn/sunset) and view direction
-#directional_colored_fog = true
-# Delay showing tooltips, stated in milliseconds
-#tooltip_show_delay = 400
-# Adjust dpi configuration to your screen (non X11/Android only) e.g. for 4k screens
-#screen_dpi = 72
-# Default timeout for cURL, stated in milliseconds.
-# Only has an effect if compiled with cURL.
-#curl_timeout = 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 = 8
-# Maximum time in ms a file download (e.g. a mod download) may take
-#curl_file_download_timeout = 300000
-# Enable usage of remote media server (if provided by server)
-#enable_remote_media_server = true
-# Url to the server list displayed in the Multiplayer Tab
-#serverlist_url = servers.minetest.net
-# File in client/serverlist/ that contains your favorite servers displayed in the Multiplayer Tab
-#serverlist_file = favoriteservers.txt
-# Whether freetype fonts are used, requires freetype support to be compiled in
-#freetype = true
-# Path to TrueTypeFont or bitmap
-#font_path = fonts/liberationsans.ttf
-#font_size = 15
-# Font shadow offset, if 0 then shadow will not be drawn
-#font_shadow = 1
-# Font shadow alpha (opaqueness, between 0 and 255)
-#font_shadow_alpha = 128
-#mono_font_path = fonts/liberationmono.ttf
-#mono_font_size = 15
-# This font will be used for certain languages
-#fallback_font_path = fonts/DroidSansFallbackFull.ttf
-#fallback_font_size = 15
-#fallback_font_shadow = 1
-#fallback_font_shadow_alpha = 128
+# type: int min: 0 max: 2
+# normalmaps_smooth = 0
-#
-# Server stuff
-#
+#### Parallax Occlusion
-# Network port to listen (UDP)
-#port = 30000
-# Bind address
-#bind_address =
-# Name of server
-#server_name = Minetest server
-# Description of server
-#server_description = mine here
-# Domain name of server
-#server_address = game.minetest.net
-# Homepage of server
-#server_url = http://minetest.net
-# Automaticaly report to masterserver
-#server_announce = 0
-# Announce to this masterserver.
-# If you want to announce your ipv6 address - use serverlist_url = v6.servers.minetest.net.
-#serverlist_url = servers.minetest.net
-# Default game (default when creating a new world)
-#default_game = minetest
-# World directory (everything in the world is stored here)
-#map-dir = /custom/world
-# Message of the Day
-#motd = Welcome to this awesome Minetest server!
-# Maximum number of players connected simultaneously
-#max_users = 15
-# Set to true to disallow old clients from connecting
-#strict_protocol_version_checking = false
-# Time in seconds for item entity to live. Default value: 900s.
-# Setting it to -1 disables the feature.
-#item_entity_ttl = 900
-# Set to true to enable creative mode (unlimited inventory)
-#creative_mode = false
-# Enable players getting damage and dying
-#enable_damage = false
-# A chosen map seed for a new map, leave empty for random
-#fixed_map_seed =
-# Gives some stuff to players at the beginning
-#give_initial_stuff = false
-# New users need to input this password
-#default_password =
-# Available privileges: interact, shout, teleport, settime, privs, ...
-# See /privs in game for a full list on your server and mod configuration.
-#default_privs = interact, shout
-# Whether players are shown to clients without any range limit.
-# Deprecated, use the setting player_transfer_distance instead.
-#unlimited_player_transfer_distance = true
-# Defines the maximal player transfer distance in blocks (0 = unlimited)
-#player_transfer_distance = 0
-# Whether to enable players killing each other
-#enable_pvp = true
-# If this is set, players will always (re)spawn at the given position
-#static_spawnpoint = 0, 10, 0
-# If true, new players cannot join with an empty password
-#disallow_empty_password = false
-# If true, disable cheat prevention in multiplayer
-#disable_anticheat = false
-# If true, actions are recorded for rollback
-# This option is only read when server starts
-#enable_rollback_recording = false
-# Handling for deprecated lua api calls:
-# "legacy" = (try to) mimic old behaviour (default for release).
-# "log" = mimic and log backtrace of deprecated call (default for debug).
-# "error" = abort on usage of deprecated call (suggested for mod developers).
-#deprecated_lua_api_handling = legacy
-
-#kick_msg_shutdown = Server shutting down.
-# A message to be displayed to all clients when the server shuts down
-#kick_msg_crash = This server has experienced an internal error. You will now be disconnected.
-# A message to be displayed to all clients when the server crashes
-#ask_reconnect_on_crash = false
-# Whether to ask clients to reconnect after a (lua) crash.
-# Set this to true if your server is set up to restart automatically.
+# Enables parallax occlusion mapping.
+# Requires shaders to be enabled.
+# type: bool
+# enable_parallax_occlusion = false
-# Mod profiler
-#mod_profiling = false
-# Detailed mod profile data
-#detailed_profiling = false
-# Profiler data print interval. #0 = disable.
-#profiler_print_interval = 0
-#enable_mapgen_debug_info = false
-# From how far client knows about objects
-#active_object_send_range_blocks = 3
-# How large area of blocks are subject to the active block stuff.
-# Active = objects are loaded and ABMs run.
-#active_block_range = 2
-# How many blocks are flying in the wire simultaneously per client
-#max_simultaneous_block_sends_per_client = 10
-# How many blocks are flying in the wire simultaneously per server
-#max_simultaneous_block_sends_server_total = 40
-# From how far blocks are sent to clients, stated in mapblocks (16 nodes)
-#max_block_send_distance = 10
-# From how far blocks are generated for clients, stated in mapblocks (16 nodes)
-#max_block_generate_distance = 6
-# Where the map generator stops.
-# Please note:
-# * Limited to 31000 (setting above has no effect)
-# * The map generator works in groups of 80x80x80 nodes (5x5x5 MapBlocks).
-# * Those groups have an offset of -32, -32 nodes from the origin.
-# * Only groups which are within the map_generation_limit are generated
-#map_generation_limit = 31000
-# Number of extra blocks that can be loaded by /clearobjects at once.
-# This is a trade-off between sqlite transaction overhead and
-# memory consumption (4096=100MB, as a rule of thumb).
-#max_clearobjects_extra_loaded_blocks = 4096
-# Maximum number of forceloaded blocks
-#max_forceloaded_blocks = 16
-# Interval of sending time of day to clients
-#time_send_interval = 5
-# Controls length of day/night cycle.
-# 72=20min, 360=4min, 1=24hour, 0=day/night/whatever stays unchanged.
-#time_speed = 72
-#server_unload_unused_data_timeout = 29
-# Maximum number of statically stored objects in a block
-#max_objects_per_block = 49
-# Interval of saving important changes in the world, stated in seconds
-#server_map_save_interval = 5.3
-# http://www.sqlite.org/pragma.html#pragma_synchronous only numeric values: 0 1 2
-#sqlite_synchronous = 2
-# 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.
-#full_block_send_enable_min_time_from_building = 2.0
-# Length of a server tick and the interval at which objects are generally updated over network
-#dedicated_server_step = 0.1
-# Can be set to true to disable shutting down on invalid world data
-#ignore_world_load_errors = false
-# Specifies URL from which client fetches media instead of using UDP.
-# $filename should be accessible from $remote_media$filename via cURL
-# (obviously, remote_media should end with a slash).
-# Files that are not present would be fetched the usual way.
-#remote_media =
-# Level of logging to be written to debug.txt:
-# 0 = none, 1 = errors and debug, 2 = action, 3 = info, 4 = verbose.
-#debug_log_level = 2
-# Maximum number of blocks that can be queued for loading
-#emergequeue_limit_total = 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 = 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 = 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 = 1
-# Maximum number of packets sent per send step, if you have a slow connection
-# try reducing it, but don't reduce it to a number below double of targeted
-# client number.
-#max_packets_per_iteration = 1024
+# 0 = parallax occlusion with slope information (faster).
+# 1 = relief mapping (slower, more accurate).
+# type: int min: 0 max: 1
+# parallax_occlusion_mode = 1
-# Enable/disable IPv6
-#enable_ipv6 = true
-# Enable/disable running an IPv6 server. An IPv6 server may be restricted
-# to IPv6 clients, depending on system configuration.
-# Ignored if bind_address is set.
-#ipv6_server = false
-#main_menu_script =
-#main_menu_game_mgr = 0
-#main_menu_mod_mgr = 1
-#modstore_download_url = https://forum.minetest.net/media/
-#modstore_listmods_url = https://forum.minetest.net/mmdb/mods/
-#modstore_details_url = https://forum.minetest.net/mmdb/mod/*/
-# Makes DirectX work with LuaJIT. Disable if it causes troubles.
-#high_precision_fpu = true
-# Override language. When no value is provided (default) system language is used.
-# Check "locale" directory for the list of available translations.
-#language =
+# Strength of parallax.
+# type: float
+# 3d_paralax_strength = 0.025
-#
-# Physics stuff
-#
+# Number of parallax occlusion iterations.
+# type: int
+# parallax_occlusion_iterations = 4
-#movement_acceleration_default = 3
-#movement_acceleration_air = 2
-#movement_acceleration_fast = 10
-#movement_speed_walk = 4
-#movement_speed_crouch = 1.35
-#movement_speed_fast = 20
-#movement_speed_climb = 2
-#movement_speed_jump = 6.5
-#movement_speed_descend = 6
-#movement_liquid_fluidity = 1
-#movement_liquid_fluidity_smooth = 0.5
-#movement_liquid_sink = 10
-#movement_gravity = 9.81
+# Overall scale of parallax occlusion effect.
+# type: float
+# parallax_occlusion_scale = 0.08
-#
-# Mapgen stuff
-#
+# Overall bias of parallax occlusion effect, usually scale/2.
+# type: float
+# parallax_occlusion_bias = 0.04
-# Name of map generator to be used. Currently supported: v5, v6, v7, singlenode.
-#mg_name = v6
-# Water surface level of map
-#water_level = 1
-# Size of chunks to be generated, stated in mapblocks (16 nodes)
-#chunksize = 5
-# Global map generation attributes. Currently supported: trees, caves, flat, dungeons, light.
-# Flags that are not specified in the flag string are not modified from the default.
-# To explicitly turn off a flag, prepend "no" to the beginning, e.g. nolight.
-#mg_flags = trees, caves, dungeons, light
-# Enable/disable floating dungeons and dungeon slices
-#enable_floating_dungeons = true
-
-# Map generation attributes specific to Mapgen V6.
-# Currently supported: jungles, biomeblend, mudflow, snowbiomes.
-# When snowbiomes are enabled jungles are enabled and the jungles flag is ignored.
-#mgv6_spflags = jungles, biomeblend, mudflow, snowbiomes
-# Controls size of deserts and beaches in Mapgen V6
-# When snowbiomes are enabled 'mgv6_freq_desert' is ignored.
-#mgv6_freq_desert = 0.45
-#mgv6_freq_beach = 0.15
-
-# Map generation attributes specific to Mapgen V7.
-# Currently supported: mountains, ridges.
-#mgv7_spflags = mountains, ridges
-
-# Perlin noise attributes for different map generation parameters.
-# Noise parameters can be specified as a set of positional values:
-# Offset, scale, (spread factors), seed offset, number of octaves, persistence, lacunarity.
-#mgv6_np_terrain_base = -4, 20, (250, 250, 250), 82341, 5, 0.6, 2.0
-# Or the new group format can be used instead, for example:
-#mgv6_np_terrain_base = {
-# offset = -4
-# scale = 20
-# spread = (250, 250, 250)
-# seed = 82341
-# octaves = 5
-# persistence = 0.6
-# lacunarity = 2.0
-# flags = "defaults"
-#}
-# Only the group format supports noise flags which are needed for eased noise.
-# Mgv5 uses eased noise for np_ground so this is shown in group format,
-# other noise parameters are shown in positional format to save space.
-
-# Noise parameters for biome API temperature, humidity and biome blend
-#mg_biome_np_heat = 50, 50, (1000, 1000, 1000), 5349, 3, 0.5, 2.0
-#mg_biome_np_heat_blend = 0, 1.5, (8, 8, 8), 13, 2, 1.0, 2.0
-#mg_biome_np_humidity = 50, 50, (1000, 1000, 1000), 842, 3, 0.5, 2.0
-#mg_biome_np_humidity_blend = 0, 1.5, (8, 8, 8), 90003, 2, 1.0, 2.0
-
-#mgv5_np_filler_depth = 0, 1, (150, 150, 150), 261, 4, 0.7, 2.0
-#mgv5_np_factor = 0, 1, (250, 250, 250), 920381, 3, 0.45, 2.0
-#mgv5_np_height = 0, 10, (250, 250, 250), 84174, 4, 0.5, 2.0
-#mgv5_np_cave1 = 0, 12, (50, 50, 50), 52534, 4, 0.5, 2.0
-#mgv5_np_cave2 = 0, 12, (50, 50, 50), 10325, 4, 0.5, 2.0
-#mgv5_np_ground = {
-# offset = 0
-# scale = 40
-# spread = (80, 80, 80)
-# seed = 983240
-# octaves = 4
-# persistence = 0.55
-# lacunarity = 2.0
-# flags = "eased"
-#}
-
-#mgv6_np_terrain_base = -4, 20, (250, 250, 250), 82341, 5, 0.6, 2.0
-#mgv6_np_terrain_higher = 20, 16, (500, 500, 500), 85039, 5, 0.6, 2.0
-#mgv6_np_steepness = 0.85, 0.5, (125, 125, 125), -932, 5, 0.7, 2.0
-#mgv6_np_height_select = 0.5, 1, (250, 250, 250), 4213, 5, 0.69, 2.0
-#mgv6_np_mud = 4, 2, (200, 200, 200), 91013, 3, 0.55, 2.0
-#mgv6_np_beach = 0, 1, (250, 250, 250), 59420, 3, 0.50, 2.0
-#mgv6_np_biome = 0, 1, (500, 500, 500), 9130, 3, 0.50, 2.0
-#mgv6_np_cave = 6, 6, (250, 250, 250), 34329, 3, 0.50, 2.0
-#mgv6_np_humidity = 0.5, 0.5, (500, 500, 500), 72384, 3, 0.50, 2.0
-#mgv6_np_trees = 0, 1, (125, 125, 125), 2, 4, 0.66, 2.0
-#mgv6_np_apple_trees = 0, 1, (100, 100, 100), 342902, 3, 0.45, 2.0
-
-#mgv7_np_terrain_base = 4, 70, (600, 600, 600), 82341, 5, 0.6, 2.0
-#mgv7_np_terrain_alt = 4, 25, (600, 600, 600), 5934, 5, 0.6, 2.0
-#mgv7_np_terrain_persist = 0.6, 0.1, (2000, 2000, 2000), 539, 3, 0.6, 2.0
-#mgv7_np_height_select = -12, 24, (500, 500, 500), 4213, 6, 0.7, 2.0
-#mgv7_np_filler_depth = 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
-#mgv7_np_mount_height = 256, 112, (1000, 1000, 1000), 72449, 3, 0.6, 2.0
-#mgv7_np_ridge_uwater = 0, 1, (1000, 1000, 1000), 85039, 5, 0.6, 2.0
-#mgv7_np_mountain = -0.6, 1, (250, 350, 250), 5333, 5, 0.63, 2.0
-#mgv7_np_ridge = 0, 1, (100, 100, 100), 6467, 4, 0.75, 2.0
-#mgv7_np_cave1 = 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0
-#mgv7_np_cave2 = 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0
+#### Waving Nodes
+
+# Set to true enables waving water.
+# Requires shaders to be enabled.
+# type: bool
+# enable_waving_water = false
+
+# type: float
+# water_wave_height = 1.0
+
+# type: float
+# water_wave_length = 20.0
+
+# type: float
+# water_wave_speed = 5.0
+
+# Set to true enables waving leaves.
+# Requires shaders to be enabled.
+# type: bool
+# enable_waving_leaves = false
+
+# Set to true enables waving plants.
+# Requires shaders to be enabled.
+# type: bool
+# enable_waving_plants = false
+
+### Advanced
+
+# Arm inertia, gives a more realistic movement of
+# the arm when the camera moves.
+# type: bool
+# arm_inertia = true
+
+# If FPS would go higher than this, limit it by sleeping
+# to not waste CPU power for no benefit.
+# type: int
+# fps_max = 60
+
+# Maximum FPS when game is paused.
+# type: int
+# pause_fps_max = 20
+
+# View distance in nodes.
+# type: int min: 20 max: 4000
+# viewing_range = 100
+
+# 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.
+# type: float min: 0 max: 0.5
+# near_plane = 0.1
+
+# Width component of the initial window size.
+# type: int
+# screen_w = 1024
+
+# Height component of the initial window size.
+# type: int
+# screen_h = 600
+
+# Save window size automatically when modified.
+# type: bool
+# autosave_screensize = true
+
+# Fullscreen mode.
+# type: bool
+# fullscreen = false
+
+# Bits per pixel (aka color depth) in fullscreen mode.
+# type: int
+# fullscreen_bpp = 24
+
+# Vertical screen synchronization.
+# type: bool
+# vsync = false
+
+# Field of view in degrees.
+# type: int min: 30 max: 160
+# fov = 72
+
+# Field of view while zooming in degrees.
+# Requires to be allowed by server-sided mods.
+# type: int min: 7 max: 160
+# zoom_fov = 15
+
+# 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.
+# type: float min: 0.5 max: 3
+# display_gamma = 1.0
+
+# type: float min: 0 max: 4
+# lighting_alpha = 0.0
+
+# type: float min: 0 max: 4
+# lighting_beta = 0.0
+
+# Path to texture directory. All textures are first searched from here.
+# type: path
+# texture_path =
+
+# The rendering back-end for Irrlicht.
+# type: enum values: null, software, burningsvideo, direct3d8, direct3d9, opengl
+# video_driver = opengl
+
+# 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.
+# type: int
+# cloud_radius = 12
+
+# Enable view bobbing and amount of view bobbing.
+# For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double.
+# type: float
+# view_bobbing_amount = 1.0
+
+# Multiplier for fall bobbing.
+# For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double.
+# type: float
+# fall_bobbing_amount = 0.0
+
+# 3D support.
+# Currently supported:
+# - none: no 3d output.
+# - anaglyph: cyan/magenta color 3d.
+# - interlaced: odd/even line based polarisation screen support.
+# - topbottom: split screen top/bottom.
+# - sidebyside: split screen side by side.
+# - pageflip: quadbuffer based 3d.
+# Note that the interlaced mode requires shaders to be enabled.
+# type: enum values: none, anaglyph, interlaced, topbottom, sidebyside, pageflip
+# 3d_mode = none
+
+# In-game chat console height, between 0.1 (10%) and 1.0 (100%).
+# type: float min: 0.1 max: 1
+# console_height = 0.6
+
+# In-game chat console background color (R,G,B).
+# type: string
+# console_color = (0,0,0)
+
+# In-game chat console background alpha (opaqueness, between 0 and 255).
+# type: int min: 0 max: 255
+# console_alpha = 200
+
+# Formspec full-screen background opacity (between 0 and 255).
+# type: int min: 0 max: 255
+# formspec_fullscreen_bg_opacity = 140
+
+# Formspec full-screen background color (R,G,B).
+# type: string
+# formspec_fullscreen_bg_color = (0,0,0)
+
+# Formspec default background opacity (between 0 and 255).
+# type: int min: 0 max: 255
+# formspec_default_bg_opacity = 140
+
+# Formspec default background color (R,G,B).
+# type: string
+# formspec_default_bg_color = (0,0,0)
+
+# Selection box border color (R,G,B).
+# type: string
+# selectionbox_color = (0,0,0)
+
+# Width of the selectionbox's lines around nodes.
+# type: int min: 1 max: 5
+# selectionbox_width = 2
+
+# Crosshair color (R,G,B).
+# type: string
+# crosshair_color = (255,255,255)
+
+# Crosshair alpha (opaqueness, between 0 and 255).
+# type: int min: 0 max: 255
+# crosshair_alpha = 255
+
+# Maximum number of recent chat messages to show
+# type: int min: 2 max: 20
+# recent_chat_messages = 6
+
+# Whether node texture animations should be desynchronized per mapblock.
+# type: bool
+# desynchronize_mapblock_texture_animation = true
+
+# Maximum proportion of current window to be used for hotbar.
+# Useful if there's something to be displayed right or left of hotbar.
+# type: float
+# hud_hotbar_max_width = 1.0
+
+# Modifies the size of the hudbar elements.
+# type: float
+# hud_scaling = 1.0
+
+# Enables caching of facedir rotated meshes.
+# type: bool
+# enable_mesh_cache = false
+
+# Delay between mesh updates on the client in ms. Increasing this will slow
+# down the rate of mesh updates, thus reducing jitter on slower clients.
+# type: int min: 0 max: 50
+# mesh_generation_interval = 0
+
+# 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.
+# type: int min: 0 max: 1000
+# meshgen_block_cache_size = 20
+
+# Enables minimap.
+# type: bool
+# enable_minimap = true
+
+# Shape of the minimap. Enabled = round, disabled = square.
+# type: bool
+# minimap_shape_round = true
+
+# True = 256
+# False = 128
+# Useable to make minimap smoother on slower machines.
+# type: bool
+# minimap_double_scan_height = true
+
+# Make fog and sky colors depend on daytime (dawn/sunset) and view direction.
+# type: bool
+# directional_colored_fog = true
+
+# The strength (darkness) of node ambient-occlusion shading.
+# Lower is darker, Higher is lighter. The valid range of values for this
+# setting is 0.25 to 4.0 inclusive. If the value is out of range it will be
+# set to the nearest valid value.
+# type: float min: 0.25 max: 4
+# ambient_occlusion_gamma = 2.2
+
+# Enables animation of inventory items.
+# type: bool
+# inventory_items_animations = false
+
+# Android systems only: Tries to create inventory textures from meshes
+# when no supported render was found.
+# type: bool
+# inventory_image_hack = false
+
+# Fraction of the visible distance at which fog starts to be rendered
+# type: float min: 0 max: 0.99
+# fog_start = 0.4
+
+# Makes all liquids opaque
+# type: bool
+# opaque_water = false
+
+# 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.
+# type: enum values: disable, enable, force_solid, force_nodebox
+# world_aligned_mode = enable
+
+# 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!
+# type: enum values: disable, enable, force
+# autoscale_mode = disable
+
+# Show entity selection boxes
+# type: bool
+# show_entity_selectionbox = true
+
+## Menus
+
+# Use a cloud animation for the main menu background.
+# type: bool
+# menu_clouds = true
+
+# 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
+# edge pixels when images are scaled by non-integer sizes.
+# type: float
+# gui_scaling = 1.0
+
+# When gui_scaling_filter is true, all GUI images need to be
+# filtered in software, but some images are generated directly
+# to hardware (e.g. render-to-texture for nodes in inventory).
+# type: bool
+# gui_scaling_filter = false
+
+# When gui_scaling_filter_txr2img is true, copy those images
+# from hardware to software for scaling. When false, fall back
+# to the old scaling method, for video drivers that don't
+# properly support downloading textures back from hardware.
+# type: bool
+# gui_scaling_filter_txr2img = true
+
+# Delay showing tooltips, stated in milliseconds.
+# type: int
+# tooltip_show_delay = 400
+
+# Append item name to tooltip.
+# type: bool
+# tooltip_append_itemname = false
+
+# Whether freetype fonts are used, requires freetype support to be compiled in.
+# type: bool
+# freetype = true
+
+# Path to TrueTypeFont or bitmap.
+# type: filepath
+# font_path = fonts/liberationsans.ttf
+
+# type: int
+# font_size = 16
+
+# Font shadow offset, if 0 then shadow will not be drawn.
+# type: int
+# font_shadow = 1
+
+# Font shadow alpha (opaqueness, between 0 and 255).
+# type: int min: 0 max: 255
+# font_shadow_alpha = 127
+
+# type: filepath
+# mono_font_path = fonts/liberationmono.ttf
+
+# type: int
+# mono_font_size = 15
+
+# This font will be used for certain languages.
+# type: filepath
+# fallback_font_path = fonts/DroidSansFallbackFull.ttf
+
+# type: int
+# fallback_font_size = 15
+
+# type: int
+# fallback_font_shadow = 1
+
+# type: int min: 0 max: 255
+# fallback_font_shadow_alpha = 128
+
+# Path to save screenshots at.
+# type: path
+# screenshot_path =
+
+# Format of screenshots.
+# type: enum values: png, jpg, bmp, pcx, ppm, tga
+# screenshot_format = png
+
+# Screenshot quality. Only used for JPEG format.
+# 1 means worst quality; 100 means best quality.
+# Use 0 for default quality.
+# type: int min: 0 max: 100
+# screenshot_quality = 0
+
+## Advanced
+
+# Adjust dpi configuration to your screen (non X11/Android only) e.g. for 4k screens.
+# type: int
+# screen_dpi = 72
+
+# Windows systems only: Start Minetest with the command line window in the background.
+# Contains the same information as the file debug.txt (default name).
+# type: bool
+# enable_console = false
+
+#
+# Sound
+#
+
+# type: bool
+# enable_sound = true
+
+# type: float min: 0 max: 1
+# sound_volume = 0.7
+
+# type: bool
+# mute_sound = 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.
+# type: string
+# address =
+
+# Port to connect to (UDP).
+# Note that the port field in the main menu overrides this setting.
+# type: int min: 1 max: 65535
+# remote_port = 30000
+
+# Save the map received by the client on disk.
+# type: bool
+# enable_local_map_saving = 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.
+# type: bool
+# enable_remote_media_server = true
+
+# Enable Lua modding support on client.
+# This support is experimental and API can change.
+# type: bool
+# enable_client_modding = false
+
+# URL to the server list displayed in the Multiplayer Tab.
+# type: string
+# serverlist_url = servers.minetest.net
+
+# File in client/serverlist/ that contains your favorite servers displayed in the Multiplayer Tab.
+# type: string
+# serverlist_file = favoriteservers.txt
+
+# Maximum size of the out chat queue. 0 to disable queueing and -1 to make the queue size unlimited
+# type: int
+# max_out_chat_queue_size = 20
+
+# Open the pause menu when the window's focus is lost. Does not pause if a formspec is open.
+# type: bool
+# pause_on_lost_focus = false
+
+## Advanced
+
+# Timeout for client to remove unused map data from memory.
+# type: int
+# client_unload_unused_data_timeout = 600
+
+# Maximum number of mapblocks for client to be kept in memory.
+# Set to -1 for unlimited amount.
+# type: int
+# client_mapblock_limit = 5000
+
+# Whether to show the client debug info (has the same effect as hitting F5).
+# type: bool
+# show_debug = false
+
+#
+# Server / Singleplayer
+#
+
+# Name of the server, to be displayed when players join and in the serverlist.
+# type: string
+# server_name = Minetest server
+
+# Description of server, to be displayed when players join and in the serverlist.
+# type: string
+# server_description = mine here
+
+# Domain name of server, to be displayed in the serverlist.
+# type: string
+# server_address = game.minetest.net
+
+# Homepage of server, to be displayed in the serverlist.
+# type: string
+# server_url = http://minetest.net
+
+# Automaticaly report to the serverlist.
+# type: bool
+# server_announce = false
+
+# Announce to this serverlist.
+# If you want to announce your ipv6 address, use serverlist_url = v6.servers.minetest.net.
+# type: string
+# serverlist_url = servers.minetest.net
+
+# Remove color codes from incoming chat messages
+# Use this to stop players from being able to use color in their messages
+# type: bool
+# strip_color_codes = false
+
+## Network
+
+# Network port to listen (UDP).
+# This value will be overridden when starting from the main menu.
+# type: int
+# port = 30000
+
+# The network interface that the server listens on.
+# type: string
+# bind_address =
+
+# Enable to disallow old clients from connecting.
+# Older clients are compatible in the sense that they will not crash when connecting
+# to new servers, but they may not support all new features that you are expecting.
+# type: bool
+# strict_protocol_version_checking = false
+
+# Specifies URL from which client fetches media instead of using UDP.
+# $filename should be accessible from $remote_media$filename via cURL
+# (obviously, remote_media should end with a slash).
+# Files that are not present will be fetched the usual way.
+# type: string
+# remote_media =
+
+# Enable/disable running an IPv6 server. An IPv6 server may be restricted
+# to IPv6 clients, depending on system configuration.
+# Ignored if bind_address is set.
+# type: bool
+# ipv6_server = false
+
+### Advanced
+
+# Maximum number of blocks that are simultaneously sent per client.
+# The maximum total count is calculated dynamically:
+# max_total = ceil((#clients + max_users) * per_client / 4)
+# type: int
+# max_simultaneous_block_sends_per_client = 10
+
+# 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.
+# type: float
+# full_block_send_enable_min_time_from_building = 2.0
+
+# Maximum number of packets sent per send step, if you have a slow connection
+# try reducing it, but don't reduce it to a number below double of targeted
+# client number.
+# type: int
+# max_packets_per_iteration = 1024
+
+## Game
+
+# Default game when creating a new world.
+# This will be overridden when creating a world from the main menu.
+# type: string
+# default_game = minetest
+
+# Message of the day displayed to players connecting.
+# type: string
+# motd =
+
+# Maximum number of players that can connect simultaneously.
+# type: int
+# max_users = 15
+
+# World directory (everything in the world is stored here).
+# Not needed if starting from the main menu.
+# type: path
+# map-dir =
+
+# Time in seconds for item entity (dropped items) to live.
+# Setting it to -1 disables the feature.
+# type: int
+# item_entity_ttl = 900
+
+# If enabled, show the server status message on player connection.
+# type: bool
+# show_statusline_on_connect = true
+
+# Enable players getting damage and dying.
+# type: bool
+# enable_damage = false
+
+# Enable creative mode for new created maps.
+# type: bool
+# creative_mode = false
+
+# A chosen map seed for a new map, leave empty for random.
+# Will be overridden when creating a new world in the main menu.
+# type: string
+# fixed_map_seed =
+
+# New users need to input this password.
+# type: string
+# default_password =
+
+# The privileges that new users automatically get.
+# See /privs in game for a full list on your server and mod configuration.
+# type: string
+# default_privs = interact, shout
+
+# Privileges that players with basic_privs can grant
+# type: string
+# basic_privs = interact, shout
+
+# Whether players are shown to clients without any range limit.
+# Deprecated, use the setting player_transfer_distance instead.
+# type: bool
+# unlimited_player_transfer_distance = true
+
+# Defines the maximal player transfer distance in blocks (0 = unlimited).
+# type: int
+# player_transfer_distance = 0
+
+# Whether to allow players to damage and kill each other.
+# type: bool
+# enable_pvp = true
+
+# Enable mod channels support.
+# type: bool
+# enable_mod_channels = false
+
+# If this is set, players will always (re)spawn at the given position.
+# type: string
+# static_spawnpoint =
+
+# If enabled, new players cannot join with an empty password.
+# type: bool
+# disallow_empty_password = false
+
+# If enabled, disable cheat prevention in multiplayer.
+# type: bool
+# disable_anticheat = false
+
+# If enabled, actions are recorded for rollback.
+# This option is only read when server starts.
+# type: bool
+# enable_rollback_recording = false
+
+# A message to be displayed to all clients when the server shuts down.
+# type: string
+# kick_msg_shutdown = Server shutting down.
+
+# A message to be displayed to all clients when the server crashes.
+# type: string
+# kick_msg_crash = This server has experienced an internal error. You will now be disconnected.
+
+# Whether to ask clients to reconnect after a (Lua) crash.
+# Set this to true if your server is set up to restart automatically.
+# type: bool
+# ask_reconnect_on_crash = false
+
+# From how far clients know about objects, stated in mapblocks (16 nodes).
+# type: int
+# active_object_send_range_blocks = 3
+
+# How large area of blocks are subject to the active block stuff, stated in mapblocks (16 nodes).
+# In active blocks objects are loaded and ABMs run.
+# type: int
+# active_block_range = 3
+
+# From how far blocks are sent to clients, stated in mapblocks (16 nodes).
+# type: int
+# max_block_send_distance = 10
+
+# Maximum number of forceloaded mapblocks.
+# type: int
+# max_forceloaded_blocks = 16
+
+# Interval of sending time of day to clients.
+# type: int
+# time_send_interval = 5
+
+# Controls length of day/night cycle.
+# Examples: 72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged.
+# type: int
+# time_speed = 72
+
+# Time of day when a new world is started, in millihours (0-23999).
+# type: int min: 0 max: 23999
+# world_start_time = 5250
+
+# Interval of saving important changes in the world, stated in seconds.
+# type: float
+# server_map_save_interval = 5.3
+
+### Physics
+
+# type: float
+# movement_acceleration_default = 3
+
+# type: float
+# movement_acceleration_air = 2
+
+# type: float
+# movement_acceleration_fast = 10
+
+# type: float
+# movement_speed_walk = 4
+
+# type: float
+# movement_speed_crouch = 1.35
+
+# type: float
+# movement_speed_fast = 20
+
+# type: float
+# movement_speed_climb = 3
+
+# type: float
+# movement_speed_jump = 6.5
+
+# type: float
+# movement_liquid_fluidity = 1
+
+# type: float
+# movement_liquid_fluidity_smooth = 0.5
+
+# type: float
+# movement_liquid_sink = 10
+
+# type: float
+# movement_gravity = 9.81
+
+### Advanced
+
+# Handling for deprecated lua api calls:
+# - legacy: (try to) mimic old behaviour (default for release).
+# - log: mimic and log backtrace of deprecated call (default for debug).
+# - error: abort on usage of deprecated call (suggested for mod developers).
+# type: enum values: legacy, log, error
+# deprecated_lua_api_handling = legacy
+
+# Number of extra blocks that can be loaded by /clearobjects at once.
+# This is a trade-off between sqlite transaction overhead and
+# memory consumption (4096=100MB, as a rule of thumb).
+# type: int
+# max_clearobjects_extra_loaded_blocks = 4096
+
+# How much the server will wait before unloading unused mapblocks.
+# Higher value is smoother, but will use more RAM.
+# type: int
+# server_unload_unused_data_timeout = 29
+
+# Maximum number of statically stored objects in a block.
+# type: int
+# max_objects_per_block = 64
+
+# See http://www.sqlite.org/pragma.html#pragma_synchronous
+# type: enum values: 0, 1, 2
+# sqlite_synchronous = 2
+
+# Length of a server tick and the interval at which objects are generally updated over network.
+# type: float
+# dedicated_server_step = 0.09
+
+# Time in between active block management cycles
+# type: float
+# active_block_mgmt_interval = 2.0
+
+# Length of time between ABM execution cycles
+# type: float
+# abm_interval = 1.0
+
+# Length of time between NodeTimer execution cycles
+# type: float
+# nodetimer_interval = 0.2
+
+# If enabled, invalid world data won't cause the server to shut down.
+# Only enable this if you know what you are doing.
+# type: bool
+# ignore_world_load_errors = false
+
+# Max liquids processed per step.
+# type: int
+# liquid_loop_max = 100000
+
+# The time (in seconds) that the liquids queue may grow beyond processing
+# capacity until an attempt is made to decrease its size by dumping old queue
+# items. A value of 0 disables the functionality.
+# type: int
+# liquid_queue_purge_time = 0
+
+# Liquid update interval in seconds.
+# type: float
+# liquid_update = 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)
+# type: int min: 2
+# block_send_optimize_distance = 4
+
+# 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
+# sent to the client 50-80%. The client will not longer receive most invisible
+# so that the utility of noclip mode is reduced.
+# type: bool
+# server_side_occlusion_culling = true
+
+# Restricts the access of certain client-side functions on servers
+# Combine these byteflags below to restrict more 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)
+# type: int
+# LOOKUP_NODES_LIMIT: 16 (limits get_node call client-side to csm_flavour_noderange_limit)
+# csm_flavour_limits = 18
+
+# If the CSM flavour for node range is enabled, get_node is limited to
+# this many nodes from the player.
+# type: int
+# csm_flavour_noderange_limit = 8
+
+## Security
+
+# Prevent mods from doing insecure things like running shell commands.
+# type: bool
+# secure.enable_security = true
+
+# Comma-separated list of trusted mods that are allowed to access insecure
+# functions even when mod security is on (via request_insecure_environment()).
+# type: string
+# secure.trusted_mods =
+
+# Comma-separated list of mods that are allowed to access HTTP APIs, which
+# allow them to upload and download data to/from the internet.
+# type: string
+# secure.http_mods =
+
+## 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.
+# type: bool
+# profiler.load = false
+
+# The default format in which profiles are being saved,
+# when calling `/profiler save [format]` without format.
+# type: enum values: txt, csv, lua, json, json_pretty
+# profiler.default_report_format = txt
+
+# The file path relative to your worldpath in which profiles will be saved to.
+# type: string
+# profiler.report_path = ""
+
+#### Instrumentation
+
+# Instrument the methods of entities on registration.
+# type: bool
+# instrument.entity = true
+
+# Instrument the action function of Active Block Modifiers on registration.
+# type: bool
+# instrument.abm = true
+
+# Instrument the action function of Loading Block Modifiers on registration.
+# type: bool
+# instrument.lbm = true
+
+# Instrument chatcommands on registration.
+# type: bool
+# instrument.chatcommand = true
+
+# Instrument global callback functions on registration.
+# (anything you pass to a minetest.register_*() function)
+# type: bool
+# instrument.global_callback = true
+
+##### Advanced
+
+# Instrument builtin.
+# This is usually only needed by core/builtin contributors
+# type: bool
+# instrument.builtin = 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.
+# type: bool
+# instrument.profiler = 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.
+# type: string
+# name =
+
+# Set the language. Leave empty to use the system language.
+# A restart is required after changing this.
+# type: enum values: , 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
+# language =
+
+# Level of logging to be written to debug.txt:
+# - <nothing> (no logging)
+# - none (messages with no level)
+# - error
+# - warning
+# - action
+# - info
+# - verbose
+# type: enum values: , none, error, warning, action, info, verbose
+# debug_log_level = action
+
+# IPv6 support.
+# type: bool
+# enable_ipv6 = true
+
+## Advanced
+
+# Default timeout for cURL, stated in milliseconds.
+# Only has an effect if compiled with cURL.
+# type: int
+# curl_timeout = 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.
+# type: int
+# curl_parallel_limit = 8
+
+# Maximum time in ms a file download (e.g. a mod download) may take.
+# type: int
+# curl_file_download_timeout = 300000
+
+# Makes DirectX work with LuaJIT. Disable if it causes troubles.
+# type: bool
+# high_precision_fpu = true
+
+# Replaces the default main menu with a custom one.
+# type: string
+# main_menu_script =
+
+# type: int
+# main_menu_game_mgr = 0
+
+# type: int
+# main_menu_mod_mgr = 1
+
+# Print the engine's profiling data in regular intervals (in seconds). 0 = disable. Useful for developers.
+# type: int
+# profiler_print_interval = 0
+
+#
+# Mapgen
+#
+
+# Name of map generator to be used when creating a new world.
+# Creating a world in the main menu will override this.
+# type: enum values: v5, v6, v7, flat, valleys, fractal, singlenode
+# mg_name = v7
+
+# Water surface level of the world.
+# type: int
+# water_level = 1
+
+# From how far blocks are generated for clients, stated in mapblocks (16 nodes).
+# type: int
+# max_block_generate_distance = 6
+
+# Limit of map generation, in nodes, in all 6 directions from (0, 0, 0).
+# Only mapchunks completely within the mapgen limit are generated.
+# Value is stored per-world.
+# type: int min: 0 max: 31000
+# mapgen_limit = 31000
+
+# 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 enabled are not modified from the default.
+# Flags starting with 'no' are used to explicitly disable them.
+# type: flags possible values: caves, dungeons, light, decorations, nocaves, nodungeons, nolight, nodecorations
+# mg_flags = caves,dungeons,light,decorations
+
+# Whether dungeons occasionally project from the terrain.
+# type: bool
+# projecting_dungeons = true
+
+## Biome API temperature and humidity noise parameters
+
+# Temperature variation for biomes.
+# type: noise_params_2d
+# mg_biome_np_heat = {
+# offset = 50,
+# scale = 50,
+# spread = (1000, 1000, 1000),
+# seed = 5349,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Small-scale temperature variation for blending biomes on borders.
+# type: noise_params_2d
+# mg_biome_np_heat_blend = {
+# offset = 0,
+# scale = 1.5,
+# spread = (8, 8, 8),
+# seed = 13,
+# octaves = 2,
+# persistence = 1.0,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Humidity variation for biomes.
+# type: noise_params_2d
+# mg_biome_np_humidity = {
+# offset = 50,
+# scale = 50,
+# spread = (1000, 1000, 1000),
+# seed = 842,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Small-scale humidity variation for blending biomes on borders.
+# type: noise_params_2d
+# mg_biome_np_humidity_blend = {
+# offset = 0,
+# scale = 1.5,
+# spread = (8, 8, 8),
+# seed = 90003,
+# octaves = 2,
+# persistence = 1.0,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+## Mapgen V5
+
+# Map generation attributes specific to Mapgen v5.
+# Flags that are not enabled are not modified from the default.
+# Flags starting with 'no' are used to explicitly disable them.
+# type: flags possible values: caverns, nocaverns
+# mgv5_spflags = caverns
+
+# Controls width of tunnels, a smaller value creates wider tunnels.
+# type: float
+# mgv5_cave_width = 0.125
+
+# Y of upper limit of large caves.
+# type: int
+# mgv5_large_cave_depth = -256
+
+# Y of upper limit of lava in large caves.
+# type: int
+# mgv5_lava_depth = -256
+
+# Y-level of cavern upper limit.
+# type: int
+# mgv5_cavern_limit = -256
+
+# Y-distance over which caverns expand to full size.
+# type: int
+# mgv5_cavern_taper = 256
+
+# Defines full size of caverns, smaller values create larger caverns.
+# type: float
+# mgv5_cavern_threshold = 0.7
+
+### Noises
+
+# Variation of biome filler depth.
+# type: noise_params_2d
+# mgv5_np_filler_depth = {
+# offset = 0,
+# scale = 1,
+# spread = (150, 150, 150),
+# seed = 261,
+# octaves = 4,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of terrain vertical scale.
+# When noise is < -0.55 terrain is near-flat.
+# type: noise_params_2d
+# mgv5_np_factor = {
+# offset = 0,
+# scale = 1,
+# spread = (250, 250, 250),
+# seed = 920381,
+# octaves = 3,
+# persistence = 0.45,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Y-level of average terrain surface.
+# type: noise_params_2d
+# mgv5_np_height = {
+# offset = 0,
+# scale = 10,
+# spread = (250, 250, 250),
+# seed = 84174,
+# octaves = 4,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# First of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgv5_np_cave1 = {
+# offset = 0,
+# scale = 12,
+# spread = (50, 50, 50),
+# seed = 52534,
+# octaves = 4,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Second of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgv5_np_cave2 = {
+# offset = 0,
+# scale = 12,
+# spread = (50, 50, 50),
+# seed = 10325,
+# octaves = 4,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# 3D noise defining giant caverns.
+# type: noise_params_3d
+# mgv5_np_cavern = {
+# offset = 0,
+# scale = 1,
+# spread = (384, 128, 384),
+# seed = 723,
+# octaves = 5,
+# persistence = 0.63,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# 3D noise defining terrain.
+# type: noise_params_3d
+# 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
+
+# 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 enabled are not modified from the default.
+# Flags starting with 'no' are used to explicitly disable them.
+# type: flags possible values: jungles, biomeblend, mudflow, snowbiomes, flat, trees, nojungles, nobiomeblend, nomudflow, nosnowbiomes, noflat, notrees
+# mgv6_spflags = jungles,biomeblend,mudflow,snowbiomes,trees
+
+# Deserts occur when np_biome exceeds this value.
+# When the new biome system is enabled, this is ignored.
+# type: float
+# mgv6_freq_desert = 0.45
+
+# Sandy beaches occur when np_beach exceeds this value.
+# type: float
+# mgv6_freq_beach = 0.15
+
+### Noises
+
+# Y-level of lower terrain and lakebeds.
+# type: noise_params_2d
+# mgv6_np_terrain_base = {
+# offset = -4,
+# scale = 20,
+# spread = (250, 250, 250),
+# seed = 82341,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Y-level of higher (cliff-top) terrain.
+# type: noise_params_2d
+# mgv6_np_terrain_higher = {
+# offset = 20,
+# scale = 16,
+# spread = (500, 500, 500),
+# seed = 85039,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Varies steepness of cliffs.
+# type: noise_params_2d
+# mgv6_np_steepness = {
+# offset = 0.85,
+# scale = 0.5,
+# spread = (125, 125, 125),
+# seed = -932,
+# octaves = 5,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines areas of 'terrain_higher' (cliff-top terrain).
+# type: noise_params_2d
+# mgv6_np_height_select = {
+# offset = 0.5,
+# scale = 1,
+# spread = (250, 250, 250),
+# seed = 4213,
+# octaves = 5,
+# persistence = 0.69,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Varies depth of biome surface nodes.
+# type: noise_params_2d
+# mgv6_np_mud = {
+# offset = 4,
+# scale = 2,
+# spread = (200, 200, 200),
+# seed = 91013,
+# octaves = 3,
+# persistence = 0.55,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines areas with sandy beaches.
+# type: noise_params_2d
+# mgv6_np_beach = {
+# offset = 0,
+# scale = 1,
+# spread = (250, 250, 250),
+# seed = 59420,
+# octaves = 3,
+# persistence = 0.50,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Temperature variation for biomes.
+# type: noise_params_2d
+# mgv6_np_biome = {
+# offset = 0,
+# scale = 1,
+# spread = (500, 500, 500),
+# seed = 9130,
+# octaves = 3,
+# persistence = 0.50,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of number of caves.
+# type: noise_params_2d
+# mgv6_np_cave = {
+# offset = 6,
+# scale = 6,
+# spread = (250, 250, 250),
+# seed = 34329,
+# octaves = 3,
+# persistence = 0.50,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Humidity variation for biomes.
+# type: noise_params_2d
+# mgv6_np_humidity = {
+# offset = 0.5,
+# scale = 0.5,
+# spread = (500, 500, 500),
+# seed = 72384,
+# octaves = 3,
+# persistence = 0.50,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines tree areas and tree density.
+# type: noise_params_2d
+# mgv6_np_trees = {
+# offset = 0,
+# scale = 1,
+# spread = (125, 125, 125),
+# seed = 2,
+# octaves = 4,
+# persistence = 0.66,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines areas where trees have apples.
+# type: noise_params_2d
+# mgv6_np_apple_trees = {
+# offset = 0,
+# scale = 1,
+# spread = (100, 100, 100),
+# seed = 342902,
+# octaves = 3,
+# persistence = 0.45,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+## Mapgen V7
+
+# Map generation attributes specific to Mapgen v7.
+# '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.
+# type: flags possible values: mountains, ridges, floatlands, caverns, nomountains, noridges, nofloatlands, nocaverns
+# mgv7_spflags = mountains,ridges,nofloatlands,caverns
+
+# Y of mountain density gradient zero level. Used to shift mountains vertically.
+# type: int
+# mgv7_mount_zero_level = 0
+
+# Controls width of tunnels, a smaller value creates wider tunnels.
+# type: float
+# mgv7_cave_width = 0.09
+
+# Y of upper limit of large caves.
+# type: int
+# mgv7_large_cave_depth = -33
+
+# Y of upper limit of lava in large caves.
+# type: int
+# mgv7_lava_depth = -256
+
+# Controls the density of floatland mountain terrain.
+# Is an offset added to the 'np_mountain' noise value.
+# type: float
+# mgv7_float_mount_density = 0.6
+
+# Typical maximum height, above and below midpoint, of floatland mountain terrain.
+# type: float
+# mgv7_float_mount_height = 128.0
+
+# Y-level of floatland midpoint and lake surface.
+# type: int
+# mgv7_floatland_level = 1280
+
+# Y-level to which floatland shadows extend.
+# type: int
+# mgv7_shadow_limit = 1024
+
+# Y-level of cavern upper limit.
+# type: int
+# mgv7_cavern_limit = -256
+
+# Y-distance over which caverns expand to full size.
+# type: int
+# mgv7_cavern_taper = 256
+
+# Defines full size of caverns, smaller values create larger caverns.
+# type: float
+# mgv7_cavern_threshold = 0.7
+
+### Noises
+
+# Y-level of higher (cliff-top) terrain.
+# type: noise_params_2d
+# mgv7_np_terrain_base = {
+# offset = 4,
+# scale = 70,
+# spread = (600, 600, 600),
+# seed = 82341,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Y-level of lower terrain and lakebeds.
+# type: noise_params_2d
+# mgv7_np_terrain_alt = {
+# offset = 4,
+# scale = 25,
+# spread = (600, 600, 600),
+# seed = 5934,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Varies roughness of terrain.
+# Defines the 'persistence' value for terrain_base and terrain_alt noises.
+# type: noise_params_2d
+# mgv7_np_terrain_persist = {
+# offset = 0.6,
+# scale = 0.1,
+# spread = (2000, 2000, 2000),
+# seed = 539,
+# octaves = 3,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines areas of higher (cliff-top) terrain and affects steepness of cliffs.
+# type: noise_params_2d
+# mgv7_np_height_select = {
+# offset = -8,
+# scale = 16,
+# spread = (500, 500, 500),
+# seed = 4213,
+# octaves = 6,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of biome filler depth.
+# type: noise_params_2d
+# mgv7_np_filler_depth = {
+# offset = 0,
+# scale = 1.2,
+# spread = (150, 150, 150),
+# seed = 261,
+# octaves = 3,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of maximum mountain height (in nodes).
+# type: noise_params_2d
+# mgv7_np_mount_height = {
+# offset = 256,
+# scale = 112,
+# spread = (1000, 1000, 1000),
+# seed = 72449,
+# octaves = 3,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines large-scale river channel structure.
+# type: noise_params_2d
+# mgv7_np_ridge_uwater = {
+# offset = 0,
+# scale = 1,
+# spread = (1000, 1000, 1000),
+# seed = 85039,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Defines areas of floatland smooth terrain.
+# Smooth floatlands occur when noise > 0.
+# type: noise_params_2d
+# mgv7_np_floatland_base = {
+# offset = -0.6,
+# scale = 1.5,
+# spread = (600, 600, 600),
+# seed = 114,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of hill height and lake depth on floatland smooth terrain.
+# type: noise_params_2d
+# mgv7_np_float_base_height = {
+# offset = 48,
+# scale = 24,
+# spread = (300, 300, 300),
+# seed = 907,
+# octaves = 4,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 3D noise defining mountain structure and height.
+# Also defines structure of floatland mountain terrain.
+# type: noise_params_3d
+# mgv7_np_mountain = {
+# offset = -0.6,
+# scale = 1,
+# spread = (250, 350, 250),
+# seed = 5333,
+# octaves = 5,
+# persistence = 0.63,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# 3D noise defining structure of river canyon walls.
+# type: noise_params_3d
+# mgv7_np_ridge = {
+# offset = 0,
+# scale = 1,
+# spread = (100, 100, 100),
+# seed = 6467,
+# octaves = 4,
+# persistence = 0.75,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# 3D noise defining giant caverns.
+# type: noise_params_3d
+# mgv7_np_cavern = {
+# offset = 0,
+# scale = 1,
+# spread = (384, 128, 384),
+# seed = 723,
+# octaves = 5,
+# persistence = 0.63,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# First of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgv7_np_cave1 = {
+# offset = 0,
+# scale = 12,
+# spread = (61, 61, 61),
+# seed = 52534,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Second of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgv7_np_cave2 = {
+# offset = 0,
+# scale = 12,
+# spread = (67, 67, 67),
+# seed = 10325,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+## Mapgen Carpathian
+
+# Map generation attributes specific to Mapgen Carpathian.
+# Flags that are not enabled are not modified from the default.
+# Flags starting with 'no' are used to explicitly disable them.
+# type: flags possible values: caverns, nocaverns
+# mgcarpathian_spflags = caverns
+
+# Controls width of tunnels, a smaller value creates wider tunnels.
+# type: float
+# mgcarpathian_cave_width = 0.09
+
+# Y of upper limit of large caves.
+# type: int
+# mgcarpathian_large_cave_depth = -33
+
+# Y of upper limit of lava in large caves.
+# type: int
+# mgcarpathian_lava_depth = -256
+
+# Y-level of cavern upper limit.
+# type: int
+# mgcarpathian_cavern_limit = -256
+
+# Y-distance over which caverns expand to full size.
+# type: int
+# mgcarpathian_cavern_taper = 256
+
+# Defines full size of caverns, smaller values create larger caverns.
+# type: float
+# mgcarpathian_cavern_threshold = 0.7
+
+### Noises
+
+# 2D noise that defines the base ground level.
+# type: noise_params_2d
+# mgcarpathian_np_base = {
+# offset = 12,
+# scale = 1,
+# spread = (2557, 2557, 2557),
+# seed = 6538,
+# octaves = 4,
+# persistence = 0.8,
+# lacunarity = 0.5,
+# flags = "eased"
+# }
+
+# Variation of biome filler depth.
+# type: noise_params_2d
+# mgcarpathian_np_filler_depth = {
+# offset = 0,
+# scale = 1,
+# spread = (128, 128, 128),
+# seed = 261,
+# octaves = 3,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# First of 4 2D noises that together define hill/mountain range height.
+# type: noise_params_2d
+# mgcarpathian_np_height1 = {
+# offset = 0,
+# scale = 5,
+# spread = (251, 251, 251),
+# seed = 9613,
+# octaves = 5,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Second of 4 2D noises that together define hill/mountain range height.
+# type: noise_params_2d
+# mgcarpathian_np_height2 = {
+# offset = 0,
+# scale = 5,
+# spread = (383, 383, 383),
+# seed = 1949,
+# octaves = 5,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Third of 4 2D noises that together define hill/mountain range height.
+# type: noise_params_2d
+# mgcarpathian_np_height3 = {
+# offset = 0,
+# scale = 5,
+# spread = (509, 509, 509),
+# seed = 3211,
+# octaves = 5,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Fourth of 4 2D noises that together define hill/mountain range height.
+# type: noise_params_2d
+# mgcarpathian_np_height4 = {
+# offset = 0,
+# scale = 5,
+# spread = (631, 631, 631),
+# seed = 1583,
+# octaves = 5,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 2D noise that controls the size/occurance of rolling hills.
+# type: noise_params_2d
+# mgcarpathian_np_hills_terrain = {
+# offset = 1,
+# scale = 1,
+# spread = (1301, 1301, 1301),
+# seed = 1692,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 2D noise that controls the size/occurance of ridged mountain ranges.
+# type: noise_params_2d
+# mgcarpathian_np_ridge_terrain = {
+# offset = 1,
+# scale = 1,
+# spread = (1889, 1889, 1889),
+# seed = 3568,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 2D noise that controls the size/occurance of step mountain ranges.
+# type: noise_params_2d
+# mgcarpathian_np_step_terrain = {
+# offset = 1,
+# scale = 1,
+# spread = (1889, 1889, 1889),
+# seed = 4157,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 2D noise that controls the shape/size of rolling hills.
+# type: noise_params_2d
+# mgcarpathian_np_hills = {
+# offset = 0,
+# scale = 3,
+# spread = (257, 257, 257),
+# seed = 6604,
+# octaves = 6,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 2D noise that controls the shape/size of ridged mountains.
+# type: noise_params_2d
+# mgcarpathian_np_ridge_mnt = {
+# offset = 0,
+# scale = 12,
+# spread = (743, 743, 743),
+# seed = 5520,
+# octaves = 6,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 2D noise that controls the shape/size of step mountains.
+# type: noise_params_2d
+# mgcarpathian_np_step_mnt = {
+# offset = 0,
+# scale = 8,
+# spread = (509, 509, 509),
+# seed = 2590,
+# octaves = 6,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# 3D noise for mountain overhangs, cliffs, etc. Usually small variations.
+# type: noise_params_3d
+# mgcarpathian_np_mnt_var = {
+# offset = 0,
+# scale = 1,
+# spread = (499, 499, 499),
+# seed = 2490,
+# octaves = 5,
+# persistence = 0.55,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# First of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgcarpathian_np_cave1 = {
+# offset = 0,
+# scale = 12,
+# spread = (61, 61, 61),
+# seed = 52534,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Second of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgcarpathian_np_cave2 = {
+# offset = 0,
+# scale = 12,
+# spread = (67, 67, 67),
+# seed = 10325,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# 3D noise defining giant caverns.
+# type: noise_params_3d
+# mgcarpathian_np_cavern = {
+# offset = 0,
+# scale = 1,
+# spread = (384, 128, 384),
+# seed = 723,
+# octaves = 5,
+# persistence = 0.63,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+## Mapgen Flat
+
+# Map generation attributes specific to Mapgen flat.
+# Occasional lakes and hills can be added to the flat world.
+# Flags that are not enabled are not modified from the default.
+# Flags starting with 'no' are used to explicitly disable them.
+# type: flags possible values: lakes, hills, nolakes, nohills
+# mgflat_spflags = nolakes,nohills
+
+# Y of flat ground.
+# type: int
+# mgflat_ground_level = 8
+
+# Y of upper limit of large caves.
+# type: int
+# mgflat_large_cave_depth = -33
+
+# Y of upper limit of lava in large caves.
+# type: int
+# mgflat_lava_depth = -256
+
+# Controls width of tunnels, a smaller value creates wider tunnels.
+# type: float
+# mgflat_cave_width = 0.09
+
+# Terrain noise threshold for lakes.
+# Controls proportion of world area covered by lakes.
+# Adjust towards 0.0 for a larger proportion.
+# type: float
+# mgflat_lake_threshold = -0.45
+
+# Controls steepness/depth of lake depressions.
+# type: float
+# mgflat_lake_steepness = 48.0
+
+# Terrain noise threshold for hills.
+# Controls proportion of world area covered by hills.
+# Adjust towards 0.0 for a larger proportion.
+# type: float
+# mgflat_hill_threshold = 0.45
+
+# Controls steepness/height of hills.
+# type: float
+# mgflat_hill_steepness = 64.0
+
+### Noises
+
+# Defines location and terrain of optional hills and lakes.
+# type: noise_params_2d
+# mgflat_np_terrain = {
+# offset = 0,
+# scale = 1,
+# spread = (600, 600, 600),
+# seed = 7244,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of biome filler depth.
+# type: noise_params_2d
+# mgflat_np_filler_depth = {
+# offset = 0,
+# scale = 1.2,
+# spread = (150, 150, 150),
+# seed = 261,
+# octaves = 3,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# First of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgflat_np_cave1 = {
+# offset = 0,
+# scale = 12,
+# spread = (61, 61, 61),
+# seed = 52534,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Second of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgflat_np_cave2 = {
+# offset = 0,
+# scale = 12,
+# spread = (67, 67, 67),
+# seed = 10325,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+## Mapgen Fractal
+
+# Controls width of tunnels, a smaller value creates wider tunnels.
+# type: float
+# mgfractal_cave_width = 0.09
+
+# Y of upper limit of large caves.
+# type: int
+# mgfractal_large_cave_depth = -33
+
+# Y of upper limit of lava in large caves.
+# type: int
+# mgfractal_lava_depth = -256
+
+# Choice of 18 fractals from 9 formulas.
+# 1 = 4D "Roundy" mandelbrot set.
+# 2 = 4D "Roundy" julia set.
+# 3 = 4D "Squarry" mandelbrot set.
+# 4 = 4D "Squarry" julia set.
+# 5 = 4D "Mandy Cousin" mandelbrot set.
+# 6 = 4D "Mandy Cousin" julia set.
+# 7 = 4D "Variation" mandelbrot set.
+# 8 = 4D "Variation" julia set.
+# 9 = 3D "Mandelbrot/Mandelbar" mandelbrot set.
+# 10 = 3D "Mandelbrot/Mandelbar" julia set.
+# 11 = 3D "Christmas Tree" mandelbrot set.
+# 12 = 3D "Christmas Tree" julia set.
+# 13 = 3D "Mandelbulb" mandelbrot set.
+# 14 = 3D "Mandelbulb" julia set.
+# 15 = 3D "Cosine Mandelbulb" mandelbrot set.
+# 16 = 3D "Cosine Mandelbulb" julia set.
+# 17 = 4D "Mandelbulb" mandelbrot set.
+# 18 = 4D "Mandelbulb" julia set.
+# type: int min: 1 max: 18
+# mgfractal_fractal = 1
+
+# Iterations of the recursive function.
+# Controls the amount of fine detail.
+# type: int
+# mgfractal_iterations = 11
+
+# Approximate (X,Y,Z) scale of fractal in nodes.
+# type: v3f
+# mgfractal_scale = (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.
+# Range roughly -2 to 2. Multiply by 'scale' for offset in nodes.
+# type: v3f
+# mgfractal_offset = (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.
+# Has no effect on 3D fractals.
+# Range roughly -2 to 2.
+# type: float
+# mgfractal_slice_w = 0.0
+
+# Julia set only: X component of hypercomplex constant determining julia shape.
+# Range roughly -2 to 2.
+# type: float
+# mgfractal_julia_x = 0.33
+
+# Julia set only: Y component of hypercomplex constant determining julia shape.
+# Range roughly -2 to 2.
+# type: float
+# mgfractal_julia_y = 0.33
+
+# Julia set only: Z component of hypercomplex constant determining julia shape.
+# Range roughly -2 to 2.
+# type: float
+# mgfractal_julia_z = 0.33
+
+# Julia set only: W component of hypercomplex constant determining julia shape.
+# Has no effect on 3D fractals.
+# Range roughly -2 to 2.
+# type: float
+# mgfractal_julia_w = 0.33
+
+### Noises
+
+# Y-level of seabed.
+# type: noise_params_2d
+# mgfractal_np_seabed = {
+# offset = -14,
+# scale = 9,
+# spread = (600, 600, 600),
+# seed = 41900,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Variation of biome filler depth.
+# type: noise_params_2d
+# mgfractal_np_filler_depth = {
+# offset = 0,
+# scale = 1.2,
+# spread = (150, 150, 150),
+# seed = 261,
+# octaves = 3,
+# persistence = 0.7,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# First of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgfractal_np_cave1 = {
+# offset = 0,
+# scale = 12,
+# spread = (61, 61, 61),
+# seed = 52534,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Second of 2 3D noises that together define tunnels.
+# type: noise_params_3d
+# mgfractal_np_cave2 = {
+# offset = 0,
+# scale = 12,
+# spread = (67, 67, 67),
+# seed = 10325,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+## 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 enabled are not modified from the default.
+# Flags starting with 'no' are used to explicitly disable them.
+# type: flags possible values: altitude_chill, noaltitude_chill, humid_rivers, nohumid_rivers
+# mg_valleys_spflags = altitude_chill,humid_rivers
+
+# The altitude at which temperature drops by 20C
+# type: int
+# mgvalleys_altitude_chill = 90
+
+# Depth below which you'll find large caves.
+# type: int
+# mgvalleys_large_cave_depth = -33
+
+# Creates unpredictable lava features in caves.
+# These can make mining difficult. Zero disables them. (0-10)
+# type: int
+# mgvalleys_lava_features = 0
+
+# Depth below which you'll find massive caves.
+# type: int
+# mgvalleys_massive_cave_depth = -256
+
+# How deep to make rivers
+# type: int
+# mgvalleys_river_depth = 4
+
+# How wide to make rivers
+# type: int
+# mgvalleys_river_size = 5
+
+# Creates unpredictable water features in caves.
+# These can make mining difficult. Zero disables them. (0-10)
+# type: int
+# mgvalleys_water_features = 0
+
+# Controls width of tunnels, a smaller value creates wider tunnels.
+# type: float
+# mgvalleys_cave_width = 0.09
+
+### Noises
+
+# Caves and tunnels form at the intersection of the two noises
+# type: noise_params_3d
+# mgvalleys_np_cave1 = {
+# offset = 0,
+# scale = 12,
+# spread = (61, 61, 61),
+# seed = 52534,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Caves and tunnels form at the intersection of the two noises
+# type: noise_params_3d
+# mgvalleys_np_cave2 = {
+# offset = 0,
+# scale = 12,
+# spread = (67, 67, 67),
+# seed = 10325,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# The depth of dirt or other filler
+# type: noise_params_2d
+# mgvalleys_np_filler_depth = {
+# offset = 0,
+# scale = 1.2,
+# spread = (256, 256, 256),
+# seed = 1605,
+# octaves = 3,
+# persistence = 0.5,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Massive caves form here.
+# type: noise_params_3d
+# mgvalleys_np_massive_caves = {
+# offset = 0,
+# scale = 1,
+# spread = (768, 256, 768),
+# seed = 59033,
+# octaves = 6,
+# persistence = 0.63,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# River noise -- rivers occur close to zero
+# type: noise_params_2d
+# mgvalleys_np_rivers = {
+# offset = 0,
+# scale = 1,
+# spread = (256, 256, 256),
+# seed = -6050,
+# octaves = 5,
+# persistence = 0.6,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Base terrain height
+# type: noise_params_2d
+# mgvalleys_np_terrain_height = {
+# offset = -10,
+# scale = 50,
+# spread = (1024, 1024, 1024),
+# seed = 5202,
+# octaves = 6,
+# persistence = 0.4,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Raises terrain to make valleys around the rivers
+# type: noise_params_2d
+# mgvalleys_np_valley_depth = {
+# offset = 5,
+# scale = 4,
+# spread = (512, 512, 512),
+# seed = -1914,
+# octaves = 1,
+# persistence = 1.0,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Slope and fill work together to modify the heights
+# type: noise_params_3d
+# mgvalleys_np_inter_valley_fill = {
+# offset = 0,
+# scale = 1,
+# spread = (256, 512, 256),
+# seed = 1993,
+# octaves = 6,
+# persistence = 0.8,
+# lacunarity = 2.0,
+# flags = ""
+# }
+
+# Amplifies the valleys
+# type: noise_params_2d
+# mgvalleys_np_valley_profile = {
+# offset = 0.6,
+# scale = 0.5,
+# spread = (512, 512, 512),
+# seed = 777,
+# octaves = 1,
+# persistence = 1.0,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+# Slope and fill work together to modify the heights
+# type: noise_params_2d
+# mgvalleys_np_inter_valley_slope = {
+# offset = 0.5,
+# scale = 0.5,
+# spread = (128, 128, 128),
+# seed = 746,
+# octaves = 1,
+# persistence = 1.0,
+# lacunarity = 2.0,
+# flags = "eased"
+# }
+
+## Advanced
+
+# Size of chunks to be generated at once by mapgen, stated in mapblocks (16 nodes).
+# type: int
+# chunksize = 5
+
+# Dump the mapgen debug infos.
+# type: bool
+# enable_mapgen_debug_info = false
+
+# Maximum number of blocks that can be queued for loading.
+# type: int
+# emergequeue_limit_total = 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.
+# type: int
+# emergequeue_limit_diskonly = 32
+
+# Maximum number of blocks to be queued that are to be generated.
+# Set to blank for an appropriate amount to be chosen automatically.
+# type: int
+# emergequeue_limit_generate = 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.
+# type: int
+# num_emerge_threads = 1
-# Prevent mods from doing insecure things like running shell commands.
-#secure.enable_security = false
-# 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 =