|
|
Line 4: |
Line 4: |
| | | |
| == Finding worlds == | | == Finding worlds == |
− | * See [https://forum.minetest.net/viewforum.php?f=12 Maps] in the [http://forum.minetest.net forums] to find downloads to worlds that others have made.
| + | See [https://forum.minetest.net/viewforum.php?f=12 Maps] in the [http://forum.minetest.net forums] to find downloads to worlds that others have made. |
| | | |
| == Installation == | | == Installation == |
Line 11: |
Line 11: |
| For world creators, <code>.7z</code> is the recommended archive format as it is a free format (as compared to <code>.rar</code>) that typically allows for the best compression. | | For world creators, <code>.7z</code> is the recommended archive format as it is a free format (as compared to <code>.rar</code>) that typically allows for the best compression. |
| | | |
− | Put the extracted files in the “<code>worlds</code>” folder of your Minetest installation folder. The files such as <code>env_meta.txt</code> must be in the root of the world’s folder (eg. “<code>worlds/my_world/env_meta.txt</code>”). | + | Put the extracted files in the “<code>worlds</code>” folder of your Minetest installation folder. To find the folder, select the "About" tab in the main menu and press "Open User Data Directory". |
| | | |
− | * Location of the <code>worlds</code> directory within the directory structure of a run-in-place installation of Minetest, including some of the folders Minetest adds after some usage as client and server, as well as the positions (…) that custom-made content goes. Irrelevant folders are not expanded.
| + | The files such as <code>env_meta.txt</code> '''must''' be in the root of the world’s folder (eg. “<code>worlds/my_world/env_meta.txt</code>”). |
− | <pre> | |
− | This commented example shows the location and structure of a world called "someworld":
| |
− | | |
− | minetest/
| |
− | ├── worlds/ (this folder will be created when the first local/singleplayer world is created)
| |
− | │ ├── someworld (the name given to the world by the user when it is created)
| |
− | │ │ ├── players.sqlite (ingame data for each player)
| |
− | │ │ ├── worldmods/ (create this folder for world exclusive mods)
| |
− | │ │ ├── auth.sqlite (player login data)
| |
− | │ │ ├── env_meta.txt (contains mostly time related information)
| |
− | │ │ ├── map.sqlite (database containing the map. The name may differ depending on backend used)
| |
− | │ │ ├── map_meta.txt (defines which mapgen is used and how)
| |
− | │ │ └── world.mt (should at least contain the game ID without which the world
| |
− | │ │ will not show up in the singleplayer tab)
| |
− | │ └── … (more saved worlds. Some with exclusive world mods)
| |
− | └── (other files and directories)
| |
− | </pre> | |
| | | |
| == World directory content == | | == World directory content == |
− | For documentation about the structure of e.g. databases and the mapblock binary format, see [https://github.com/minetest/minetest/blob/master/doc/world_format.txt world_format.txt] in the Minetest source tree.
| + | See [https://github.com/minetest/minetest/blob/master/doc/world_format.md world_format.md] in the Minetest source tree. |
− | | |
− | ===auth.sqlite===
| |
− | The authentication database. Name may differ according to the [[Database backends|database backend]] type used.
| |
− | | |
− | ===env_meta.txt===
| |
− | Simple global environment variables.
| |
− | | |
− | Example content:
| |
− | | |
− | game_time = 73471
| |
− | time_of_day = 19118
| |
− | EnvArgsEnd
| |
− | | |
− | ===force_loaded.txt===
| |
− | Lua table containing forcibly loaded Mapblocks.
| |
− | | |
− | ===ipban.txt===
| |
− | Banned IP addresses and usernames.
| |
− | | |
− | Example content:
| |
− | 123.456.78.9|foo
| |
− | 123.456.78.10|bar
| |
− | | |
− | ===map_meta.txt===
| |
− | Simple global map variables. The [[Map generator]] is defined here along with [[Map generator/settings|its parameters]].
| |
− | | |
− | Example content:
| |
− | seed = 7980462765762429666
| |
− | mg_name = v7
| |
− | [end_of_params]
| |
− | | |
− | ===map.sqlite===
| |
− | Map database used for storing the locations and data of blocks. Name may differ according to the [[Database backends|database backend]] type used.
| |
− | | |
− | ===mod_storage.sqlite===
| |
− | Mod storage database used for storing mod-specific data. Name may differ according to the [[Database backends|database backend]] type used.
| |
− | | |
− | ===players.sqlite===
| |
− | Player database used for storing usernames and (encrypted) passwords. Name may differ according to the [[Database backends|database backend]] type used.
| |
− | | |
− | ===world.mt===
| |
− | Miscellaneous world metadata. Uses the Minetest Settings format.
| |
− | | |
− | Example content:
| |
− | | |
− | creative_mode = false
| |
− | player_backend = sqlite3
| |
− | backend = sqlite3
| |
− | gameid = nodecore
| |
− | load_mod_coolmod = false
| |
− | | |
− | The file includes lines stating what type of database backend is used and a list of installed mods with information whether they are activated for this world.
| |
− | | |
− | Some third party software such as minetestmapper may also only consider the folder a valid minetest world when the world.mt is present.
| |
− | | |
− | ===/worldmods (folder)===
| |
− | This optional folder may contain mods that are needed for this map exclusively. All mods and modpacks inside this folder gets loaded no matter what.
| |
− | | |
− | ===Legacy===
| |
− | | |
− | ====auth.txt====
| |
− | If the world uses the obsolete ''files'' backend for authentication, this file contains authentication data, player per line.
| |
− | <name>:<password hash>:<privilege1,...>
| |
− | | |
− | Legacy format (until 0.4.12) of password hash is <name><password> SHA1'd,
| |
− | in the base64 encoding.
| |
− | | |
− | Format (since 0.4.13) of password hash is #1#<salt>#<verifier>, with the
| |
− | parts inside <> encoded in the base64 encoding.
| |
− | <verifier> is an RFC 2945 compatible SRP verifier,
| |
− | of the given salt, password, and the player's name lowercased,
| |
− | using the 2048-bit group specified in RFC 5054 and the SHA-256 hash function.
| |
− | | |
− | ====/player (folder)====
| |
− | If the world uses the obsolete ''files'' backend for player data, this folder will contain player data.
| |
− | Filename can be anything.
| |
− | Contains ingame data for each player in a file named after the player.
| |
| | | |
| == Schem file Creation / Import == | | == Schem file Creation / Import == |
A world contains an environment and/or building(s) you can play in. A world also includes all saved data associated with a world, like player data, mob positions, health, breath, and the like.
Finding worlds
See Maps in the forums to find downloads to worlds that others have made.
Installation
To install worlds: You have to extract them first. Most of them are in .zip
, some of them can be in .7z
, .rar
or .tar.gz
format. To extract archive files other than .zip
on Windows, you need 7-Zip.
For world creators, .7z
is the recommended archive format as it is a free format (as compared to .rar
) that typically allows for the best compression.
Put the extracted files in the “worlds
” folder of your Minetest installation folder. To find the folder, select the "About" tab in the main menu and press "Open User Data Directory".
The files such as env_meta.txt
must be in the root of the world’s folder (eg. “worlds/my_world/env_meta.txt
”).
World directory content
See world_format.md in the Minetest source tree.
Schem file Creation / Import
A schem file (.mts
) is used to import building(s) into a world with the WorldEdit mod. This file can be found in “worlds/<my_world>/schems
” folder.
- Type in your world name (with WorldEdit activated).
- Grant yourself all privileges:
/grantme all
- Press F5 to show the coordinates.
- Select the area to export by commands with
//pos1
and //pos2
(these positions corresponds to an invisible diagonal of a cuboid selection).
- Create your schem file with
//mtschemcreate <name of your schem file>
. The file will be created into your “worlds/<my_world>/schems
” folder.
- Enter in your world (with WorldEdit activated).
- Grant yourself all privileges:
/grantme all
- Put a schem file into your “
worlds/<name of your new world>/schems
" folder.
- Press F5 to show the coordinatess.
- Place a position where you want with command:
//pos1
- Import your schem file with
//mtschemplace <name of your schem file>
See also