From 0f7425516ff0a0053e4cafc166d8793428878299 Mon Sep 17 00:00:00 2001 From: wsor4035 <24964441+wsor4035@users.noreply.github.com> Date: Tue, 31 Dec 2024 15:28:24 -0500 Subject: [PATCH 1/2] import more stuff from wiki --- content/licensing.md | 69 +++++++ content/main-menu-music.md | 8 + content/overview-of-luanti-forks.md | 96 ++++++++++ content/pointing.md | 16 ++ content/privileges.md | 70 +++++++ content/protection.md | 13 ++ content/reporting-bugs.md | 61 ++++++ content/server-commands.md | 211 +++++++++++++++++++++ content/server-metrics-using-prometheus.md | 62 ++++++ content/setting-up-a-server.md | 1 + content/tool.md | 78 ++++++++ content/troubleshooting.md | 159 ++++++++++++++++ content/tutorials.md | 69 +++++++ content/worlds.md | 57 ++++++ 14 files changed, 970 insertions(+) create mode 100644 content/licensing.md create mode 100644 content/main-menu-music.md create mode 100644 content/overview-of-luanti-forks.md create mode 100644 content/pointing.md create mode 100644 content/privileges.md create mode 100644 content/protection.md create mode 100644 content/reporting-bugs.md create mode 100644 content/server-commands.md create mode 100644 content/server-metrics-using-prometheus.md create mode 100644 content/tool.md create mode 100644 content/troubleshooting.md create mode 100644 content/tutorials.md create mode 100644 content/worlds.md diff --git a/content/licensing.md b/content/licensing.md new file mode 100644 index 0000000..3104c2a --- /dev/null +++ b/content/licensing.md @@ -0,0 +1,69 @@ +--- +title: Licensing +aliases: +- /Licensing +--- + +# Licensing + + +Recently a considerable number of Luanti-based games have been appearing in the Android playstore, and Google Play. See the [list of Luanti forks](https://wiki.luanti.org/Overview_of_Luanti_forks "Overview of Luanti forks") for examples of these. + +_Please look at: [FlightGear](http://www.flightgear.org/flightprosim.html) as they have the same issue as Luanti has._ + +Complying with the License +-------------------------- + +The code of both the Luanti engine and Minetest Game are licensed under [LGPL 2.1+ free software license](https://www.gnu.org/licenses/lgpl-2.1.html). Other components may be similarly licensed, however this document does not cover them. **Note that this document is only intended for informational purposes**, for the real legally binding terms you should read the [LGPL 2.1+ license](https://www.gnu.org/licenses/lgpl-2.1.html). + +* You must link to the source code behind your software + * Which must also be licensed under LGPL 2.1 or later, or a compatible license. Also see _"what if I use proprietary source code/libraries?"_. + * If any modifications were made to the Luanti engine or Minetest Game, you must state this inside of your application, and provide a means to download the \*\*modified\*\* source code. + * If you did not modify any source code, you must still link to the source code behind the software - however this can be the official Luanti repo if unmodified +* You must not remove any copyright notices. +* You must state significant changes to the software. +* You must not mix proprietary and LGPLv2.1+ code, see _"what if I use proprietary source code/libraries?"_. +* You should place the following attribution on any pages where the software can be downloaded, including but not limited to Google Play or a website: + +> This \[app/game/...\] uses the Luanti engine \[and Minetest Game\], Copyright 2010-2018 Perttu Ahola and contributors, licensed under LGPLv2.1+ + +**It is an infringement to only link back to the original source code if you made modifications** + +### Where should I put any links? + +* Any locations where the software is downloaded, including but not limited to Google Play or a website. +* You should place a link in the main menu (for example, in the credits tab). + +### What if I use proprietary source code/libraries? + +* **Don't mix proprietary code with LGPL code.** For example, if you use a proprietary ad library, then you can only call it from proprietary code. +* **Any LGPL code must be replaceable.** The user must be able to use their own version of any LGPL code with your software. You must also provide documentation on how to do this. +* Any proprietary code you wrote must not forbid reverse-compilation for the purpose of debugging modifications to the LGPL code. +* You must **fully and prominently attribute** the Luanti project if your software contains any proprietary code. + +This, in affect, means that you will need to completely rewrite the Java section of the app and just use Luanti as an NDK library. Make sure you include instructions on how to replace any LGPLv2.1+ code. + +The legal text behind this is in [section 4](https://www.gnu.org/licenses/lgpl.html#section4). Also see [\[1\]](https://opensource.stackexchange.com/questions/4357/how-can-lgpl-and-proprietary-licenses-be-combined) + +### See also + +* [https://tldrlegal.com/license/gnu-lesser-general-public-license-v3-(lgpl-3)](https://tldrlegal.com/license/gnu-lesser-general-public-license-v3-\(lgpl-3\)) +* [https://www.gnu.org/licenses/lgpl-2.1.html](https://www.gnu.org/licenses/lgpl-2.1.html) +* [https://softwareengineering.stackexchange.com/questions/86142/what-exactly-do-i-need-to-do-if-i-use-a-lgpl-licenced-library](https://softwareengineering.stackexchange.com/questions/86142/what-exactly-do-i-need-to-do-if-i-use-a-lgpl-licenced-library) + +What to do if I spot a program that is possibly infringing Luanti's license? +---------------------------------------------------------------------------- + +If you think that a certain program is infringing on Luanti's LGPL 2.1 license, please check with the program's website to see if it is licensed under similar terms, and if the source code is being distributed.If the license seems to be proprietary, and if the developer alleges that the program is their own work, then contact [celeron55](mailto:celeron55@gmail.com). Alternatively, join the [Luanti IRC channel](http://webchat.freenode.net/?channels=#minetest) and report it there. It doesn't matter if anyone replies or not, it will be logged and the community will check on it themselves. There is also an attempt to list forks of Luanti at the "[Making a list of Luanti forks for Android](https://forum.minetest.net/viewtopic.php?p=242219#p242219)" thread in the forums. If the programm you discovered is missing there you could add it. + +### What not to do if a program is infringing Luanti's license + +**DO NOT TAKE ANY ACTION AGAINST THE DEVELOPER** - You must report it to the Luanti devs instead. + +Even if it is as clear as day that a certain program is using code and artwork from Luanti and is not distributing it under similar conditions, please do not attempt, or do the following: + +1. Do not launch a witch-hunt. This is the 21st century. Please behave appropriately. +2. Do not attempt to crack, grief, or crash their servers. +3. Do not attempt to contact the infringing program's developer. Any contact made with the developer shall be after consensus with respected members of the community at large and the Core Development Team. + +The above has largely only resulted in a lot of drama, mostly ending with the infringing developer gaining the upper hand and getting away with using Luanti's code while violating the license. Please don't do it. \ No newline at end of file diff --git a/content/main-menu-music.md b/content/main-menu-music.md new file mode 100644 index 0000000..933e841 --- /dev/null +++ b/content/main-menu-music.md @@ -0,0 +1,8 @@ +--- +title: Main menu music +aliases: +- /Main_menu_music +--- + +# Main menu music +Luanti supports music in the main menu, which can [be provided by games](https://minetest.gitlab.io/minetest/games/#menu-music) (5.5.0+). Previously it was possible to provide main menu music in [Sound Packs](https://wiki.luanti.org/Sound_Packs "Sound Packs") but this broke alongside the implementation of game-specific main menu music. \ No newline at end of file diff --git a/content/overview-of-luanti-forks.md b/content/overview-of-luanti-forks.md new file mode 100644 index 0000000..a12e6c3 --- /dev/null +++ b/content/overview-of-luanti-forks.md @@ -0,0 +1,96 @@ +--- +title: Overview of Luanti forks +aliases: +- /Overview_of_Luanti_forks +- /Overview_of_Minetest_forks +--- + +# Overview of Luanti forks + +A software is said to be a **fork** if it is a derivation of a copy of another software; that is, if it is based on its source code and other related data. Luanti has seen some forks in its history. This article gives an overview of some of the known forks of Luanti. + +What is a Luanti fork? +---------------------- + +As said, above, a fork is another copy of software that is edited. For Luanti, it is the same. Except a few mods put together is not called a fork, that would be a modpack. A fork is a Core engine change(s) that are not official and will not be released as a version of Luanti unless submitted and accepted in a pull request. + +List of projects +---------------- + +The following projects are known Luanti forks, which may or may not be active at the moment. + +### Voxelands + +**[Voxelands](http://www.voxelands.com/)** was started under the name “Minetest Classic” on the 15th of April 2013 (date of [earliest recorded commit](https://gitorious.org/minetest-classic/minetest-classic/commit/2c4e0bcbc94abca621aeaa6f5159d2637179da47)) by darkrose as a fork of the latest stable release of the 0.3 series of Minetest-c55 (“Minetest-c55” was the earlier name of Luanti). + +The fork was motivated by a dissatisfaction of Luanti becoming more and more a game engine rather than a game. Voxelands developers also claim that with the start of 0.4 series (and the introduction of the [Lua modding API](https://wiki.luanti.org/Mods "Mods")), Luanti has decreased in performance, which is another key motivation for Voxelands. Voxelands is incompatible with Luanti and now quite different. + +Key goals of Voxelands are keeping the game at least as performant as the Minetest-c55 0.3 series, adding new content, maintaining balanced gameplay with a focus of in-world functionality, backporting bugfixes and some features from the 0.4 series and maintaining backwards compatibility to the 0.3 series at the network protocol level. + +### Blocklife + +[Blocklife](https://forum.minetest.net/viewtopic.php?f=14&t=12021) was first announced on the Luanti forum on Thu Apr 30, 2015 by gibucsoft. It started with only few noticeable changes to version 0.4.7 and came with a game that included some more mods than Minetst Game. The most interesting feature was the use of two hands that could each be used seperately. On 23th May 2018 gibucsoft anounced to once more start developing. This time the block size might get reduced to a tenth in sidelength. The goal would be to have a more reallistic shaped “round” world. + +### Freeminer + +**[Freeminer](http://freeminer.org/)** is a fork of version 0.4.8. It's no longer maintained. + +The project goals have been vaguely described as something along the lines of “To create a fun and playable game” and it is unclear what has motivated the fork. A list of changes compared to Luanti was published: [\[1\]](http://forum.freeminer.org/threads/full-list-of-changes-from-minetest.110/) + +[Freeminer is also available for Android](https://f-droid.org/packages/org.freeminer.freeminer/), but it's no longer maintained either. + +### Minetest-delta + +[Minetest-delta](https://github.com/erlehmann/minetest-delta) was a fork of Luanti, maintained in mid-2011, with the goal of adding more experimental features to Luanti. Some contributions like papyrus, cacti and jungles have since been merged in Luanti. + +### Minetest-M13 + +An ancient fork. No activity recorded since 2012. + +### Various forks of the Android version + +There are a lot of Android forks. Sadly, there are a lot of low-quality proprietary Luanti forks. Many of them are known to have extremely annoying advertisements (which often make the game near-unplayable) or even in-app-purchases. **Those are not part of official Luanti!** + +The _official_ Android versions can be found here: + +* [Luanti on F-Droid](https://f-droid.org/packages/net.minetest.minetest/) +* [Luanti on Google Play](https://play.google.com/store/apps/details?id=net.minetest.minetest) + +**Important: Ads, in-app purchases or other anti-features are not, and will never be part of Luanti!** If you see ads, double-check if you have _really_ installed Luanti, and not something else. Luanti is a community-driven free software project and we are way too proud of ourselves to ever need something like ads or in-app-purchases. :D + +Many of these Luanti forks come and go rather quickly. Here are some known names in Google Play (because it changes so quickly, this list ls likely outdated and incomplete): + +* Worldcraft: Exploration Lite +* WorldCraft 2 : Pocket Edition +* PixelCraft — 3D Survival! +* ► MultiCraft ― Free Miner! +* Crazy Craft on Castle World PE +* MultiCraft - Minetest France +* Cartoon Craft: Castle World PE +* Voxel Craft : Castle Build PE +* World Craft 3D +* Squeake Craft PLUS + +[Discussion thread](https://forum.minetest.net/viewtopic.php?f=3&t=16707). + +Not much is known about these forks so far (feel free to edit this wiki page!). But we do know all these forks are illegetimate proprietary forks and/or they contain anti-features such as ads. For most of these, there's no source code provided, there's a proprietary license or no license at all. None of these problems exist in Luanti. + +Note we are absolutely not against unofficial forks of Luanti and creating awesome new things with it (that's the whole point of being free software!). But for Android, we simply have not been impressed by the results so far. However, if you think you found a great Luanti fork for Android, please tell us in the [forums](https://forum.minetest.net/viewtopic.php?f=3&t=16707). + +If you want to avoid proprietary forks with annoying anti-features altogether, we recommend you start to use [F-Droid](https://f-droid.org/) instead of Google Play. F-Droid software is a repository maintained by free software zealots like us in which fishy proprietary software is not allowed in the first place. :-) + +### Various forks of the iOS version + +Just like with Android, we also had people forking Luanti for iOS. The similar problems apply here. + +Here's a list (we can't recommend any of these): + +* [Buildcraft](https://itunes.apple.com/us/app/buildcraft-multiplayer-block-game/id740372768?mt=8) +* [Worldcraft 2](https://itunes.apple.com/us/app/worldcraft-survival-2/id900353132?mt=8) +* [Worldcraft Pocket Edition](https://itunes.apple.com/us/app/worldcraft-pocket-edition/id796349324?mt=8) +* [Exploration](https://itunes.apple.com/us/app/exploration-mind-world-of-craft-survival-game/id880642020?mt=8) +* FreeCraft (No iTunes Store link at the moment) + +None of these are free software either. Buildcraft even forces you to perform an in-app purchases to make its ads go away. + +[Discussion thread](https://forum.minetest.net/viewtopic.php?f=3&t=16707). \ No newline at end of file diff --git a/content/pointing.md b/content/pointing.md new file mode 100644 index 0000000..a08c177 --- /dev/null +++ b/content/pointing.md @@ -0,0 +1,16 @@ +--- +title: Pointing +aliases: +- /Pointing +--- + +# Pointing +**Pointing** means to look at something with the crosshair (which is in the center of your screen) on it while being close enough to it. When something is pointed, it is highlighted, either by a wireframe or by some sort of “halo”. Pointing things is neccessary for tasks like [mining](https://wiki.luanti.org/Mining "Mining"), [building](https://wiki.luanti.org/Building "Building"), [using](https://wiki.luanti.org/Using "Using") … + +The default distance for pointing is less than 4 blocks away. In [Minetest Game](https://wiki.luanti.org/Games/Minetest_Game "Games/Minetest Game"), this distance increases to 10 when using [creative mode](https://wiki.luanti.org/Creative_mode "Creative mode"). It is possible for items and held nodes to have their own pointing range. + +Most [blocks](https://wiki.luanti.org/Blocks "Blocks") can be pointed at, but not all. [Liquids](https://wiki.luanti.org/Liquid "Liquid") are usually not be pointed at, but there are [special items](https://wiki.luanti.org/Category:Liquid_pointers "Category:Liquid pointers") which are capable of pointing to liquids. Examples are [buckets](https://wiki.luanti.org/Bucket "Bucket") and [boats](https://wiki.luanti.org/Boat "Boat"). A few blocks like [Air](https://wiki.luanti.org/Air "Air") can never be pointed. Also, [items](https://wiki.luanti.org/Items "Items") on the ground can be pointed (in order to collect them). + +It is only possible to point at one thing at a time. + +By default, a thin black rectangular wireframe will be shown around the block or entity which you currently point. The colour and thickness of the selection box can be changed with `selectionbox_color` and `selectionbox_width`. It is also possible to change it from an outline to a highlight which tints the pointed node with a configurable colour. \ No newline at end of file diff --git a/content/privileges.md b/content/privileges.md new file mode 100644 index 0000000..5f4ef0a --- /dev/null +++ b/content/privileges.md @@ -0,0 +1,70 @@ +--- +title: Privileges +aliases: +- /Privileges +--- + +# Privileges + +Every player has a set of privileges, which differ from server to server. Roughly spoken, one’s privileges determine what one is able to do and what not. Each privilege has a name (the meaning is described below). Privileges can be granted and revoked from other players by any player who has the privilege called “privs”. On a multiplayer server with a default configuration, new players start with the privileges called “interact” and “shout”. To view one’s own privileges, one can issue the [server command](/server-commands "Server commands") “/privs”. + +Built-in privileges +------------------- + +As of version 5.0.0, Luanti comes with the following privileges: + +* gameplay-related: + * **interact**—can [build](https://wiki.luanti.org/Building "Building")/[mine](https://wiki.luanti.org/Mining "Mining")/[use](https://wiki.luanti.org/Using "Using") blocks and drop/eat/craft/use items and [punch](https://wiki.luanti.org/Punching "Punching") things and interact with [objects](https://wiki.luanti.org/Objects "Objects") and [players](https://wiki.luanti.org/Player "Player") + * **give**—can use the `/give` and `/giveme` commands + * **teleport**—can use the `/teleport` command to teleport oneself to certain [coordinates](https://wiki.luanti.org/Coordinates "Coordinates") or to another [player](https://wiki.luanti.org/Player "Player") + * **bring**—in combination with _**teleport**_, can use the `/teleport` command to teleport any player to certain coordinates or to yet another player + * **fast**—allows the player to activate [fast mode](https://wiki.luanti.org/Controls#Movement_modes "Controls") + * **fly**—allows the player to activate [fly mode](https://wiki.luanti.org/Controls#Movement_modes "Controls") + * **noclip**—allows the player to activate ["noclip" mode](https://wiki.luanti.org/Controls#Movement_modes "Controls"), which allows them to fly through walls +* chat-related: + * **shout**—can [chat](https://wiki.luanti.org/Chat "Chat") with other people +* world–manipulation-related: + * **settime**—can set [time of day](https://wiki.luanti.org/Time_of_day "Time of day") using `/time` +* moderation-related: + * **privs**—can set any privileges of players using `/grant` and `/revoke` (→[Server commands#Privilege manipulation](https://wiki.luanti.org/Server_commands#Privilege_manipulation "Server commands")) + * **basic\_privs**—can set the privileges set as basic\_privs in the minetest.conf (default “interact” and “shout”) using `/grant` and `/revoke` + * **kick**—can kick players with `/kick` + * **ban**—can ban/unban IPs and names using `/ban` and `/unban` + * **rollback**—can use the [rollback](https://wiki.luanti.org/index.php?title=Rollback&action=edit&redlink=1 "Rollback (page does not exist)") functionality + * **protection\_bypass**—can bypass protection of blocks (e.g. can open [locked chests](https://wiki.luanti.org/Locked_Chest "Locked Chest") or [steel doors](https://wiki.luanti.org/Steel_Door "Steel Door") of everyone) +* administration-related: + * **server**—can do server maintenance stuff such as `/shutdown`, `/clearobjects`, `/set`, … + * **debug**—can access advanced [debug](https://wiki.luanti.org/Debug "Debug") features and information, such as the wirewrame in the debug screens (F5). It also prevents the game from restricting information in the debug screen and from restricting the “toggle block bounds” key. + +Irrevokable privileges +---------------------- + +A player’s privileges may be irrevokable in certain situations. It is not possible to revoke these privileges with `/revoke` then. + +In multiplayer [servers](https://wiki.luanti.org/Server "Server"), the player whose name equals the [minetest.conf](https://wiki.luanti.org/Minetest.conf "Minetest.conf") setting “name” automatically has all privileges and all of these are irrevokable. This is also the case for players who started a server (not a dedicated server). In [singleplayer](https://wiki.luanti.org/index.php?title=Singleplayer&action=edit&redlink=1 "Singleplayer (page does not exist)"), you start with **interact**, **shout**, **privs** and **basic\_privs**. These privileges are irrevokable. + +Privileges from mods and [games](https://wiki.luanti.org/Games "Games") +----------------------------------------------------------------------- + +### [Minetest Game](https://wiki.luanti.org/Games/Minetest_Game "Games/Minetest Game") + +* **home**—can use `/home` and `/sethome`. + +### Mods + +[Mods](https://wiki.luanti.org/Mods "Mods") may make additional privileges available on the server. Issue the server command `/help privs` to receive a full list (and short descriptions) of all possible privileges on the server. + +Server configuration +-------------------- + +Using the server’s configuration files, a lot of privilege-related stuff can be manipulated. + +There is an option in the configuration file for setting the default privileges for new players. `default_privs = interact, shout` + +* The player having the name in the “name” field of the configuration has all the privileges. + +See also +-------- + +* [Server](https://wiki.luanti.org/Server "Server") +* [Server commands](https://wiki.luanti.org/Server_commands "Server commands") \ No newline at end of file diff --git a/content/protection.md b/content/protection.md new file mode 100644 index 0000000..f694b6e --- /dev/null +++ b/content/protection.md @@ -0,0 +1,13 @@ +--- +title: Protection +aliases: +- /Protection +--- + +# Protection + +{{< notice warning >}} +This article is incomplete. Please help expand this article to include more useful information. +{{< /notice >}} + +**Protection** allows owners of protected areas to grant dig and place privileges to certain players. \ No newline at end of file diff --git a/content/reporting-bugs.md b/content/reporting-bugs.md new file mode 100644 index 0000000..f7d75ff --- /dev/null +++ b/content/reporting-bugs.md @@ -0,0 +1,61 @@ +--- +title: Reporting Bugs +aliases: +- /Reporting_bugs +--- + +# Reporting bugs + + +### Notes + +Luanti is never finished, it is constantly a work in progress. Thus all bug reports trivial, or not, help us making the engine better for everyone. + +### Check for similar reports + +A bug might already be reported or even fixed by the time you are having problems. Please check the following sources for solution prior reporting: + +* [Newest Luanti version](https://www.minetest.net/downloads/) - are you using the most recent one? +* [GitHub issue tracker](https://github.com/minetest/minetest/issues?q=is%3Aissue) +* [Libera IRC (English)](https://kiwiirc.com/nextclient/irc.libera.chat:+6697/#minetest) (answers might take a while) +* [Luanti Forums: 'Problems'](https://forum.minetest.net/viewforum.php?f=6) + +### Gathering information + +If you cannot find any similar reported bug, please collect as much relevant information to the developers. More information usually means faster issue tracking. Usually it helps us a lot to provide following information. + +* Luanti version (ex. "0.4.17.1", "5.1.1", "5.1.0-dev-numbers") + * This is displayed in the window title bar. + * For advanced users: provide the output of `minetest --version` +* Operating system and version (ex. "Ubuntu 18.04", "Windows 10", "Android 9") + * Please be as precise as possible. + +Following information can be found in the system settings / system information or in the task manager: + +* CPU type (ex. "Ryzen 7 3700X", "Core2 Duo E8600") +* Amount of installed RAM + * You might also want to monitor the RAM usage while reproducing the bug. +* Graphics card (ex. "Intel HD Graphics 4000", "GTX 2080 Ti Super") + * If you can join a game, please provide the OpenGL version (see title bar). + * For advanced users: driver version and date. + +**Most important:** Luanti generates a `debug.txt` file which is located near to the `bin` folder, or `~/.minetest/` for system-wide installations. Copy the last 50 lines or so of the debug file. + +If you are tech-savvy, you might also want to look for similar issues in [Troubleshooting](https://wiki.luanti.org/Troubleshooting "Troubleshooting") and try to find out the cause of the issue by clearing all settings, tweaking settings or disabling mods. + +### Bug report template + +If you would like to submit to the Luanti Forums, please consider using this template while doing so: + +``` + Topic title: shortly state what bug you are experiencing + + Topic body: state, and give as many details as possible about the bug you are experiencing. + Luanti version: + Operating system: + Computer specs: CPU, RAM, graphics card + + [spoiler=debug.txt]Paste debug.txt here[/spoiler] + +``` + diff --git a/content/server-commands.md b/content/server-commands.md new file mode 100644 index 0000000..d9a8e42 --- /dev/null +++ b/content/server-commands.md @@ -0,0 +1,211 @@ +--- +title: Server Commands +aliases: +- /Server_commands +--- + +# Server commands + +**Server commands** (also called “**chat commands**”) are special commands to the server that can be entered by any player via the [chat](https://wiki.luanti.org/Chat "Chat") to cause the server to do something. + +Command basics +-------------- + +Luanti comes with a set of built-in commands, but [games](https://wiki.luanti.org/Games "Games") and [mods](https://wiki.luanti.org/Mods "Mods") may add custom commands or even alter or remove some of the built-in-commands. + +There are many commands, but you only need to remember the `/help` command. This will give you a list of all commands that are _currently_ available, plus a brief explanation. + +There are a few commands which can be issued by everyone, but some commands only work if you have certain [privileges](https://wiki.luanti.org/Privileges "Privileges") granted on the server. Use the command `/privs` to see your own privileges. If not noted otherwise, the commands in this article are assumed to require no privileges. + +Issuing a command +----------------- + +To issue a command, simply type it like a [chat](https://wiki.luanti.org/Chat "Chat") message or use the [console](https://wiki.luanti.org/Console "Console"). Alternatively, you can just press the “/” key (only in default [controls](https://wiki.luanti.org/Controls "Controls")) which simply opens a [chat window](https://wiki.luanti.org/Chat_window "Chat window") where the “/” has already been typed for you and then type the command right away. The command itself will _not_ appear in the chat. Since every command starts with “/”, this means that ordinary chat messages can’t start with “/”; they will be interpreted as a command instead, even if such a command does not exist. You can tell whether or not a command was successful by the server’s response. If you see something “`-!- Invalid command: /blargh`” in the chat, you probably misspelled something. The most commands will cause the server to write you something else on the chat log for you, if successful. + +Issuing a command from the system terminal +------------------------------------------ + +To issue commands on a Luanti server instance started from the terminal, Luanti has to be built with the [ncurses](https://www.gnu.org/software/ncurses/) library enabled. When `luantiserver` is started with the `--terminal` argument, commands can be executed as they are in-game; i.e. `/` + +General syntax +-------------- + +All server commands start with “/”. After that, one word follows which is itself followed by some or none arguments. You’ll find the exact syntax in the command reference. In the following command reference, text enclosed in `<>` is a placeholder for an actual value. Anything written in `[]` can be omitted. + +### Relative numbers (tilde notation) + +Some commands that accept numbers can accept relative numbers. This means the value is relative to something else, like the current position. To use a relative value, prepend the number with a `~`. The number will then be added to the reference value. E.g. `~5` means the reference value plus 5, `~-7` means the reference value minus 7. Also, writing `~` on its own stands for the reference value. This is also known as the “tilde notation”. + +Example: `/teleport ~ ~10 ~` teleports you 10 blocks above your current position. + +Command reference of built-in commands +-------------------------------------- + +The commands listed here are built into Luanti by default. They’re almost always available, but it’s possible for games and mods to remove even built-in commands (but this is rarely used). + +This reference is up-to-date for version 5.9.0. Remember to use `/help` for the latest command reference (but it is less detailed). + +### Quick documentation + +Show short documentation of server commands and privileges. + +* `/help`—Shows a list of the available commands on the server +* `/help `—Shows short description about the given command +* `/help all`—Same as `/help all` +* `/help privs`—Lists all privileges on the server that could possibly be granted to players and shows a short description about each of them + +With the exception of `/help `, these commands open a window where you can browse the available commands. They are organized by origin. “\*builtin\*” contains commands that come with Luanti. The other sections contain commands coming from mods. + +The text color indicates whether you have the neccessary privileges for a command. A green command means you can use it, gray means you cannot. For `/help privs`, privileges in green are yours. + +If you append `-t` to the command (with the space), the commands will be listed in the chat instead. + +#### Informational + +* `/privs []`—List of privileges granted to , if not specified, your own privileges +* `/haspriv `—List all online players that have the specified privilege +* `/last-login []`—Show the date and time when has logged in the last time into this server ([UTC](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) time zone, [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format). If not specified, shows your own last login time + +#### Chat + +These commands require the “shout” privilege to work. + +* `/msg `—Send a direct message to ; but not to the other players. **Note**: The message is not really secret. Anyone intercepting the network traffic and the server operator could still, in principle, read it +* `/me `—Makes a text in the format “\* ” appear in the chat log. E.g. “/me eats pizza.” leads to “\* Alfred eats pizza.” (if your name is “Alfred”) + +See [Chat](https://wiki.luanti.org/Chat "Chat") for details + +#### Items + +* `/give [ []]`—Give the specified item (see [Itemstrings](https://wiki.luanti.org/Itemstrings "Itemstrings")) times (default: 1) to the player. specifies the damage for tools (0-65535) and is meaningless for other items, higher means more damage (default: 0). Requires the “give” privilege +* `/giveme [ []]`—Give item to yourself. and have the same meaning as for /give. Requires the “give” privilege. +* `/pulverize`—Destroys the wielded item. Can be used by any player +* `/clearinv []`—Destroys all items in your inventory (no argument provided) or in someone else's inventory (`name` provided). To clear someone else's inventory, you need the “server” privilege + +**Hint**: Negative numbers for and will count down from 65536, so you can use -1 as shorthand for 65535, the maximum possible value. + +##### Examples + +* `/giveme default:torch`—Gives you a [torch](https://wiki.luanti.org/Torch "Torch") +* `/give Peter default:cobble 50`—Gives Peter 50 [cobblestone](https://wiki.luanti.org/Cobblestone "Cobblestone") +* `/giveme default:pick_steel 1 16383`—Gives you a steel [pickaxe](https://wiki.luanti.org/Pickaxe "Pickaxe") which is about 25% worn-off + +#### Teleportation + +Teleportation is the immediate displacement of any player to a given position. All of the following commands require the “teleport” privilege: + +* `/teleport ,,`—Teleports yourself to given [coordinates](https://wiki.luanti.org/Coordinates "Coordinates") +* `/teleport `—Teleports yourself to the player with the name +* `/teleport ,,`—Teleports to given coordinates. Also requires the “bring” privilege +* `/teleport `—Teleports to . Also requires the “bring” privilege + +The coordinates support relative values with `~` (see above). You can set a position relative to your current position then. + +[Minetest Game](https://wiki.luanti.org/Games/Minetest_Game "Games/Minetest Game") also provides the command “`/home`”. See [#Command reference for Minetest Game commands](#Command_reference_for_Minetest_Game_commands) + +#### Kill + +* `/kill []`: Kill player or yourself. Requires “`server`” privilege + +### Moderation + +#### Password manipulation + +These commands allow to set and reset the passwords of any player and require the “password” privilege to work. + +* `/setpassword `—Sets password of to +* `/clearpassword `—Makes password of empty + +#### Privilege manipulation + +All these commands require you to have the “privs” (to manipulate all privileges) or “basic\_privs” \[to manipulate the privileges set as basic\_privs in the minetest.conf ( default “interact” and “shout”) privileges\] privilege. + +* `/grant `—Gives the to +* `/grant all`—Give all available privileges to +* `/grantme `—Give to yourself +* `/grantme all`—Gives all privilege to yourself +* `/revoke `—Takes away a from +* `/revoke all`—Takes away as many privileges as possible from +* `/revokeme `—Takes away a from yourself +* `/revokeme all`—Takes away as many privileges as possible from you + +`` can also take a list of privileges, each separated by a comma. For example: `/grantme fly,noclip,fast` grants you the “fly”, “noclip” and “fast” privileges. + +#### Excluding players from server + +These commands allow the user to kick, ban and unban players. Kicking a player means to remove a connected player from the server. This requires the “kick” privilege. Banning a player prevents him/her to connect to the server again. The player does not need to be connected at this time. Unbanning means to remove a ban from a player, allowing him/her to connect to the server again. The ban and unban commands require the “ban” privilege. + +* `/kick []` – Kicks the player with the name . Optionally a can be provided in text-form. This text is also shown to the kicked player. +* `/ban` - show list of banned players +* `/ban `—Ban IP of player +* `/unban `—Remove ban of player with the specified name +* `/unban `—Remove ban of player with the specified IP address + +#### Informational + +Request some information from the server; the answer from the server will also be written into the chatlog. + +* `/admin`—Player name of the administrator / server operator of the server you're connected to. +* `/status`—Shows some information about the server. Usually, this is the server’s Luanti version, the uptime (time the server has been running without interruption), list of connected players and the [message of the day](https://wiki.luanti.org/index.php?title=Message_Of_The_Day&action=edit&redlink=1 "Message Of The Day (page does not exist)") (if it exists). If the uptime does not have a time unit, it is in seconds. Servers can customize this message. +* `/mods`—List of mods installed on the server. +* `/days`—Current game day (counting starts at 0) +* `/time`—Current game time (24h clock) + +#### World manipulation + +* `/time :`—Sets the [time of day](https://wiki.luanti.org/Time_of_day "Time of day") in the 24-hour format (0:00-23:59). Requires the “settime” privilege. Precede the time with a tilde for a relative time change. +* `/time `—Sets the [time of day](https://wiki.luanti.org/Time_of_day "Time of day") as a number between 0 and 24000 (see [time of day](https://wiki.luanti.org/Time_of_day "Time of day")). Requires the “settime” privilege. Supports relative number syntax with `~` (see above). +* `/set -n time_speed `—Sets the speed of [day/night cycle](https://wiki.luanti.org/Time_of_day "Time of day") where `` is the time speed (read as “`` times faster than in real life”). 72 is the default, which means a day-night cycle lasts 20 minutes by default. Requires the “server” privilege +* `/spawnentity [,,]`—Spawns an [entity](http://dev.minetest.net/LuaEntitySAO#Lua_Entity) of type (see [List of entity names](https://wiki.luanti.org/List_of_entity_names "List of entity names")) near your position or at the X,Y,Z coordinates, if specified. Requires “give” and “interact” privileges. The coordinates support relative values with `~` (see above) + +#### Server maintenance + +All of these commands require the “server” privilege. + +* `/shutdown [-r]`—Shuts down the server. If `-r` is provided, players are given an offer to reconnect +* `/shutdown [-r]`—Shuts down the server in `` seconds or aborts a pending shutdown if the number is -1. If `-r` is provided, players are given an offer to reconnect +* `/set `—Shows the value of the given server (→[minetest.conf](https://wiki.luanti.org/Minetest.conf "Minetest.conf")) +* `/set `—Sets the existing server to the given +* `/set -n `—Creates a new server variable named and sets it to +* `/clearobjects [full|quick]`—Clears objects/entities (removes dropped [items](https://wiki.luanti.org/Items "Items"), [mobs](https://wiki.luanti.org/Mobs "Mobs") and possibly more) on the server. In “quick” mode (default), objects in loaded mapblocks are removed immediately, while other objects are removed when the mapblock they're in is loaded. In “full” mode, all objects are cleared. Quick mode is very fast, but the full mode may slow down the server to a crawl for 10 to more than 60 seconds or even freeze it. +* `/auth_reload`—Reloads _auth.txt_, which is the authentication data, containing privileges and Base64-scrambled passwords +* `/emergeblocks here []`—Starts loading (or generating, if inexistent) map blocks around the player's current position with an optional radius (in nodes) +* `/emergeblocks `—Starts loading (or generating, if inexistent) map blocks contained in the area within pos1 and pos2 +* `/fixlight here []`—Resets lighting around the player's current position with an optional radius (in nodes) +* `/fixlight `—Resets lighting contained in the area within pos1 and pos2 +* `/deleteblocks here []`—Removes the MapBlock the player is in, from the database. As this triggers mapgen, this might start mechanisms like mud reflow or cavegen which very likely affect mapblocks outside the specified range. 113 blocks are a safe-distance for a server with no interfering mods. `` is an optional argument to specify the range (in nodes) in which MapBlocks are deleted +* `/deleteblocks `—Removes the MapBlock containing blocks inside the area from pos1 to pos2 from the database. May crash for larger areas. Warnings from above apply +* `/remove_player `—Removes all data accociated to the given player. This only works if the player is currently not connected. This is not deleting authentication information. If a player with this name connects again, he/she inventory, position, etc. are gone. Password remains. + + +Note: The coordinates in `/emergeblocks`, `/fixlight` and `/deleteblocks` support relative numbers (relative to your current position) with `~` (see above). + +### Rollback + +Allows to use [Rollback](https://wiki.luanti.org/index.php?title=Rollback&action=edit&redlink=1 "Rollback (page does not exist)"). Requires the “rollback” privilege. + +* `/rollback_check [] []`—Checks who has last touched a node or near it, max. ago (default =0, default =86400, which equals 24 hours in real time). +* `/rollback []`—Reverts actions of a player; default for is 60 +* `/rollback : []`—Reverts actions of an actor _(not a player)_; default for is 60 + +### Profiler + +The `/profiler` command is a hidden command for developers to test the performance of a game or mod. It is only available if the setting `profiler.load` is enabled. + +If enabled, the profiler starts when the server is launched and then constantly runs in the background and measures the time of certain functions. + +* `/profiler print []`: Prints profiler data into chat (hint: open chat console for better readability) +* `/profiler dump []`: Writes profiler data Luanti log +* `/profiler save [ []]`: Save profiler data into a file in the world directory in a given file format. Possible formats are: txt, csv, lua, json, json\_pretty +* `/profiler reset`: Resets the collected profiler data + +The `` argument optionally filters the output by modname. + +Command reference for Minetest Game commands +-------------------------------------------- + +If you use Minetest Game, a few additional commands are available. These commands may not be available if you use a different [Games](https://wiki.luanti.org/Games "Games"). + +* `/sethome`—Sets your current position as your “home point”. Requires the “home” privilege +* `/home`—Teleports yourself to your “home point”. This command does not work if you haven’t set your “home point” yet, set it with `/sethome` first. Requires the “home” privilege +* `/killme`—Kills yourself \ No newline at end of file diff --git a/content/server-metrics-using-prometheus.md b/content/server-metrics-using-prometheus.md new file mode 100644 index 0000000..ad6b00b --- /dev/null +++ b/content/server-metrics-using-prometheus.md @@ -0,0 +1,62 @@ +--- +title: Server Metrics using Prometheus +aliases: +- /Server_Metrics_using_Prometheus +--- + +# Server Metrics using Prometheus +Prometheus is an "open-source monitoring system with a dimensional data model, flexible query language, efficient time series database and modern alerting approach". + +Luanti has built-in support for prometheus, allowing you to see metrics about your server - such as player count and performance information. + +Here are some examples of Grafana dashboards created using Prometheus: + +\- [monitor.rubenwardy.com](https://monitor.rubenwardy.com/d/9TgIegyGk/ctf) - [monitoring.minetest.land](https://monitoring.minetest.land/) (note: this contains heavy mondifications) + +Using Prometheus in Luanti +-------------------------- + +### Get or build the prometheus-cpp library + +You may be able to find prometheus-cpp in your distro's package manager. Otherwise, you'll need to build it and make it available to Luanti. + +Here's how you do that on Linux: + +```bash +cd /tmp +git clone --recursive https://github.com/jupp0r/prometheus-cpp +mkdir prometheus-cpp/build +cd prometheus-cpp/build +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release -DENABLE_TESTING=0 +make -j$(nproc) +sudo make install +``` + + +### Build Luanti + +Now, you need build Luanti with Prometheus enabled + +```bash +cmake . -DENABLE_PROMETHEUS=1 +make -j$(nproc) +``` + + +### Configure prometheus + +Prometheus will make HTTP requests to Luanti's prometheus-cpp library to get the metrics. + +You can set the prometheus listen address by assigning an IP:PORT in the minetest.conf: + +```` +prometheus_listener_address = 127.0.0.1:30000 +``` + + +Grafana +------- + +You can link up Prometheus to Grafana to make nice web graphs. For example: [monitor.rubenwardy.com](https://monitor.rubenwardy.com/d/r6cCl68mk/minetest-servers) + +To do: example layouts \ No newline at end of file diff --git a/content/setting-up-a-server.md b/content/setting-up-a-server.md index a89c6ba..203212c 100644 --- a/content/setting-up-a-server.md +++ b/content/setting-up-a-server.md @@ -2,6 +2,7 @@ title: Setting up a server aliases: - /Setting_up_a_server +- /Setting_up_a_server/Debian --- # Setting up a server diff --git a/content/tool.md b/content/tool.md new file mode 100644 index 0000000..1c5e459 --- /dev/null +++ b/content/tool.md @@ -0,0 +1,78 @@ +--- +title: Tool +aliases: +- /Tool +--- + +# Tool + +A **tool** is an [item](https://wiki.luanti.org/Items "Items") which has some practical use to interact with the environment. Although some tools are unique, all tools have certain properties in common. + +Usage +----- + +How to use a tool often depends on the tool itself. Most tools are used with the attack key (Left mouse button) or the build key (right mouse button). + +Mining tools +------------ + +Many tools are mining tools; refer to [Mining](https://wiki.luanti.org/Mining "Mining") for more information. + +Weapons +------- + +Tools which are able to damage opponents are called “weapons”. Since weapons share all properties of tools, weapons are considered tools, too. You attack with the attack key (obviously). Each weapon deals different weapons and it’s also possible that damage differs based on what you attack (since the target might be resistant to damage). + +Weapons have a “full punch interval”, this is the time it takes between attacks to deal the full damage again. This is indicated by the weapon “swing” animation. If you attack after the full punch interval has passed, you deal the full damage. But it is possible to attack before that, but the damage dealt will be reduced (possibly down to 0). So you decide whether you attack quickly, but with low damage, or take your time between swings, and deal full damage. + +Wear +---- + +A tool may wear off when used often. Whether and how fast a tool wears off depends on the tool type. Each time you use such a tool it becomes a little bit worn off. This wiki often shows how often a tool can be used with the “uses” count. I.e. “20 uses means” the tool can be used 20 times before breaking. This number might not always be exact, it’s often more complex, so check out additional notes in the respective wiki pages. + +You can tell how much a tool is worn off by a small colored bar below the inventory icon. A tool which doesn’t wear off or which is not worn off yet does not have such a bar under its inventory icon. When this bar becomes empty, the tool is destroyed. You might consider [repairing](#Repairing) a tool before it becomes destroyed. + +Weapons get used up by attacks, mining tools get used up by mining, other tools get used up for other reasons. Some tools might not get worn out at all, however. The tool wear caused by damage is proportional to the time from the last swing, i.e. a quick, low damage attack wears out the weapon less, while full blows also add the maximum wear. The wear caused by mining increases with the “difficulty” of the block being mined, the higher the difficulty, the higher the wear. Blocks that could have been dug by the [Hand](https://wiki.luanti.org/Hand "Hand") (default tool) do not add to the tool wear. + +In [Creative Mode](https://wiki.luanti.org/Creative_Mode "Creative Mode"), tools generally do not wear. + +### Repairing + +A game can make a repairing [recipe](https://wiki.luanti.org/Crafting "Crafting") available. If this is the case, tools which wear off can be repaired by placing two tools of the some kind into the crafting grid. The recipe is shapeless. Other games and mods may change this percentage or even disallow repairing completely, or add a custom repairing method. + +Default tool +------------ + +When you wield nothing at all (empty slot in highlighted [hotbar](https://wiki.luanti.org/Hotbar "Hotbar") slot) then you “wield” the default tool. All [games](https://wiki.luanti.org/Games "Games") have its own default tool and it may or may not be different. The default tool is not a tool because it’s not an item but it is called “default tool” because it shares many properties with tools. + +The default tool never wears off and doesn’t behave like an item; e.g. it can’t be thrown away. + +The default tool may or may not be a mining tool and it may or may not be a weapon. It is always possible with the default tool to collect stuff. + +If you carry an item which is not a tool (for example: a stone), it has the same properties as you’d have with the default tool. If the default tool is a digging tool and you try to mine a block with a tool for which it wasn’t build for, the mining time equals the mining time of the default tool. + +Tools in [Minetest Game](https://wiki.luanti.org/Games/Minetest_Game "Games/Minetest Game") +------------------------------------------------------------------------------------------- + +The available tools are: + +* [Hand](https://wiki.luanti.org/Hand "Hand") – default tool; [mines](https://wiki.luanti.org/Mining "Mining") the weakest blocks, serves as a weak weapon +* [Pickaxe](https://wiki.luanti.org/Pickaxe "Pickaxe") – mines cracky blocks like [Stone](https://wiki.luanti.org/Stone "Stone") +* [Shovel](https://wiki.luanti.org/Shovel "Shovel") – mines crumbly blocks like [Dirt](https://wiki.luanti.org/Dirt "Dirt"), [Sand](https://wiki.luanti.org/Sand "Sand"), etc. +* [Axe](https://wiki.luanti.org/Axe "Axe") – mines choppy blocks like [Trees](https://wiki.luanti.org/Tree "Tree") +* [Sword](https://wiki.luanti.org/Sword "Sword") – hurts enemies +* [Bucket](https://wiki.luanti.org/Bucket "Bucket") – collects [liquids](https://wiki.luanti.org/Liquid "Liquid") +* [Screwdriver](https://wiki.luanti.org/Screwdriver "Screwdriver") – rotates blocks + +In Minetest Game, repairing is enabled. You will receive a tool which is 2% less worn off. + +Tools in other games +-------------------- + +Mining tools and melee weapons of all kinds are quite popular. But modders can still come up with tools which serve an entire different purpose. + +In practice, the default tool is often a hand. + +Modders may come up with their own ways to repair tools as well. + +Theoretically, modders may even abuse the “wear-off bar” for purposes other than showing the tool’s wear. \ No newline at end of file diff --git a/content/troubleshooting.md b/content/troubleshooting.md new file mode 100644 index 0000000..69c76b1 --- /dev/null +++ b/content/troubleshooting.md @@ -0,0 +1,159 @@ +--- +title: Troubleshooting +aliases: +- /Troubleshooting +--- + +# Troubleshooting + +This page lists common technical problems like crashes and error messages (enclosed in quotation marks) and possible solutions or explanations. For general questions, refer to [FAQ](https://wiki.luanti.org/FAQ "FAQ"). + +For information on how to report bugs, read [Reporting bugs](https://wiki.luanti.org/Reporting_bugs "Reporting bugs"). + +Graphics and sound +------------------ + +### The screen is too dark + +If you feel the screen is too dark, you can adjust the display gamma to a more comfortable value. By default, it is set to 2.2 out of the possible choices between 1.0 and 3.0, with _higher_ numbers being brighter. + +To change the display gamma, open your [minetest.conf](https://wiki.luanti.org/Minetest.conf "Minetest.conf") then add the line: + +``` + display_gamma = 3.0 + +``` + + +If the screen still appears too dark, there currently is no other easy solution apart from changing your display settings. If nothing else works and you still wish to increase the brightness, you will have to edit a text file. This only works with shaders enabled. Open `(Luanti directory)/client/shaders/nodes_shader/opengl_fragment.glsl` with a text editor, search for this line: + +```glsl +vec4 base = texture2D(baseTexture, uv).rgba; + +``` + + +and change it to: + +```glsl +vec4 base = texture2D(baseTexture, uv).rgba; +float factor = 1.2; +base.rgb *= factor; + +``` + + +You can try other values instead of 1.2, the higher the brighter. Add a decimal point even if you use integral values, for example `float factor = 2.0;` instead of `float factor = 2;`, as some drivers don't accept it otherwise. + +### Everything in the game is in a weird color (particularly red), looks like rainbows, can partially see through things + +Turn off shaders. Shaders are not supported by your graphics card. + +### There is no sound under Windows + +You need to download OpenAL to play sound on Windows (the file needed is [oalinst.exe](http://sfan.sf.funpic.de/oalinst.exe), you need to execute the program after it has finished downloading. Firefox and Chrome users may need to either save file or keep downloading, Internet Explorer users will need to just press run. Other browsers maybe the same or different. If one browser fails, try another.) + +### The textures look blurry, but I want the pixels to show! + +Turn off bilinear/trilinear filtering. + +Error messages without crashes +------------------------------ + +### "unable to open database file" + +If error message looks similar to the following, move the Luanti installation to a path that only contains ASCII characters. For example: move it to "C:\\Games\\Luanti\\" + +``` +AsyncErr: ServerThread::run Lua: Runtime error from mod '*builtin*' in callback on_prejoinplayer(): +Failed to open SQLite3 database file C:\Users\ПЛАТЫ\Downloads\minetest-unzip\bin\..\worlds\newname +\auth.sqlite: unable to open database file + +``` + + +### “Unsupported texture format” + +Don’t worry, this is completely normal. Luanti will still work. + +### “Generating dummy image for \[…\].png” + +This means that a faulty mod or texture pack does not supply an image for an object. Luanti will still work normally, but the specified object will use a replacement image (the “dummy image”); it will be a random color. This should normally be reported to the author of the mod or texture pack. + +### "ERROR: No world name given or no game selected" in create world + +You need to select a game, pick one you have installed from the gamebar at the bottom of the singleplayer tab. + +Crashes +------- + +_All sub-section titles in double quotes here mean that Luanti crashed with an error message like that._ + +### Any operating system + +#### “Luanti can not load \[…\]/init.lua” + +List of possible causes and the solution for each: + +**Mod directory is named incorrectly** + +Mod directories sometimes have an unwanted name termination. GitHub usually appends "-master" to the directory name, i.e. "modname-master". Also, mod makers may sometimes add version numbers to the name, such as "modname-v2.0" To solve this problem, simply remove the unwanted termination ("-master", "-v2.0") from the directory name and try again. + +If you're unsure of the correct name: check the mod's topic title on the forum and copy the mod name which is found inside the square brackets \[ \]. + +**Invalid installation** + +Ensure that you installed the mod correctly (empty mod directory?), read again [Installing Mods](https://wiki.luanti.org/Installing_Mods "Installing Mods"). + +**Still does not work** + +If nothing helps, it might be a problem with the mod itself. Report the error to the mod author on the mod's forum page or, if available, the mod's GitHub page. Copy and paste the section in debug.txt that starts with "=====ERROR FROM LUA=====", or any relevant line about this problem. + +#### ”attempt to index field '' (a nil value)” + +These error may look like one these: + +``` +init.lua:2: attempt to index field 'settings' (a nil value) +init.lua:18: attempt to call field 'register_lbm' (a nil value) +tools.lua:61: attempt to call global 'nodeupdate' (a nil value) + +``` + + +The first two errors are caused by an outdated Luanti version, latter by an old mod which tries to call API functions which were removed. In the first case, you can [update Luanti](http://minetest.net/download) or try an in-development build to see whether it works. For the second case, check for mod updates or tell the author about your problem. + +#### “Assertion '0' failed” + +This is usually a mod error. Report it to the mod programmer or mod programmers. To find out the name of the mod, look for any error text directly above that gives a path to a mod's init.lua + +``` + ERROR: An unhandled exception occurred: LuaError: error: mods/minetest//init.lua:69: [...] + +``` + + +#### “ServerEnvironment::loadMeta(): EnvArgsEnd not found” + +This means that _env\_meta.txt_ in your world folder got corrupted. Since it doesn't contain any important information you can simply delete the file and let Luanti re-create it. + +### Windows + +#### “MSCP2010.dll is not found” (or similar) + +This is because Microsoft C++ Redistribute Package 2010 is not installed. [\[1\]](http://www.microsoft.com/en-us/download/details.aspx?id=5555%7CDownload) + +#### Luanti doesn’t even start + +If it stops working before the main window even opens, and there are no error messages in debug.txt, then try restarting your computer. (sometimes it crashes with a `0x00005` error, which is caused by Windows updates.) You can try looking in debug.txt for an error message or searching for a similar article in the forums. + +Controls +-------- + +#### I have a trackpad and I can't walk and move my head at the same time + +This is a problem with the trackpad configuration in your operating system, not with Luanti - some operating systems can be configured to disable keyboard input while the trackpad is being used. + +To fix under the GNOME desktop environment, install and open "gnome-tweak-tool" and open the "Keyboard & Mouse" section. Then, flip the "Disable While Typing" switch. + +To fix under other platforms please search the Web for instructions on changing this setting. \ No newline at end of file diff --git a/content/tutorials.md b/content/tutorials.md new file mode 100644 index 0000000..7943c3e --- /dev/null +++ b/content/tutorials.md @@ -0,0 +1,69 @@ +--- +title: Tutorials +aliases: +- /Tutorials +--- + +# Tutorials + +New to Luanti? Need help setting up a [server](https://wiki.luanti.org/Server "Server") or making a [texture pack](https://wiki.luanti.org/Texture_Packs "Texture Packs")? Then you've come to the right place. On this page is a comprehensive list of all the tutorials/guides on the Minetest Wiki. + +Beginner tutorials for Players +------------------------------ + +If you're new and do not know what to do, see below. + +* [Tutorial](https://content.minetest.net/packages/Wuzzy/tutorial/): Fully-playable tutorial game teaching the basics of common Luanti gameplay +* [How to build your first house](https://wiki.luanti.org/How_to_build_your_first_house "How to build your first house") **(Minetest Game)** + +General information +------------------- + +* [Controls](https://wiki.luanti.org/Controls "Controls") +* [Server commands](https://wiki.luanti.org/Server_commands "Server commands") +* [Privileges](https://wiki.luanti.org/Privileges "Privileges") +* [minetest.conf](https://wiki.luanti.org/Minetest.conf "Minetest.conf") + +Servers +------- + +Luanti offers a fun online multiplayer mode. With this guide you can set up your server and host it on the web. + +* [General information about servers](https://wiki.luanti.org/Server "Server") +* [Setting up a server](https://wiki.luanti.org/Setting_up_a_server "Setting up a server") + +Mods +---- + +[Mods](https://wiki.luanti.org/Mods "Mods") are packages that may add or change something in a game. Each game for Luanti has its own ecosystem of mods that extend that particular game, or there are game-agnostic mods that support all games. + +* [Installing Mods](https://wiki.luanti.org/Installing_Mods "Installing Mods") +* [Installing Client-Side Mods](https://wiki.luanti.org/Installing_Client-Side_Mods "Installing Client-Side Mods") + +Texture Packs +------------- + +[Texture packs](https://wiki.luanti.org/Texture_Packs "Texture Packs") change the look of Luanti. Tired of looking at the same old textures? [ContentDB](https://content.minetest.net/packages/?type=txp) offers many texture packs for you to pick between. + +* [Installing texture packs](https://wiki.luanti.org/Texture_Packs#Installation "Texture Packs") +* [Creating texture packs](https://wiki.luanti.org/Texture_Packs#Texture_Pack_Creation "Texture Packs") + +Games +----- + +You can play different [games](https://wiki.luanti.org/Games "Games") on Luanti, each with unique gameplay aspects. + +* [Installing games](https://wiki.luanti.org/Games#Installing_games "Games") +* [Creating games](https://wiki.luanti.org/Games#Creating_games "Games") + +Maps +---- + +Maps are the creations of the Luanti community. Not only you create your own maps, you can also install other people's maps. + +* [Installing maps](https://wiki.luanti.org/Maps#Installation "Maps") + +3D Meshes +--------- + +* [Using Blender](https://wiki.luanti.org/Using_Blender "Using Blender") to create 3D meshes (for entities) \ No newline at end of file diff --git a/content/worlds.md b/content/worlds.md new file mode 100644 index 0000000..334d443 --- /dev/null +++ b/content/worlds.md @@ -0,0 +1,57 @@ +--- +title: Worlds +aliases: +- /Worlds +--- + +# Worlds + +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](https://forum.minetest.net/viewforum.php?f=12) in the [forums](http://forum.minetest.net/) 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](https://7-zip.org/). + +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 Luanti 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](https://github.com/minetest/minetest/blob/master/doc/world_format.md) in the Luanti source tree. + +Schem file Creation / Import +---------------------------- + +A **schem file (`.mts`)** is used to import building(s) into a world with the [WorldEdit mod](https://content.minetest.net/packages/sfan5/worldedit/). This file can be found in “`worlds//schems`” folder. + +* To **create a schem file** : + +1. Type in your world name (with WorldEdit activated). +2. Grant yourself all [privileges](https://wiki.luanti.org/Privileges "Privileges"): `/grantme all` +3. Press F5 to show the coordinates. +4. Select the area to export by commands with `//pos1` and `//pos2` (these positions corresponds to an invisible diagonal of a cuboid selection). +5. Create your schem file with `//mtschemcreate `. The file will be created into your “`worlds//schems`” folder. + +* To **import a schem file** : + +1. Enter in your world (with WorldEdit activated). +2. Grant yourself all privileges: `/grantme all` +3. Put a schem file into your “`worlds//schems`" folder. +4. Press F5 to show the coordinatess. +5. Place a position where you want with command: `//pos1` +6. Import your schem file with `//mtschemplace ` + +See also +-------- + +* [Minetestmapper](https://wiki.luanti.org/Minetestmapper "Minetestmapper"), a program to draw a 2D map of a Luanti world. From 901f58df437fd5d95de54c4b537797e251b90013 Mon Sep 17 00:00:00 2001 From: wsor4035 <24964441+wsor4035@users.noreply.github.com> Date: Tue, 31 Dec 2024 15:39:56 -0500 Subject: [PATCH 2/2] fix warnings, ci is worthless --- content/server-commands.md | 52 +++++++++++++++++++------------------- content/troubleshooting.md | 2 +- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/content/server-commands.md b/content/server-commands.md index d9a8e42..fd1d267 100644 --- a/content/server-commands.md +++ b/content/server-commands.md @@ -62,27 +62,27 @@ If you append `-t` to the command (with the space), the commands will be listed #### Informational -* `/privs []`—List of privileges granted to , if not specified, your own privileges +* `/privs []`—List of privileges granted to ``, if not specified, your own privileges * `/haspriv `—List all online players that have the specified privilege -* `/last-login []`—Show the date and time when has logged in the last time into this server ([UTC](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) time zone, [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format). If not specified, shows your own last login time +* `/last-login []`—Show the date and time when `` has logged in the last time into this server ([UTC](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) time zone, [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format). If not specified, shows your own last login time #### Chat These commands require the “shout” privilege to work. -* `/msg `—Send a direct message to ; but not to the other players. **Note**: The message is not really secret. Anyone intercepting the network traffic and the server operator could still, in principle, read it -* `/me `—Makes a text in the format “\* ” appear in the chat log. E.g. “/me eats pizza.” leads to “\* Alfred eats pizza.” (if your name is “Alfred”) +* `/msg `—Send a direct message `` to ``; but not to the other players. **Note**: The message is not really secret. Anyone intercepting the network traffic and the server operator could still, in principle, read it +* `/me `—Makes a text in the format “\* ` `” appear in the chat log. E.g. “/me eats pizza.” leads to “\* Alfred eats pizza.” (if your name is “Alfred”) See [Chat](https://wiki.luanti.org/Chat "Chat") for details #### Items -* `/give [ []]`—Give the specified item (see [Itemstrings](https://wiki.luanti.org/Itemstrings "Itemstrings")) times (default: 1) to the player. specifies the damage for tools (0-65535) and is meaningless for other items, higher means more damage (default: 0). Requires the “give” privilege -* `/giveme [ []]`—Give item to yourself. and have the same meaning as for /give. Requires the “give” privilege. +* `/give [ []]`—Give the specified item (see [Itemstrings](https://wiki.luanti.org/Itemstrings "Itemstrings")) `` times (default: 1) to the player. `` specifies the damage for tools (0-65535) and is meaningless for other items, higher means more damage (default: 0). Requires the “give” privilege +* `/giveme [ []]`—Give item to yourself. `` and `` have the same meaning as for /give. Requires the “give” privilege. * `/pulverize`—Destroys the wielded item. Can be used by any player * `/clearinv []`—Destroys all items in your inventory (no argument provided) or in someone else's inventory (`name` provided). To clear someone else's inventory, you need the “server” privilege -**Hint**: Negative numbers for and will count down from 65536, so you can use -1 as shorthand for 65535, the maximum possible value. +**Hint**: Negative numbers for `` and `` will count down from 65536, so you can use -1 as shorthand for 65535, the maximum possible value. ##### Examples @@ -95,9 +95,9 @@ See [Chat](https://wiki.luanti.org/Chat "Chat") for details Teleportation is the immediate displacement of any player to a given position. All of the following commands require the “teleport” privilege: * `/teleport ,,`—Teleports yourself to given [coordinates](https://wiki.luanti.org/Coordinates "Coordinates") -* `/teleport `—Teleports yourself to the player with the name -* `/teleport ,,`—Teleports to given coordinates. Also requires the “bring” privilege -* `/teleport `—Teleports to . Also requires the “bring” privilege +* `/teleport `—Teleports yourself to the player with the name `` +* `/teleport ,,`—Teleports `` to given coordinates. Also requires the “bring” privilege +* `/teleport `—Teleports `` to ``. Also requires the “bring” privilege The coordinates support relative values with `~` (see above). You can set a position relative to your current position then. @@ -113,20 +113,20 @@ The coordinates support relative values with `~` (see above). You can set a posi These commands allow to set and reset the passwords of any player and require the “password” privilege to work. -* `/setpassword `—Sets password of to -* `/clearpassword `—Makes password of empty +* `/setpassword `—Sets password of `` to `` +* `/clearpassword `—Makes password of `` empty #### Privilege manipulation All these commands require you to have the “privs” (to manipulate all privileges) or “basic\_privs” \[to manipulate the privileges set as basic\_privs in the minetest.conf ( default “interact” and “shout”) privileges\] privilege. -* `/grant `—Gives the to -* `/grant all`—Give all available privileges to -* `/grantme `—Give to yourself +* `/grant `—Gives the `` to `` +* `/grant all`—Give all available privileges to `` +* `/grantme `—Give `` to yourself * `/grantme all`—Gives all privilege to yourself -* `/revoke `—Takes away a from -* `/revoke all`—Takes away as many privileges as possible from -* `/revokeme `—Takes away a from yourself +* `/revoke `—Takes away a `` from `` +* `/revoke all`—Takes away as many privileges as possible from `` +* `/revokeme `—Takes away a `` from yourself * `/revokeme all`—Takes away as many privileges as possible from you `` can also take a list of privileges, each separated by a comma. For example: `/grantme fly,noclip,fast` grants you the “fly”, “noclip” and “fast” privileges. @@ -135,7 +135,7 @@ All these commands require you to have the “privs” (to manipulate all privil These commands allow the user to kick, ban and unban players. Kicking a player means to remove a connected player from the server. This requires the “kick” privilege. Banning a player prevents him/her to connect to the server again. The player does not need to be connected at this time. Unbanning means to remove a ban from a player, allowing him/her to connect to the server again. The ban and unban commands require the “ban” privilege. -* `/kick []` – Kicks the player with the name . Optionally a can be provided in text-form. This text is also shown to the kicked player. +* `/kick []` – Kicks the player with the name ``. Optionally a `` can be provided in text-form. This text is also shown to the kicked player. * `/ban` - show list of banned players * `/ban `—Ban IP of player * `/unban `—Remove ban of player with the specified name @@ -156,7 +156,7 @@ Request some information from the server; the answer from the server will also b * `/time :`—Sets the [time of day](https://wiki.luanti.org/Time_of_day "Time of day") in the 24-hour format (0:00-23:59). Requires the “settime” privilege. Precede the time with a tilde for a relative time change. * `/time `—Sets the [time of day](https://wiki.luanti.org/Time_of_day "Time of day") as a number between 0 and 24000 (see [time of day](https://wiki.luanti.org/Time_of_day "Time of day")). Requires the “settime” privilege. Supports relative number syntax with `~` (see above). * `/set -n time_speed `—Sets the speed of [day/night cycle](https://wiki.luanti.org/Time_of_day "Time of day") where `` is the time speed (read as “`` times faster than in real life”). 72 is the default, which means a day-night cycle lasts 20 minutes by default. Requires the “server” privilege -* `/spawnentity [,,]`—Spawns an [entity](http://dev.minetest.net/LuaEntitySAO#Lua_Entity) of type (see [List of entity names](https://wiki.luanti.org/List_of_entity_names "List of entity names")) near your position or at the X,Y,Z coordinates, if specified. Requires “give” and “interact” privileges. The coordinates support relative values with `~` (see above) +* `/spawnentity [,,]`—Spawns an [entity](http://dev.minetest.net/LuaEntitySAO#Lua_Entity) of type `` (see [List of entity names](https://wiki.luanti.org/List_of_entity_names "List of entity names")) near your position or at the X,Y,Z coordinates, if specified. Requires “give” and “interact” privileges. The coordinates support relative values with `~` (see above) #### Server maintenance @@ -164,9 +164,9 @@ All of these commands require the “server” privilege. * `/shutdown [-r]`—Shuts down the server. If `-r` is provided, players are given an offer to reconnect * `/shutdown [-r]`—Shuts down the server in `` seconds or aborts a pending shutdown if the number is -1. If `-r` is provided, players are given an offer to reconnect -* `/set `—Shows the value of the given server (→[minetest.conf](https://wiki.luanti.org/Minetest.conf "Minetest.conf")) -* `/set `—Sets the existing server to the given -* `/set -n `—Creates a new server variable named and sets it to +* `/set `—Shows the value of the given server `` (→[minetest.conf](https://wiki.luanti.org/Minetest.conf "Minetest.conf")) +* `/set `—Sets the existing server `` to the given `` +* `/set -n `—Creates a new server variable named `` and sets it to `` * `/clearobjects [full|quick]`—Clears objects/entities (removes dropped [items](https://wiki.luanti.org/Items "Items"), [mobs](https://wiki.luanti.org/Mobs "Mobs") and possibly more) on the server. In “quick” mode (default), objects in loaded mapblocks are removed immediately, while other objects are removed when the mapblock they're in is loaded. In “full” mode, all objects are cleared. Quick mode is very fast, but the full mode may slow down the server to a crawl for 10 to more than 60 seconds or even freeze it. * `/auth_reload`—Reloads _auth.txt_, which is the authentication data, containing privileges and Base64-scrambled passwords * `/emergeblocks here []`—Starts loading (or generating, if inexistent) map blocks around the player's current position with an optional radius (in nodes) @@ -184,9 +184,9 @@ Note: The coordinates in `/emergeblocks`, `/fixlight` and `/deleteblocks` suppor Allows to use [Rollback](https://wiki.luanti.org/index.php?title=Rollback&action=edit&redlink=1 "Rollback (page does not exist)"). Requires the “rollback” privilege. -* `/rollback_check [] []`—Checks who has last touched a node or near it, max. ago (default =0, default =86400, which equals 24 hours in real time). -* `/rollback []`—Reverts actions of a player; default for is 60 -* `/rollback : []`—Reverts actions of an actor _(not a player)_; default for is 60 +* `/rollback_check [] []`—Checks who has last touched a node or near it, max. `` ago (default `=0`, default `=86400`, which equals 24 hours in real time). +* `/rollback []`—Reverts actions of a player; default for `` is 60 +* `/rollback : []`—Reverts actions of an actor _(not a player)_; default for `` is 60 ### Profiler diff --git a/content/troubleshooting.md b/content/troubleshooting.md index 69c76b1..7d0cc01 100644 --- a/content/troubleshooting.md +++ b/content/troubleshooting.md @@ -109,7 +109,7 @@ Ensure that you installed the mod correctly (empty mod directory?), read again [ If nothing helps, it might be a problem with the mod itself. Report the error to the mod author on the mod's forum page or, if available, the mod's GitHub page. Copy and paste the section in debug.txt that starts with "=====ERROR FROM LUA=====", or any relevant line about this problem. -#### ”attempt to index field '' (a nil value)” +#### ”attempt to index field `` (a nil value)” These error may look like one these: