Luanti 5.14.0 released!

Written by GreenXenith

Release

Introduction

55 Pull Requests merged 53 Issues resolved 132 Commits

5.14.0 has landed following the return of release candidates! Quality-of-life features and performance improvements are the name of the game this time around.

You can download Luanti from our website, check out the code on GitHub, or read the full changelog.

Table of Contents

Release Candidates and Schedule

If you weren’t aware, we try to create release candidates before every new version to test changes. This was forgotten for our last two releases but has now returned. If you would like to test features before everyone else gets them, check out our releases on GitHub a couple weeks before each release.

When does each release happen? We follow a 3-month cycle starting in January. That means a new version in January, April, July, and October. You can find more information in the documentation.

UI and Client Improvements

A handful of conveniences for players made their way into this release. Starting off in the main menu, clarity has been improved with world-related options now being hidden when no world is selected (#16414). In menu and game text fields, you can now select whole words at a time with ctrl+shift+left/right, following common convention (#16455).

Moving in-game, the minimap HUD element will render overlay_tiles correctly, as opposed to rendering the base tile colors (#16285). If you need to recall a conversation later, you can now find chat messages logged to debug.txt (#14289).

Finally, a new API feature has been added to allow nametags to scale by distance, making it easier to tell who’s nearby and who isn’t (#16267). Note that the exact scaling behavior is not perfect and may change in the future.

Grass on minimap in Devtest before and after
Grass on minimap in Devtest before and after

Particulate Additions

Improvements for particles have spawned across the board this release. For players, digging particles will now appear for everyone, not just you! (#16472) Unless you don’t want particles to show up, in which case a flag has been added to particle spawners to exclude specified players (f714ac0). And if you intend to send a bunch of individual particles at once, the network will be happier now that individual particle packets are batched (#16458).

Mapblocks and Textures

Now we dive deeper into the depths of the engine. The effects of this first one aren’t totally certain, but hopefully mapblock generation is more stable now that blocks will not unload while generating (#16339). More concretely, mapblocks made of a single type of node (like air or stone) will only have the memory footprint of a single node instead of a whole mapblock (#16293). This is consistent with how they are stored on the disk.

Speaking of storage, textures should now load faster with paths being cached (55cca34). On the API side of things, dynamic media now has a flag for caching media on the client (#16445). The ephemeral flag documentation has been updated for accuracy.

Documentation, API Features, and Bugfixes

Speaking of documentation, did you know that you have to remove the ColorSpec from box elements if you want to style[] their color? No? Well, that’s because it wasn’t documented until now (#16438). That, and some clarification on entity stepheight limits (#15035).

You will also find some new features documented:

Bone interpolation for obj:set_bone_override has been fixed, preventing some silly animation issues (#16427). And in case you wonder where interlaced 3D mode went: It has left the building. Apparently it has been non-operational since 5.7.0 (#15406).

Silly bone animations (credit: JasonTable)

What’s Next?

Take a look at the pull request list to see what the community and developers are working on! Some neat features in the works include inventory image animations, changeable ABMs, non-cubic chunks, and a dark mode main menu theme.

Everyone is welcome to contribute to Luanti! Questions? Ideas? Feel free to get involved!

Cover image by GreenXenith. Odon Dome by Atlantianminister on YourLand.