Minetest is an open source voxel game engine with easy modding and game creation
Go to file
Loïc Blot a0e33ba9ea
dev: add shell.nix (#14823)
This permit to have reproducible development environment across OS (Linuxes, but maybe Mac OSX too).

It makes minetest compilable directly in a nix-shell with Nix/Lix but also on NixOS
2024-08-12 11:41:27 +02:00
.github Revert "Disable SDL2 for 5.9.0 (#14944)" (#14959) 2024-08-11 20:18:11 +02:00
.vscode Add documentation for IDE developer setup (#13935) 2024-05-26 14:28:12 +02:00
android Revert "Disable SDL2 for 5.9.0 (#14944)" (#14959) 2024-08-11 20:18:11 +02:00
builtin Optionally hide player names on the serverlist (#14820) 2024-08-11 20:19:53 +02:00
client Fix artifacts with bloom + tonemapping on ogles2 (#14688) 2024-05-23 20:36:13 +02:00
clientmods/preview Rename hud_elem_type to type (#14065) 2023-12-29 21:51:02 +01:00
cmake/Modules Migrate the Android port to SDL2 2024-04-08 20:15:37 +02:00
doc Docs: Explain how to create and remove inventory lists (#14927) 2024-08-12 02:49:14 +02:00
fonts Fully remove bitmap font support (#11863) 2022-01-08 14:53:25 +01:00
games/devtest devtest: Add sam to testentities (#14882) 2024-08-11 20:18:30 +02:00
irr Revert "Disable SDL2 for 5.9.0 (#14944)" (#14959) 2024-08-11 20:18:11 +02:00
lib lua: add short readme 2024-06-30 20:38:22 +02:00
misc Bump version to 5.9.0 2024-08-11 16:54:55 +01:00
mods Remove trailing whitespace (#13505) 2023-05-18 20:34:18 +02:00
po Translated using Weblate (Polish) 2024-08-11 17:16:07 +02:00
src Lua API: fix OOB array access in find_nodes_near (#14948) 2024-08-11 20:21:12 +02:00
textures Add package update detection on Content tab (#13807) 2023-10-28 17:33:44 +01:00
util Revert "Disable SDL2 for 5.9.0 (#14944)" (#14959) 2024-08-11 20:18:11 +02:00
worlds Add a worlds_here.txt file in the worlds folder and update .gitignore (#12720) 2022-10-30 16:53:31 +01:00
.clang-tidy Update clang-tidy configuration and scripts 2020-03-12 00:10:09 +01:00
.dockerignore fix: don't send the whole local context to the docker image 2021-04-02 14:40:22 +02:00
.editorconfig Remove mistaken exec mode from three files 2024-01-17 20:06:26 +01:00
.gitattributes Add LF config to .gitattributes 2024-03-31 21:02:47 +02:00
.gitignore dev: add shell.nix (#14823) 2024-08-12 11:41:27 +02:00
.gitlab-ci.yml Remove GitLab CI and redirect GitLab pages to api.minetest.net 2024-01-10 20:52:08 +00:00
.luacheckrc Allow toggling touchscreen mode at runtime (#14075) 2024-02-22 15:44:49 +00:00
.mailmap Update credits tab and mailmap 2023-03-29 23:19:11 +02:00
CMakeLists.txt Continue with 5.10.0-dev 2024-08-11 16:55:00 +01:00
CMakePresets.json Add documentation for IDE developer setup (#13935) 2024-05-26 14:28:12 +02:00
CNAME Build MkDocs Lua API docs using GitHub CI, deploy to api.minetest.net (#13675) 2023-09-18 19:17:18 +03:00
COPYING.LESSER Added copy of LGPL-2.1 (#12950) 2022-11-16 13:09:53 -05:00
Dockerfile Dockerfile: Use the default branch when cloning libspatialindex repository (#14621) 2024-05-10 17:00:15 +07:00
LICENSE.txt Add package update detection on Content tab (#13807) 2023-10-28 17:33:44 +01:00
minetest.conf.example Update minetest.conf.example and settings_translation_file.cpp 2024-08-11 17:35:23 +02:00
README.md Docker image workflow (publish on ghcr.io) (#14230) 2024-03-24 18:54:09 +01:00
shell.nix dev: add shell.nix (#14823) 2024-08-12 11:41:27 +02:00

Minetest

Build Status Translation status License

Minetest is a free open-source voxel game engine with easy modding and game creation.

Copyright (C) 2010-2022 Perttu Ahola celeron55@gmail.com and contributors (see source file comments and the version control log)

Table of Contents

  1. Further Documentation
  2. Default Controls
  3. Paths
  4. Configuration File
  5. Command-line Options
  6. Compiling
  7. Docker
  8. Version Scheme

Further documentation

Default controls

All controls are re-bindable using settings. Some can be changed in the key config dialog in the settings tab.

Button Action
Move mouse Look around
W, A, S, D Move
Space Jump/move up
Shift Sneak/move down
Q Drop itemstack
Shift + Q Drop single item
Left mouse button Dig/punch/use
Right mouse button Place/use
Shift + right mouse button Build (without using)
I Inventory menu
Mouse wheel Select item
0-9 Select item
Z Zoom (needs zoom privilege)
T Chat
/ Command
Esc Pause menu/abort/exit (pauses only singleplayer game)
+ Increase view range
- Decrease view range
K Enable/disable fly mode (needs fly privilege)
J Enable/disable fast mode (needs fast privilege)
H Enable/disable noclip mode (needs noclip privilege)
E Aux1 (Move fast in fast mode. Games may add special features)
C Cycle through camera modes
V Cycle through minimap modes
Shift + V Change minimap orientation
F1 Hide/show HUD
F2 Hide/show chat
F3 Disable/enable fog
F4 Disable/enable camera update (Mapblocks are not updated anymore when disabled, disabled in release builds)
F5 Cycle through debug information screens
F6 Cycle through profiler info screens
F10 Show/hide console
F12 Take screenshot

Paths

Locations:

  • bin - Compiled binaries
  • share - Distributed read-only data
  • user - User-created modifiable data

Where each location is on each platform:

  • Windows .zip / RUN_IN_PLACE source:
    • bin = bin
    • share = .
    • user = .
  • Windows installed:
    • bin = C:\Program Files\Minetest\bin (Depends on the install location)
    • share = C:\Program Files\Minetest (Depends on the install location)
    • user = %APPDATA%\Minetest or %MINETEST_USER_PATH%
  • Linux installed:
    • bin = /usr/bin
    • share = /usr/share/minetest
    • user = ~/.minetest or $MINETEST_USER_PATH
  • macOS:
    • bin = Contents/MacOS
    • share = Contents/Resources
    • user = Contents/User or ~/Library/Application Support/minetest or $MINETEST_USER_PATH

Worlds can be found as separate folders in: user/worlds/

Configuration file

  • Default location: user/minetest.conf
  • This file is created by closing Minetest for the first time.
  • A specific file can be specified on the command line: --config <path-to-file>
  • A run-in-place build will look for the configuration file in location_of_exe/../minetest.conf and also location_of_exe/../../minetest.conf

Command-line options

  • Use --help

Compiling

Docker

Version scheme

We use major.minor.patch since 5.0.0-dev. Prior to that we used 0.major.minor.

  • Major is incremented when the release contains breaking changes, all other numbers are set to 0.
  • Minor is incremented when the release contains new non-breaking features, patch is set to 0.
  • Patch is incremented when the release only contains bugfixes and very minor/trivial features considered necessary.

Since 5.0.0-dev and 0.4.17-dev, the dev notation refers to the next release, i.e.: 5.0.0-dev is the development version leading to 5.0.0. Prior to that we used previous_version-dev.