-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
138 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
--- | ||
title: Installing Client-Side Mods | ||
aliases: | ||
- /Installing_Client-Side_Mods | ||
--- | ||
|
||
# Installing Client-Side Mods | ||
|
||
Security considerations | ||
----------------------- | ||
|
||
**Prior to installing any [Client-side mods](https://wiki.luanti.org/Mods#Client-Side_Mods "Mods"), please make sure that you have received it from someone you trust. Malicious code can damage your computer, violate your privacy or cause your computer to take part in illegal activities.** | ||
|
||
Installing a Client-side mod | ||
---------------------------- | ||
|
||
After downloading a [Client-side mod](https://wiki.luanti.org/Mods#Client-Side_Mods "Mods") (e.g. from the [Client-side modding forum](https://forum.minetest.net/viewforum.php?f=53)) you usually have a Zip archive. In order to get the mod running, you have to unpack it into the clientmods folder. | ||
|
||
You may have to change the folder name to the “technical” mod name (e.g. rename `colour_chat-master` to `colour_chat`). You can usually find the mod name in the title of the forum topic—It is the last name within the square brackets in the topic title. For example, if the title is `[clientmod] Lol Mod [1.0] [anotherlolmod]`, then the folder must be renamed to `anotherlolmod`. | ||
|
||
If one of the below mentioned directories does not exist, create it. | ||
|
||
Installation directory | ||
---------------------- | ||
|
||
The common place to install them is `$path_user/clientmods/`. That is `minetest-install-directory/clientmods/` in the official Windows releases and on GNU/Linux with `RUN_IN_PLACE` enabled and **`~/.minetest/clientmods/`** in globally installed Luanti versions. | ||
|
||
* Location of the clientmods folder within the folder structure of a run-in-place installation of Luanti, including some of the folders Luanti adds after some usage as client and server, as well as the positions (…) that custom-made content goes. Unrelevant folders are not expanded. | ||
|
||
``` | ||
minetest/ | ||
├── bin/ | ||
├── builtin/ | ||
├── cache/ | ||
├── client/ | ||
├── clientmods/ | ||
│ └── … (installed extra clientmods) | ||
├── doc/ | ||
├── fonts/ | ||
├── games/ | ||
│ ├── minetest_game/ | ||
│ ├── minimal/ | ||
│ └── … (installed extra games) | ||
├── locale/ | ||
├── mods/ | ||
│ └── … (installed extra mods and modpacks) | ||
├── textures/ | ||
│ ├── base/ | ||
│ │ └── pack/ | ||
│ └── … (installed extra texturepacks) | ||
└── worlds/ | ||
└── … (saved worlds. Some with exclusive world mods) | ||
``` | ||
|
||
|
||
After extracting the Client-side mod there, you first need to tell it to load. This is done by adding `load_mod_<clientmodname> = true` in the mods.conf file in the clientmods directory. Next, you need to make sure Client-side modding is enabled. To do this, click on “Advanced Settings” in the “Settings” tab of the Main Menu. In the search-bar, type `client modding` and press “Search”. If “Client modding” is disabled, double-click it or press “Edit” and use the drop-down to enable it. | ||
|
||
Note that Client-side mods are enabled for all worlds and servers. | ||
|
||
Example structure | ||
----------------- | ||
|
||
In this example the Client-side mods “`colour_chat`”, “`csm_who_plus`”, and “`debugger`” are installed: | ||
|
||
``` | ||
clientmods/ | ||
├── colour_chat/ | ||
│ ├── init.lua | ||
│ └── README.md | ||
├── csm_who_plus/ | ||
│ ├── init.lua | ||
│ ├── LICENSE.md | ||
│ ├── README.md | ||
│ ├── screenshot.png | ||
│ └── screenshot2.png | ||
├── debugger/ | ||
│ ├── doc/ | ||
│ │ ├── screenshots | ||
│ │ | └── … | ||
│ │ └── form_editor.md | ||
│ ├── textures/ | ||
│ │ └── debugger_form_editor.png | ||
│ ├── init.lua | ||
│ ├── LICENSE | ||
│ └── README.md | ||
└── mods.conf | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
--- | ||
title: Installing Mods | ||
aliases: | ||
- /Installing_Mods | ||
--- | ||
|
||
# Installing Mods | ||
|
||
Security considerations | ||
----------------------- | ||
|
||
**Mods are by default run in a secure environment that restricts access to the filesystem and execution of external programs, however not all sandboxes are 100% secure. Additionally do not mark mods as trusted or disable mod security altogether if you are not aware of what you are doing, as they will run unsandboxed at the same privileges as Luanti. This applies not only to malicious mods but benign ones with security vulnerabilities. Excercise caution when downloading mods outside of official channels such as ContentDB where mods are vetted by the community for safety and security.** | ||
|
||
Installing a mod | ||
---------------- | ||
|
||
Mods can be installed from ContentDB in the "Browse online content" button in Luanti 5.0+. Mods downloaded this way are automatically installed and get checked for updates. See [Installing content](https://content.minetest.net/help/installing/). | ||
|
||
For mods downloaded manually, you would clone the source repository or extract the Zip archive into your mods folder. | ||
|
||
To find your mods folder, go into the "About" tab and press the "Open User Data Directory" button. If there isn't already a mods folder there then create it. | ||
|
||
After extracting the mod there you need to enable it for your world. This can either be done in the GUI by clicking on “Configure” in the world selection, or by adding `load_mod_<modname> = true` in the world.mt file in the world directory. | ||
|
||
Note that newly installed mods are disabled for all worlds by default, so you explicitly need to enable them. | ||
|
||
Additional install directories (all Luanti versions) | ||
---------------------------------------------------- | ||
|
||
Other places to install mods are `world-directory/worldmods/`, `$path_share/mods/` and `$<path_user, path_share>/games/<gameid>/mods/`. `$path_share` and `$path_user` are only relevant to system-wide installs of Luanti (currently, possible only on Linux). As mentioned above, Luanti on Windows and portable builds operate within their install directory itself, which corresponds to both `$path_share` and `$path_user`. | ||
|
||
Note that users should generally install mods in the normal install directory and not in the additional ones. Note that having copies of the same mod in different places may easily generate mod conflicts. | ||
|
||
|
||
Differences between the three kinds of places mods can be loaded from: | ||
|
||
* In the `/mods` folder technically parallel to the `/bin` folder the executable is in. | ||
|
||
On different installations this may very well also be in some other Luanti location such as a shared, `system/game`, user or hidden folder. Only mods in this place are **togglable**. Mods in this folder can be run with any world created by any game. This is therefore an easy place to create mod conflicts that might even crash Luanti. | ||
|
||
* In a `/games/<some_game>/mods` folder. | ||
|
||
In case of "Minetest Game", this could be a sub-folder of `<someplace>/minetest/games/minetest_game/mods` or `<some_other_place>/minetest(or ~/.minetest)/games/minetest_game/mods`. | ||
|
||
Mods loaded from such locations are considered to be an essential part of said game and are **not togglable**. These mods apply to all worlds created with this game but not to any world created by another game (although many games may include the same mods) | ||
|
||
* In a `/worlds/<name_of_some_world>/worldmods` folder inside the sub-folder of a specific world. | ||
|
||
Mods in a worldmods folder are **not togglable** and will run on and only on that specific world, and cannot be accessed from any other world. |