<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.minetest.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Poikilos</id>
	<title>Minetest - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.minetest.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Poikilos"/>
	<link rel="alternate" type="text/html" href="https://wiki.minetest.org/Special:Contributions/Poikilos"/>
	<updated>2026-04-05T10:44:58Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.4</generator>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17754</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17754"/>
		<updated>2026-01-31T15:01:56Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Clarify Lua's role.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Minetest People#Poikilos|Poikilos]]' EnlivenMinetest repo is used as the issue tracker for [[Minetest|Final Minetest]]:&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from several files and notes to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are gameplay issues (such as unintuitive or missing features) and therefore are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* Linux Minetest Kit's engine releases (for differences from Luanti and each other, see [[MT5 Changes]]):&lt;br /&gt;
** &amp;quot;Classic&amp;quot; Final Minetest&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Linux Minetest Kit's [[Minetest#Minetest_games|Games]]&lt;br /&gt;
** [[Bucket Game]]: Contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game.&lt;br /&gt;
** any others included or on live servers&lt;br /&gt;
* Live servers ([[MTWorlds#OldCoder_worlds]])&lt;br /&gt;
* Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17753</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17753"/>
		<updated>2026-01-31T14:58:23Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Clarify Linux Minetest Kit vs Final Minetest&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Minetest People#Poikilos|Poikilos]]' EnlivenMinetest repo is used as the issue tracker for [[Minetest|Final Minetest]]:&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from several files and notes to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* Linux Minetest Kit's engine releases (for differences from Luanti and each other, see [[MT5 Changes]]):&lt;br /&gt;
** &amp;quot;Classic&amp;quot; Final Minetest&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Linux Minetest Kit's [[Minetest#Minetest_games|Games]]&lt;br /&gt;
** [[Bucket Game]]: Contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game.&lt;br /&gt;
** any others included or on live servers&lt;br /&gt;
* Live servers ([[MTWorlds#OldCoder_worlds]])&lt;br /&gt;
* Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17752</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17752"/>
		<updated>2026-01-31T14:54:54Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Minetest People#Poikilos|Poikilos]]' EnlivenMinetest repo is used as the issue tracker for [[Minetest|Final Minetest]]:&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from several files and notes to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* Final Minetest's engine releases (for differences from Luanti and each other, see [[MT5 Changes]]):&lt;br /&gt;
** Classic&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Final Minetest's [[Minetest#Minetest_games|Games]]&lt;br /&gt;
** [[Bucket Game]]: Contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game.&lt;br /&gt;
** [[meselite]]&lt;br /&gt;
** any others included or on live servers&lt;br /&gt;
* Final Minetest's worlds&lt;br /&gt;
** Live servers ([[MTWorlds#OldCoder_worlds]])&lt;br /&gt;
** Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Minetest&amp;diff=17751</id>
		<title>Minetest</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Minetest&amp;diff=17751"/>
		<updated>2026-01-31T14:50:33Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: /* Minetest releases */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;p44_navbar&amp;quot;&amp;gt;&lt;br /&gt;
[[Main_Page|Start Page]]&lt;br /&gt;
[[Browser_Play|Browser Play!]]&lt;br /&gt;
[[Minetest|This page]]&lt;br /&gt;
[[MTWorlds|MTWorlds]]&lt;br /&gt;
[[Player_Basics|Player Basics]]&lt;br /&gt;
[[Bucket_Game|Bucket Game]]&lt;br /&gt;
[[Downloads|Downloads]]&lt;br /&gt;
[[Contact|Contact]]&lt;br /&gt;
[[Devel_Center|Devel Center]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;p44_navbar&amp;quot;&amp;gt;&lt;br /&gt;
[https://minetest.org/ minetest.org]&lt;br /&gt;
[https://minetest.io minetest.io]&lt;br /&gt;
[https://git.minetest.io/ 9,000 gits]&lt;br /&gt;
[https://irc.minetest.org:9000/ CoderChat]&lt;br /&gt;
[https://edgy1.net/ EdgyNet]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;introduction&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This page explains what Minetest is.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;basic-concepts&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Basic concepts ==&lt;br /&gt;
&lt;br /&gt;
Minetest provides a builder, or player, with virtual worlds to visit and do things in. The worlds break down into maps and &amp;quot;_games&amp;quot;. We’ll come back to both words.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;servers-and-clients&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Servers and clients ==&lt;br /&gt;
&lt;br /&gt;
Minetest can be used in offline mode. This mode requires a PC.&lt;br /&gt;
&lt;br /&gt;
In offline mode, the user creates one or more worlds on his or her PC and visits them. No Internet is needed.&lt;br /&gt;
&lt;br /&gt;
Minetest can also be used in online mode. In this mode, worlds are created by world hosts on the Internet. Users run a Minetest client program to visit the worlds.&lt;br /&gt;
&lt;br /&gt;
Standard copies of Final Minetest include both the server program needed to create online worlds and the client program needed to visit them.&lt;br /&gt;
&lt;br /&gt;
Final Minetest runs on Linux, Windows 7 and 10, BSD, and Devuan on Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
As of 2023, there is no native Final Minetest client that runs on Android or iOS. However, the MultiCraft client program is able to visit Final Minetest worlds. MultiCraft runs on Android and iOS phones and tablets.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;minetest-releases&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Minetest releases ==&lt;br /&gt;
&lt;br /&gt;
Final Minetest is compatible with everything for now. This means servers and clients from Minetest 0.4.X Classic, Trolltest 5, MultiCraft 1 and 2, and Final Minetest itself including both old and new releases.&lt;br /&gt;
&lt;br /&gt;
Warning: Final Minetest '''may not''' support post-2023 releases of Trolltest and MultiCraft.&lt;br /&gt;
&lt;br /&gt;
See also [[MT5 Changes]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;the-purpose-of-a-minetest-world&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of a Minetest world&amp;amp;nbsp; ==&lt;br /&gt;
&lt;br /&gt;
There are four main types of worlds: Creative, Survival, Social, and Puzzle.&lt;br /&gt;
&lt;br /&gt;
* In a Creative world, it's easy to obtain building materials. Food isn't needed or it's also easy to obtain. The point of the _game is to create interesting buildings and structures.&lt;br /&gt;
* In a Survival world, one must work to stay alive and to obtain building materials. The point of the _game is to succeed at both and to build interesting things as well.&lt;br /&gt;
* A Social world starts out as Creative or Survival and adds elements such as kingdoms, factions, trade, and/or warfare.&lt;br /&gt;
* A Puzzle world is about solving one or more puzzles. It may include elements of the other types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;minetest-maps&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Minetest maps ==&lt;br /&gt;
&lt;br /&gt;
A Minetest map is the terrain in a world – mountains, valleys, etc. – and the buildings that visitors have created.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;minetest-_games&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Minetest _games ==&lt;br /&gt;
&lt;br /&gt;
A &amp;quot;_game&amp;quot; is a set of pieces that gives a world its personality. The pieces include tools, blocks to build with, rules, types of animals, etc. &amp;quot;_games&amp;quot; are also referred to as &amp;quot;modsets&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Final Minetest offers a number of _games. Important examples include Bucket Game, NotCraft, MeseLite, and Subnasa. The last two _games are very light and should work with most old smartphones as clients.&lt;br /&gt;
&lt;br /&gt;
Bucket Game is a general-purpose _game with piles of features. It can be used to create worlds of any type. This _game might be too heavy for some mobile devices.&lt;br /&gt;
&lt;br /&gt;
NotCraft has a look and feel similar to that of MineCraft (tm). It’s used to create Survival worlds.&lt;br /&gt;
&lt;br /&gt;
Note to attorneys: [[mineclone2-disclaimer|Click here]] for a disclaimer related to MineCraft (tm) intellectual property.&lt;br /&gt;
&lt;br /&gt;
MeseLite and Subnasa are _games for Creative worlds that have plenty of features but are small, light, and fast. They work fine with old hardware and mobile devices.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;finalmt-mission&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Final MT mission statement&amp;amp;nbsp; ==&lt;br /&gt;
&lt;br /&gt;
The name Final Minetest is a mission statement and a guarantee:&lt;br /&gt;
&lt;br /&gt;
The goal is speed, power, and flexibility but with stability. We try to minimize changes that break supported worlds or mods. If you know of such changes, inform us and we'll hasten to review the issue.&lt;br /&gt;
&lt;br /&gt;
Trolltest, in comparison, breaks compatibility frequently, is largely anonymous, disregards license issues, and has a philosophy based on Brownian Motion. MultiCraft is a commercial success but will drop multi-protocol support and become a walled garden as well.&lt;br /&gt;
&lt;br /&gt;
Final Minetest is the only viable Test option for its target audiences: academics, edutech types, former MineCraft (tm) modders, and FOSS voxel experimenters in general.&lt;br /&gt;
&lt;br /&gt;
This said, Final Minetest includes servers and clients for three major types of Minetest: Classic MT4 programs, Trolltest MT5 programs, and the multi-protocol version of MultiCraft 2. In short, Final MT allows you to have your voxel cake and eat it too.&lt;br /&gt;
&lt;br /&gt;
In closing, the Final Minetest team aims to:&lt;br /&gt;
&lt;br /&gt;
* Create incredible modsets for both single-player and public use&lt;br /&gt;
* Preserve worlds, including the oldest existing public worlds&lt;br /&gt;
* Maintain old mods that no longer have upstream support&lt;br /&gt;
* Add new features without breaking things&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17750</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17750"/>
		<updated>2026-01-31T14:40:43Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: /* Issues scope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Poikilos' EnlivenMinetest repo is used as the issue tracker for Final Minetest (Classic, Finetest, and Trolltest source code in Linux Minetest Kit rolling release):&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from several files and notes to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* [[Final Minetest]]'s (for differences from Luanti, see [[MT5 Changes]]) engines:&lt;br /&gt;
** Classic&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Final Minetest's Games &lt;br /&gt;
** [[Bucket Game]] (contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game)&lt;br /&gt;
** [[meselite]] (very lightweight game)&lt;br /&gt;
** any others that may be included&lt;br /&gt;
* Final Minetest's worlds&lt;br /&gt;
** Live servers&lt;br /&gt;
** Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17749</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17749"/>
		<updated>2026-01-31T14:39:41Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Improve wording&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Poikilos' EnlivenMinetest repo is used as the issue tracker for Final Minetest (Classic, Finetest, and Trolltest source code in Linux Minetest Kit rolling release):&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from several files and notes to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* [[Final Minetest]]'s (for differences from Luanti, see [[MT5 Changes]]) engines:&lt;br /&gt;
** Classic&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Final Minetest's Games &lt;br /&gt;
** [[Bucket Game]] (contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game)&lt;br /&gt;
** [[meselite]] (very lightweight game)&lt;br /&gt;
** any others that may be included&lt;br /&gt;
* Final Minetest's worlds&lt;br /&gt;
** Online worlds&lt;br /&gt;
** Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17748</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17748"/>
		<updated>2026-01-31T14:38:46Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Add url text.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Poikilos' EnlivenMinetest repo is used as the issue tracker for Final Minetest (Classic, Finetest, and Trolltest source code in Linux Minetest Kit rolling release):&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from different files to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* [[Final Minetest]]'s (for differences from Luanti, see [[MT5 Changes]]) engines:&lt;br /&gt;
** Classic&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Final Minetest's Games &lt;br /&gt;
** [[Bucket Game]] (contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game)&lt;br /&gt;
** [[meselite]] (very lightweight game)&lt;br /&gt;
** any others that may be included&lt;br /&gt;
* Final Minetest's worlds&lt;br /&gt;
** Online worlds&lt;br /&gt;
** Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17747</id>
		<title>Devel ENIssues</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_ENIssues&amp;diff=17747"/>
		<updated>2026-01-31T14:37:07Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Initial version added (since&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Poikilos' EnlivenMinetest repo is used as the issue tracker for Final Minetest (Classic, Finetest, and Trolltest source code in Linux Minetest Kit rolling release):&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Poikilos/EnlivenMinetest]&lt;br /&gt;
&lt;br /&gt;
== Issues scope ==&lt;br /&gt;
There is a huge number of issues. The first large set of issues was collected by Poikilos when working as a teacher and running a student server. A teacher's aide collected and validated many of the issues. Poikilos then transferred the issues from different files to this GitHub repo.&lt;br /&gt;
&lt;br /&gt;
Most of the issues are on the Lua side. For that reason or others, most of them are considered out of scope or even &amp;quot;wontfix&amp;quot; by the MT5 team. The code covered is:&lt;br /&gt;
* [[Final Minetest]]'s (for differences from Luanti, see [[MT5 Changes]]) engines:&lt;br /&gt;
** Classic&lt;br /&gt;
** Finetest&lt;br /&gt;
** Trolltest&lt;br /&gt;
* Final Minetest's Games &lt;br /&gt;
** [[Bucket Game]] (contains many improved and/or integrated versions of mods, including many that are otherwise unmaintained, especially to support old worlds but also to provide a broader baseline than minetest_game)&lt;br /&gt;
** [[meselite]] (very lightweight game)&lt;br /&gt;
** any others that may be included&lt;br /&gt;
* Final Minetest's worlds&lt;br /&gt;
** Online worlds&lt;br /&gt;
** Offline worlds (Such as Bucket City which contains large historical site recreations by Slopsbucket)&lt;br /&gt;
&lt;br /&gt;
== Repo contents ==&lt;br /&gt;
* A set of scripts for installing and maintaining Minetest.&lt;br /&gt;
* Not actively maintained except installer scripts.&lt;br /&gt;
* Installer scripts are planned to be deprecated and replaced with a GUI launcher (using https://github.com/Hierosoft/hierosoft as a backend).&lt;br /&gt;
** Build script was integrated into Linux Minetest Kit's (which OldCoder converted to Perl to reduce unpredictability due to large size).&lt;br /&gt;
* Overlaps features of minebest and now tends to integrate with it (such as minetest-start, minetest-stop, etc.)&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17746</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17746"/>
		<updated>2026-01-31T01:30:56Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Clarify what multicraft is.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions. It is not a thorough review of changes that are not described in release notes. The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti and MultiCraft (not the Minecraft one...) servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
* Breaking changes (where known, not exhaustive) negatively affecting older mods or worlds (A diff URL is not included in such cases, since implementing them is not recommended).&lt;br /&gt;
&lt;br /&gt;
Status:&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* 5.3 and earlier are not planned to be added here (already integrated selectively into Classic, Trolltest, and Finetest, more being in the latter 2).&lt;br /&gt;
** Even versions as far back as 0.4.17 had stealth breaking changes, so changes from about that version on have been integrated selectively, fewer being in Classic.&lt;br /&gt;
&lt;br /&gt;
Notes from Poikilos:&lt;br /&gt;
* I am recommending these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward-compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* Some patches depend on previous patches as could be expected, such as changes involving SDL input handling (In that and some other cases, note that the initial implementation was improved later so a thorough review is only necessary after seeing which diffs overlap).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17745</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17745"/>
		<updated>2026-01-31T01:27:38Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Clarify server compatibility.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions. It is not a thorough review of changes that are not described in release notes. The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti and MultiCraft (Not the Minecraft hosting service, but rather the European Minetest fork that took its name) servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
* Breaking changes (where known, not exhaustive) negatively affecting older mods or worlds (A diff URL is not included in such cases, since implementing them is not recommended).&lt;br /&gt;
&lt;br /&gt;
Status:&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* 5.3 and earlier are not planned to be added here (already integrated selectively into Classic, Trolltest, and Finetest, more being in the latter 2).&lt;br /&gt;
** Even versions as far back as 0.4.17 had stealth breaking changes, so changes from about that version on have been integrated selectively, fewer being in Classic.&lt;br /&gt;
&lt;br /&gt;
Notes from Poikilos:&lt;br /&gt;
* I am recommending these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward-compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* Some patches depend on previous patches as could be expected, such as changes involving SDL input handling (In that and some other cases, note that the initial implementation was improved later so a thorough review is only necessary after seeing which diffs overlap).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17744</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17744"/>
		<updated>2026-01-31T01:25:12Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Improve spacing.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions. It is not a thorough review of changes that are not described in release notes. The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
* Breaking changes (where known, not exhaustive) negatively affecting older mods or worlds (A diff URL is not included in such cases, since implementing them is not recommended).&lt;br /&gt;
&lt;br /&gt;
Status:&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* 5.3 and earlier are not planned to be added here (already integrated selectively into Classic, Trolltest, and Finetest, more being in the latter 2).&lt;br /&gt;
** Even versions as far back as 0.4.17 had stealth breaking changes, so changes from about that version on have been integrated selectively, fewer being in Classic.&lt;br /&gt;
&lt;br /&gt;
Notes from Poikilos:&lt;br /&gt;
* I am recommending these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward-compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* Some patches depend on previous patches as could be expected, such as changes involving SDL input handling (In that and some other cases, note that the initial implementation was improved later so a thorough review is only necessary after seeing which diffs overlap).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17743</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17743"/>
		<updated>2026-01-31T01:24:33Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Reduce wording in early sections.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions. It is not a thorough review of changes that are not described in release notes. The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
* Breaking changes (where known, not exhaustive) negatively affecting older mods or worlds (A diff URL is not included in such cases, since implementing them is not recommended).&lt;br /&gt;
&lt;br /&gt;
Status:&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* 5.3 and earlier are not planned to be added here (already integrated selectively into Classic, Trolltest, and Finetest, more being in the latter 2).&lt;br /&gt;
** Even versions as far back as 0.4.17 had stealth breaking changes, so changes from about that version on have been integrated selectively, fewer being in Classic.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note from Poikilos:&lt;br /&gt;
* I am recommending these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward-compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* Some patches depend on previous patches as could be expected, such as changes involving SDL input handling (In that and some other cases, note that the initial implementation was improved later so a thorough review is only necessary after seeing which diffs overlap).&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17742</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17742"/>
		<updated>2026-01-31T01:15:46Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: clarify where changes went.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions. It is not a thorough review of changes that are not described in release notes. The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
* Breaking changes (where known, not exhaustive) negatively affecting older mods or worlds (A diff URL is not included in such cases, since implementing them is not recommended).&lt;br /&gt;
&lt;br /&gt;
Status:&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* 5.3 and earlier are not planned to be added here. A few useful commits from 5.4-5.8 and our own changes were already integrated into Final Minetest's Trolltest and other rolling releases (Final Minetest &amp;quot;Classic&amp;quot; and Finetest).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Editor (Poikilos)'s Note:&lt;br /&gt;
* I am recommending these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward-compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* Some patches depend on previous patches as could be expected, such as changes involving SDL input handling (In that and some other cases, note that the initial implementation was improved later so a thorough review is only necessary after seeing which diffs overlap).&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17741</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17741"/>
		<updated>2026-01-31T01:13:56Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Make early sections easier to read.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions. It is not a thorough review of changes that are not described in release notes. The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
* Breaking changes (where known, not exhaustive) negatively affecting older mods or worlds (A diff URL is not included in such cases, since implementing them is not recommended).&lt;br /&gt;
&lt;br /&gt;
Status:&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* 5.3 and earlier are not planned to be added here. A few useful commits from 5.4-5.8 and our own changes were already integrated into Final Minetest's &amp;quot;Trolltest&amp;quot; rolling release.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Editor (Poikilos)'s Note:&lt;br /&gt;
* I am recommending these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward-compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* Some patches depend on previous patches as could be expected, such as changes involving SDL input handling (In that and some other cases, note that the initial implementation was improved later so a thorough review is only necessary after seeing which diffs overlap).&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17740</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17740"/>
		<updated>2026-01-31T00:59:49Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Make intro easier to read.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions.&lt;br /&gt;
* 5.3 and some commits and our own changes were already integrated into Final Minetest's &amp;quot;Trolltest&amp;quot; rolling release&lt;br /&gt;
* 5.4 to 5.8 are not reviewed yet.&lt;br /&gt;
* It is not a thorough review of commits that are not described in release notes.&lt;br /&gt;
&lt;br /&gt;
The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
&lt;br /&gt;
This page does not usually cover other changes (unless where compatibility is uncertain).&lt;br /&gt;
&lt;br /&gt;
Editor (Poikilos)'s Note:&lt;br /&gt;
* I am recommending to implement these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* I mentioned some without providing diffs since I don't recommend them but they are notable and may affect us (changing mod compatibility, etc).&lt;br /&gt;
* These patches likely have to be applied in order, especially in cases of new SDL key handling which was new then was improved.&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17739</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17739"/>
		<updated>2026-01-29T21:50:24Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Remove redundancy.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions (&amp;lt;= 5.8 are skipped since they were already integrated into Final Minetest's &amp;quot;Trolltest&amp;quot; rolling release, but if anything is missing from it that follows the criteria below, you may inform Final Minetest). It is not a thorough review of commits that are not described in release notes.&lt;br /&gt;
&lt;br /&gt;
The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
&lt;br /&gt;
This page does not usually cover other changes (unless where compatibility is uncertain).&lt;br /&gt;
&lt;br /&gt;
Editor (Poikilos)'s Note:&lt;br /&gt;
* I am recommending to implement these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward compatible but I haven't reviewed all the diffs).&lt;br /&gt;
* I mentioned some without providing diffs since I don't recommend them but they are notable and may affect us (changing mod compatibility, etc).&lt;br /&gt;
* These patches likely have to be applied in order, especially in cases of new SDL key handling which was new then was improved.&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=Devel_Center&amp;diff=17738</id>
		<title>Devel Center</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=Devel_Center&amp;diff=17738"/>
		<updated>2026-01-29T20:33:11Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Add  MT5 Changes link.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;p44_navbar&amp;quot;&amp;gt;&lt;br /&gt;
[[Main_Page|Start Page]]&lt;br /&gt;
[[Browser_Play|Browser Play!]]&lt;br /&gt;
[[Minetest|Minetest]]&lt;br /&gt;
[[MTWorlds|MT worlds]]&lt;br /&gt;
[[Bucket_Game|Bucket Game]]&lt;br /&gt;
[[Player_Basics|Player Basics]]&lt;br /&gt;
[[Downloads|Downloads]]&lt;br /&gt;
[[Contact|Contact]]&lt;br /&gt;
[[Devel_Center|This page]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;p44_navbar&amp;quot;&amp;gt;&lt;br /&gt;
[https://minetest.org/ minetest.org]&lt;br /&gt;
[https://minetest.io minetest.io]&lt;br /&gt;
[https://git.minetest.io/ 9,000 gits]&lt;br /&gt;
[https://irc.minetest.org:9000/ CoderChat]&lt;br /&gt;
[https://edgy1.net/ EdgyNet]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;introduction&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This page provides some links for use by Final Minetest core developers and website admins.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;devel-common&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Final Minetest VPS admin&amp;amp;nbsp; ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;p44_navbar&amp;quot;&amp;gt;&lt;br /&gt;
[[MT_Boxes|VPS admin]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;devel-other&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Other developer/admin issues&amp;amp;nbsp; ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;p44_navbar&amp;quot;&amp;gt;&lt;br /&gt;
[[Devel_ENIssues|ENIssues]]&lt;br /&gt;
[[Kinetic_Combat|Kinetic Combat]]&lt;br /&gt;
[[Devel_Model_Requests|Model Requests]]&lt;br /&gt;
[[Devel_World_Pieces|World Pieces]]&lt;br /&gt;
[[Devel_MCImport|MCImport]]&lt;br /&gt;
[[Devel_LBMs|LBMs]]&lt;br /&gt;
[[Anticheat|Anticheat]]&lt;br /&gt;
[https://olddev.minetest.org/ Trolldev Wiki]&lt;br /&gt;
[[MT5 Changes]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
	<entry>
		<id>https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17737</id>
		<title>MT5 Changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.minetest.org/index.php?title=MT5_Changes&amp;diff=17737"/>
		<updated>2026-01-29T20:29:12Z</updated>

		<summary type="html">&lt;p&gt;Poikilos: Add new page describing all but version released a few days ago.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:MT5 Changes}}&lt;br /&gt;
&lt;br /&gt;
This is a review of release notes of several MT5 versions (&amp;lt;= 5.8 are skipped since they were already integrated into Final Minetest's &amp;quot;Trolltest&amp;quot; rolling release, but if anything is missing from it that follows the criteria below, you may inform Final Minetest). It is not a thorough review of commits that are not described in release notes.&lt;br /&gt;
&lt;br /&gt;
The purpose of this page is to help improve backward-compatible versions (Final Minetest's &amp;quot;Classic&amp;quot; and &amp;quot;Finetest&amp;quot; rolling releases) so this page covers changes which:&lt;br /&gt;
* Help play on MT5/Luanti servers.&lt;br /&gt;
* Fix bugs&lt;br /&gt;
* Improve the server but don't break compatibility with worlds (MT5's guideline is to upconvert worlds silently, but Final Minetest's guideline is to not do that or at least have the option to run old engine versions when necessary to run old worlds).&lt;br /&gt;
* Improve the client but don't break compatibility with servers (with Classic servers, but especially with Finetest--the purpose of those servers being the point above).&lt;br /&gt;
&lt;br /&gt;
This page does not usually cover other changes (unless where compatibility is uncertain).&lt;br /&gt;
&lt;br /&gt;
Editor (Poikilos)'s Note: I reviewed patches in release notes for Luanti 5.9-5.13. I didn't review other commits or pull requests merged. I am recommending to implement these patches (only ones where I provide a diff URL) in cases where the patch doesn't remove params nor endpoints (They seem backward compatible but I haven't reviewed all the diffs). I mentioned some without providing diffs since I don't recommend them but they are notable and may affect us (changing mod compatibility, etc).&lt;br /&gt;
&lt;br /&gt;
These patches likely have to be applied in order, especially in cases of new SDL key handling which was new then was improved.&lt;br /&gt;
&lt;br /&gt;
== 5.9.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Performance improvement for finding nearby entities''' (adds spatial index, so should/could be backward-compatible): &lt;br /&gt;
** Issue: The data structure problem with active objects · Issue #14613 · luanti-org/luanti&lt;br /&gt;
** Pull request: Add spatial index for objects by appgurueu · Pull Request #14631 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14631.diff]&lt;br /&gt;
&lt;br /&gt;
* '''multi-threaded mapgen'''&lt;br /&gt;
** Pull request: Lua on each mapgen thread by sfan5 · Pull Request #13092 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/13092.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.10.0 ==&lt;br /&gt;
meh, not interesting&lt;br /&gt;
&lt;br /&gt;
== 5.11.0 ==&lt;br /&gt;
&lt;br /&gt;
* OpenGL 1.x fixed pipeline mode deleted (sigh...)&lt;br /&gt;
&lt;br /&gt;
* Dropped BMP image support. We shouldn't drop BMP support, but we should not use BMP files if we intend to make game(s) compatible to some degree with other clients.&lt;br /&gt;
&lt;br /&gt;
== 5.12.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''Porting to SDL (2) has begun''' (Window and Input handling only)&lt;br /&gt;
&lt;br /&gt;
** Use keyboard scan codes for keybinding (helps with non-Qwerty keyboards and certain platform-specific issues such as on macOS)&lt;br /&gt;
*** Pull request: SDL: Use scancodes for keybindings by y5nw · Pull Request #14964 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14964.diff]&lt;br /&gt;
&lt;br /&gt;
** Toggle full screen with F11 on all platforms&lt;br /&gt;
*** Pull request: Allow toggling fullscreen without restart and add keybind by grorp · Pull Request #14714 · luanti-org/luanti&lt;br /&gt;
*** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14714.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Panel added to settings to control inputs''' (formerly, editing keymap.txt was necessary)&lt;br /&gt;
&lt;br /&gt;
** sneak &amp;amp; aux1 are optionally toggle-able now (instead of always turned off on release)--meh&lt;br /&gt;
&lt;br /&gt;
* '''Animated node textures in UI'''--pretty cool (not done for craftitems yet)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/15930&lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/15930.diff&lt;br /&gt;
&lt;br /&gt;
* '''Better texture filtering''' (old wasn't too bad before, but this is better, especially for low-res pixel art textures)&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/16034 &lt;br /&gt;
** Diff: https://github.com/luanti-org/luanti/pull/16034.diff&lt;br /&gt;
&lt;br /&gt;
* '''set_camera player API function''' (desirable to help with Poikilos' 3rd-person camera control code)&lt;br /&gt;
&lt;br /&gt;
* '''Breaking changes to map format''': &amp;quot;Alongside better world loading and generation performance, world storage has been changed to save block positions as separate integers instead of a hash. This simpler implementation is much easier to work with internally and for external tools. Please note: Worlds created with or migrated to 5.12.0 are not backward-compatible.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* '''Fix: Echo and log DMs''' (not sure which of our codebases have this removed if any, but the removal is now considered a bug and this fixes it): [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15887.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.13.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''New get_guid function''': Entities and objects have a GUID that persists between world loads (Persistence was handled by mods recreating the object or using formspecs etc which may accomplish persistence of custom metadata, but some new mods will need the new API function and it simplifies the process).&lt;br /&gt;
** Pull request: https://github.com/luanti-org/luanti/pull/14135&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/14135.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix using scaling with 9-slice button textures''' (I'm not sure which of our codebases have GUI scaling): Formspec: Fix broken 9-slice image button with gui_scaling_filter by SmallJoker · Pull Request #16146 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16146.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix texture coordinates of cuboid drawtypes''' by cx384 · Pull Request #16091 · luanti-org/luanti I am not sure if this involves any new incompatible drawtypes, but we could use it if not, or if so, potentially adapt it and remain backward-compatible.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16091.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Migrate existing keycode-based keybindings''' by y5nw · Pull Request #16049 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16049.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Fix and clean up skeletal animation in Irrlicht''' by appgurueu · Pull Request #15722 · luanti-org/luanti: I'm not sure if this needs fixes to Irrlicht itself or not.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15722.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Do not block in httpfetch_request_clear()''' by sfan5 · Pull Request #16303 · luanti-org/luanti: Fixes a menu freeze on world join--I'm not sure which of our codebases have this bug.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16303.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Replace copyToWithAlpha with more appropriate functions''' · luanti-org/luanti@158bfa6: Fix `[verticalframe` transparency&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff github.com/luanti-org/luanti/commit/158bfa6442b00b791161291aa8d36c6a6746d4a6.diff]&lt;br /&gt;
&lt;br /&gt;
* '''ParticleSpawner: Fix crash caused by empty texture''' by SmallJoker · Pull Request #16351 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16351.diff]&lt;br /&gt;
&lt;br /&gt;
== 5.14.0 ==&lt;br /&gt;
&lt;br /&gt;
* '''[Take 2] Prevent MapBlocks in generation from being unloaded''' by Montandalar · Pull Request #16339 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16339.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Monoblocks: optimize blocks that contain a single type of node''' by lhofhansl · Pull Request #16293 · luanti-org/luanti&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16293.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Texture paths are cached for faster loading''':&lt;br /&gt;
** Diff: [https://github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff github.com/luanti-org/luanti/commit/55cca34ee9bf77e9c8e47330c16c735fe12873d7.diff]&lt;br /&gt;
&lt;br /&gt;
* '''Add formspec box color documentation to style section''': I'm not sure if this is affected by the new formspec API and whether it applies to classic.&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16438.diff]&lt;br /&gt;
&lt;br /&gt;
* '''DOCS: clarify stepheight upper limit'''&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/15035.diff]&lt;br /&gt;
&lt;br /&gt;
* '''bone override interpolation not working''' · Issue #16427 · luanti-org/luanti : Only applies to trolltest versions with the new bone override feature (The release notes mention it has been broken since 5.7)&lt;br /&gt;
** Diff: [https://patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff patch-diff.githubusercontent.com/raw/luanti-org/luanti/pull/16428.diff]&lt;/div&gt;</summary>
		<author><name>Poikilos</name></author>
	</entry>
</feed>