This page describes the features of Final Minetest. This is partly a comparison to Old Minetest 5, but it stands on its own to some extent as well.
To get a text version of this page, click here.
What is Final Minetest?
Final Minetest is a stable Minetest engine that comes with a new standard game, free schems, a preloaded media cache, and loads of documentation.
Final Minetest is intended for world hosts and builders who prefer to use a reliable high-quality world framework.
The Final Minetest engine and game include bug fixes and new features. The framework includes both fixes that Old Minetest 5 doesn't have and some of the upstream fixes.
Final Minetest is more stable than Old Minetest 5 and friendlier to world hosts. It doesn't break things the way that Old Minetest 5 does.
The Final Minetest client can connect to Minetest worlds that date back years. And the Final Minetest server can run worlds that date back years.
The new game is powerful and lightweight. It includes features and bug fixes that should have been added years ago.
You can, however, use your own games instead. For example, Legends of Survival, an old world with its own game, is now running under Final Minetest.
So are Lord of the Test, LinuxWorks Original, Landrush, and Moontest, also worlds with their own games.
CoderEdit, a replacement for WorldEdit, is especially useful.
MTS schem loads now prepare the target region so that dark areas and mapblock-size holes no longer occur.
Additionally, CoderEdit provides a way to copy huge areas *with meta*. Old Minetest 5 simply crashes when you do this.
CoderEdit also supports //set air of large regions. Old Minetest 5 turns them into Valley of the Shadow.
Final Minetest is noticeably faster than Old Minetest.
FPS is apparently the same in some cases and higher in others. People report that motion is smoother regardless. We attribute the difference to the removal of added components that imposed unnecessary loads.
Final Minetest isn't a fork of Old-Minetest 5. Old-Minetest 5 is the fork.
Old-Minetest 5 is an incompatible fork. So, Final Minetest clients don't connect to Old-Minetest 5 worlds.
Nor do Old-Minetest 5 clients connect to Final Minetest worlds or to pre-2019 servers in general.
What platforms are supported?
There are servers and clients for both 32-bit and 64-bit Windows and Linux.
An Android client based partly on Lord Fingle's work and possibly on upstream code as well is next up.
We can only do Mac OS X and Raspberry Pi if people offer to help with those platforms.
Can I build it myself?
For Windows, the best Minetest cross-build kit ever released is ready for you to download and try.
(It isn't online yet. This is a draft of upcoming documentation.)
It includes sources for Irrlicht, LuaJit, and all other required libraries. There are prebuilt libraries as well, but you don't need to use them.
The Irrlicht sources have been patched to correct problems. The LuaJit sources are a new release which partly corrects long-standing memory issues.
This is a Linux-to-Windows build kit. In other words, you run scripts under Linux and out pop EXE files for Windows. You can build both 32-bit and 64-bit versions.
As a bonus, if you're an experienced developer, you can use the same kit to build other games for Windows.
No commercial software of any type is needed to build Windows MT EXE files. In short, a purchase of Microsoft Visual Studio is not involved.
In the future, you'll be able to build Windows Minetest under Windows as well as Linux.
For Linux, the build procedure is similar to that of Old Minetest 5, but we recommend that you use our Irrlicht and LuaJit. There are fixes and improvements in our copies.
Source code for the official Final MT core engine is at Github. The Irrlicht and LuaJit source tarballs are included but are not yet integrated into the main build procedure.
(It isn't online yet. This is a draft of upcoming documentation.)
We recommend that you start with our Linux build script and tailor it to meet your needs.
How do Final MT and Old-MT 5 compare?
Final MT is faster than Old-MT 5, in some contexts, due to discarding slow features and buggy code.
One example is the Clouds API. It's gone with the wind. So, you can't make clouds dance the tango, but games run faster.
Final MT works with pre-2019 MT worlds and MT games with some restrictions. Old MT-5 hates pre-2019 worlds and games and tells them to go die.
The Final MT core engine fixes mapgen and other problems in Old MT 5. For example, the problem where trees had too many treetops is corrected.
The Final MT version of WorldEdit, known as CoderEdit, offers major bug fixes and improvements:
(a) Loads of large MTS schems no longer punch large holes at random locations.
(b) MTS schem loads now mapgen the target regions and fill them with air before proceeding. This fixes the problem of large black areas that appear randomly.
(c) The region copy and move commands include similar fixes.
(d) CoderEdit makes it easy to transfer large regions *with meta*. Old Minetest 5 can't presently do that. Instead, it simply locks up.
(e) CoderEdit can work with huge regions even when LuaJit is used. Old Minetest 5 dies and is buried by that issue as well.
(f) CoderEdit supports multiple spellings for commands. You can also use either "/" or "//" as a command prefix.
The core engine now supports a per-world settings file named "world.conf".
Simply put a file similar to "minetest.conf" in the same directory as "world.mt" and rename it to "world.conf". No command-line switches are needed.
This feature fixes a problem with stand-alone worlds that has existed for years.
Footstep Sounds, Falling Sand, and Leaf Decay can now be turned off or on. The associated parameters are:
enable_footstep = false (or)
enable_footsteps = false
enable_falling_sand = false
enable_leaf_decay = false
These parameters default to false (turned off).
Note: It's necessary to turn falling sand and leaf decay off in order to view some old worlds as they were intended to be viewed.
Sand and leaves were sometimes used, in the past, as building materials. If the new settings are used, this is, of course, possible once again.
Mod Security is now turned off by default. This has the useful effect that your mods and games will actually work instead of spewing error messages.
In the standard game, realms include a BRON level, a level where you'll find Little Prince type planetoids, and an asteroid belt that includes comets.
Bucket Game, the standard game, supports both 2D and 3D torches by default. Details will be on the setup page.
More Trees have been merged into "default". This corrects the problem of dark spaces around large trees.
Update: More Trees now spawn naturally.
Christmas Trees have been added as a new type of tree. We expect to add Jack's Beanstalk as well.
The Irrlicht sources have been patched to correct problems. Most importantly, the unreadable tabs have been corrected after years.
Compare the preceding Final MT screenshot to the Old MT screenshot below.
Update: You can set tab color and opacity at runtime now using an environment variable. Details will be on the setup page.
There is now a House Sapling. Place it and a starter house will grow.
Bucket Game uses CoderSkins as a "skins" system. CoderSkins offers these pros and cons:
* Pro: Both 64x32 and 64x64 skins are supported
* Pro: New players are assigned random gender-neutral skins
* Con: Wardrobe isn't supported
* Con: 3D Armor isn't supported
64x64 skins are what Minecraft (tm) uses. They provide far more detail than 64x32 skins do. Old Minetest 5 skins look primitive in comparison.
If players want new skins, there is no wardrobe mod. The sysadmin needs to drop a skin file into the appropriate directory. Most Minecraft (tm) or Minetest skins should work.
A wardrobe mod may be added later.
If you'd like to use 3D Armor with Bucket Game, you'll need to disable CoderSkins. Instructions for this step will be provided.
The new standard game provides something that has been missing from most Minetest games in the past.
It makes an attempt to document where each modpack and mod came from and how each has been modified.
The new standard game includes replacements for many upstream mods and modpacks. For example:
CoderEdit replaces WorldEdit
CoderFood fixes problems with some upstream hudbar mods
CoderFruit replaces various "fruit" mods
CoderMobs is a large and fun unified "mobs" framework
CoderSea replaces various "sea" mods
CoderSkins is the "skins" system
CoderSky is the "sky" system
CoderWarp supports fixed and dynamic spawn points plus TP /commands
DecorPack replaces Home Decor
MT Machines replaces Technic and Pipeworks
default replaces More Trees
Final MT is built against a copy of LuaJit with improved memory management.
This means that Final MT runs mods much faster than non-LuaJit MTs, but it should be less prone than most LuaJit MTs are to running out of memory.
The standard game supports two player "spawn" modes: Single-Spawn and Multi-Spawn.
In Single-Spawn mode, spawn is specified by a setting similar to the following in a world's ".conf" file:
static_spawn_point = 0, 10.5, 0
Note: An underscore is required between "spawn" and "point".
In Multi-Spawn mode, multiple spawns are supported and random spawns are used. Spawns may be added, listed, or removed using appropriate "/commands".
The default spawn mode is Multi-Spawn. To disable this mode and enable Single-Spawn, use the following setting:
disable_multispawn = true
A "static_spawn_point" setting such as the example indicated previously is also required in this mode.
An arbitrary number of tourist teleport "/commands" in addition to "/spawn" are supported.
Final MT can handle maps that no other modern Minetest is able to load correctly.
The screenshot below shows a ship from 2010 that is made of water and clouds. At the time, water and clouds could be used as building materials.
Note: In the screenshot, it's midnight and additionally, the cloud ship is hidden in a secret passage for safety. So, not much is visible besides the ship.
Some assembly is required. The steps needed to load a map from this era are to be documented.
The Final MT standard game detects and repairs some types of damage caused by Old MT versions of WorldEdit.
Old MT 5 lacks a flexible facility for high resolution paintings and photos in-game. We're working on a facility of this type.
The photo system isn't included in the standard "game" yet, but the screenshot below shows sample output.
Creeper, chessboard, and clock are included for scale.
How does it work?
To state things more formally:
* Final MT consists of a server program, a GUI client, and a standard "game" named Bucket Game.
* You don't need to use Bucket Game, either on the server side or on the client side. However, it does have some important features. Many of the MTS schem fixes, for example, are located in the game and not in the engine.
* The GUI client can connect to other MT servers or to an internal server to play local games.
* A Final MT server should run most MT games that date from early 2014 to early 2017. Games that rely on features dated later than early 2017 probably won't work.
* A Final MT client can connect to Final MT servers or to most MT servers that date from early 2014 to late 2018.
* Final MT has some of the "Old MT" 5 bug fixes and features. However, Final MT and Old-MT aren't compatible.
You can't use a Final MT client to connect to an Old-MT 5 world.
You can't use an Old-MT 5 client to connect to a Final M5 world.
Bucket Game is designed to support multiple games in one.
To illustrate how this works, an alternate game named Wonder Build is built into Bucket Game. If the following config-file setting is used, Wonder Build is enabled:
enable_wonder = true
Wonder Build is a light game geared towards edutech projects and simply building.
In Wonder Build mode, ores generate in different patterns, mobs and mods are added or subtracted, and other changes take place.
The standard game presently consists of 7 modpacks:
There is an 8th modpack, "ircpack", which isn't part of the game but may be distributed separately.
The game is lightweight, in general, but includes a version of Home Decor, which is considered to be heavy.
Android clients should be able to handle Home Decor, but this isn't guaranteed.
Less-frequently used Home Decor items may be dropped to make it lighter.
For IRC support, world hosts may use the following standard Minetest mods:
or they may use a modpack named "ircpack" that can be obtained from the Final Minetest group.
Note: "ircpack" isn't distributed as part of the "game", as it has special requirements.
"ircpack" offers two advantages:
(a) It adjusts colors to improve readability
(b) It supports a new setting named "irc.crossworld" that can be used to disable cross-world chat
For both the standard IRC mods and the "ircpack" modpack, world hosts will need to know how to build and/or install Lua libraries named "luasocket" and "mime".
Requirements for the standard IRC mods and/or "ircpack" include:
(a) The Lua "luasocket" and mime libraries
(b) A working network connection
(c) An IRC server
(d) An IRC channel on the IRC server
* Protection may use either Protector Redo or the Final Minetest "areas" mod.
Protector Redo is simpler for children. The "areas" mod is more sophisticated and is recommended for teachers and/or older players.
* The "areas" mod has been enhanced:
(a) Underscores are now optional in command names:
/areapos1 is the same as /area_pos1
(b) "areas" commands may use either "/" or "//" (WorldEdit-style)
(c) "/recursive_remove_areas" may be abbreviated to "/rmareas"
CoderMobs is a Final Minetest animal and/or monster mobset. It has been balanced so as to maximize variety while using less disk space than some of the other mobsets.
CoderMobs includes its own tailored version of Mobs Redo. If CoderMobs is installed, Mobs Redo should not be installed.
The goal is for a world host to be able to enable or disable mobs individually, or to change their characteristics, through the use of config-file settings.
Different config files can be used to produce different types of environments ranging from peaceful Gardens of Eden to deadly jungles where only the strong survive.
To review the different animals and creatures, log-in to a CoderMobs world where you have admin rights and try commands similar to the following:
/se whinny:pegasus etc.
/se is the same as /spawnentity. But it's easier to type. This is another feature that should have been added years ago.
Final Minetest likes to make things easier. Old Minetest 5 is about telling users that they don't matter.
For admins, the following command will delete nearby CoderMob animals and/or creatures:
Tamed mobs, e.g., pets, shouldn't be affected.
This command works on entities with any of the following internal name prefixes:
codermobs: critters: petores: whinny:
There are four types of mobs:
(a) Passive or friendly 3D animals or creatures.
(b) 3D monsters, which are generally aggressive.
(c) 3D predators, which hunt specific other mobs. This is a new feature in Final Minetest. You can configure wolves and snakes, for example, to hunt primarily rabbits.
(d) Whimsical 2D cartoons known as "critters". These are disabled by default. Note: There are dozens of them. Functionally, these are passive animals or creatures.
One nice thing about "critters" is that world hosts can easily create their own additions.
Nametags for animals will be supported.
A few animals are chatty and will speak occasionally when they encounter people or are addressed.
The language used is configurable to a limited extent.
These are the currently supported 3D natural animals:
Note: Sea creatures are supported separately by CoderSea and therefore are not listed here.
3D Fantasy characters include:
Whimsical 2D cartoon mobs: (*)
(too many to list here)
(*) Mobs marked with an asterisk above have multiple or special internal names. For example, in the horse category, there are multiple horse types such as:
Ditto for the "petores" category:
Mobs which are not marked with an asterisk above have simple names of the form "codermobs:" plus the indicated short name. For example:
Config-file settings may be used to enable or disable CoderMobs species on an individual basis.
If a species is enabled and then disabled, existing individuals won't turn into unknown entities. Instead, the species will simply cease to spawn.
For most of the 3D animals or creatures, though not all, spawn rates can be modified using config-file settings similar to the following:
codermobs_aoc_elephant = 1
codermobs_mbrange_elephant = 2
codermobs_chance_elephant = 30000
This is optional. The purpose of each setting will be explained in the full documentation.
You can adjust additional parameters such as the following by editing the appropriate ".lua" source files:
* Biomes where a mob can be born
* The lighting that is required for birth to take place
* The prey that a predator will hunt
* Armor class, i.e., resistance to damage
* Strength of attack in a fight
* Quality of eyesight
CoderMobs supports some global configuration settings as well as per-mob settings. For example:
# Disable most or all CoderMobs:
codermobs_disable_mobs = true
# Disable most or all monsters:
codermobs_disable_monsters = true
# Make mobs peaceful:
codermobs_peaceful = true
# Make mobs talk mostly French or Spanish:
codermobs_talk_french = true
codermobs_talk_spanish = true
There is no setting yet to disable chat by animals. Such a setting will be added in due course.
Technically, a silverfish is a natural animal. However, the type of silverfish supported by CoderMobs is classified as a fantasy character because it is somewhat unnatural.
This type of silverfish hides in ore, is large in size, and jumps out to attack unwary miners.
Pet Ores are friendly ores that can be tamed and can be kept as pets. If they're killed, they obligingly provide the ores of which they're made.
The following Pet Ores are presently supported:
"rhodo" is short, in this context, for "rhodochrosite". Pet Ores is an original OldCoder mod.
Santa, in this mobset, is Santa Monster Slayer. His role is to dispatch creatures so that both adults and children can enjoy a pleasant Christmas Eve.
To summon Santa Monster Slayer, the world owner or those with privileges may use:
Santa's battle cry is a terrifying "Ho Ho Ho". He drops coal, of course.
Santa usually attacks only creatures who are explicitly set to monster mode. Grey-area creatures such as the LOTT spider may escape his watchful gaze.
There are two unrelated groups of horses, the Farlands Horse and the older Whinny breed.
The CoderMobs horse has the following internal name:
It's descended from a breed known as the Farlands Horse. Presently, this type of horse comes in just one color, but this will be corrected.
The Farlands horse has the same internal name whether it's in a wild or tame state.
The Whinny horse is simpler in appearance and behavior, but it has been popular in the past. The wild variety has the following colors and internal names:
whinny:brown # Brown Horse whinny:pegasus # White Horse whinny:blue # Blue Horse whinny:arabic # Black Horse whinny:mred # Mr. Ed whinny:rainbow # Rainbow Pony
The Rainbow Pony is special. If tamed and ridden into the wind, this horse can be jumped high enough to catch the breeze and float for some distance.
If you create, all is alloweds
Even Flying Rainbow Ponies in the Clouds
Tamed Whinny horses aren't very active. They mostly twitch their tails and look around while waiting to be ridden.
The tamed variety has these internal names:
whinny:brown_tame whinny:pegasus_tame whinny:blue_tame whinny:arabic_tame whinny:mred_tame whinny:rainbow_tame
Mr. Ed, as a technical note, was a well-known U.S. TV horse of the 1960s of whom it was said:
A horse is a horse
Of course, of course
And no one can talk to a horse, of course
That is, of course, unless the horse
is the famous Mr. Ed
Go right to the source and ask the horse
He'll give you the answer that you'll endorse
He's always on a steady course
Talk to Mr. Ed
Giraffes, rats, and snakes are straight-forward, but have special internal names as explained below.
Giraffes use the following internal name as a gesture to the original coder of the animal:
There are two types of rats, rat and rat_better (both prefixed with "codermobs:").
The 1st type of rat is standard. The 2nd type is visually more polished but has more limited animation.
There are also two types of snakes, snake_garter and snake_ice (both prefixed with "codermobs:").
Sheep come in numerous colors. There is a different internal name for each color. The internal name is “codermobs:” plus one of the following:
The different colors of sheep may, of course, be used to obtain different colors of wool.
This is a much-condensed version of the CoderSea documentation.
Welcome to CoderSea
The ocean for you and me
CoderSea, see, is the MT sea
CoderSea, it's Lua and not 'C'
This is the sea
that in your world needs to be
CoderSea is a Final Minetest modpack. It's a replacement for "sea" 0.4.2 that adds a number of fixes and improvements.
Partial list of CoderSea features:
* Works with seas that already exist ("sea" 0.4.2 doesn't)
* Drop-in replacement for "sea" (some items are omitted)
* Adds starfish and other sprite characters
* Sea-plants provide optional and adjustable illumination
* Much-simplified ABM code
* Much-simplified seaglass, seastone, etc., code
* Sea-glass stairs and slabs illumination can be turned off and on
* Solves the usual air-bubble problem
* Air-bubble solution is backwards compatible with old worlds
* Air-bubble solution is superior to "plantlike_rooted" approach
* Seastone and related nodes are optional
* Adds fish, jellyfish, sharks, and other mobs (optional)
* Reversible - CoderSea can revert some of its effects
* Drowning is optional
* Flexible spelling for some options
* Includes Ethereal sea-plants
* Sea-grass supports optional waving
The only required mods are default, dye, and stairs.
Ethereal is supported, but optional.
StairsShine is no longer required or used. CoderSea includes its own internal, and improved, stairs illumination code.
Mobs are implemented using an internal copy of the Mobs Redo API. Mobs Redo itself isn't required.
CoderSea features in more detail.
S1. Existing worlds.
You can add CoderSea to an existing world. Unlike "sea" 0.4.2, CoderSea doesn't need to be present at "mapgen" time in order for sealife to appear.
S2. CoderSea replaces Sea.
If an existing world has "sea" 0.4.2, you can replace the mod with CoderSea.
If you do so, CoderSea will automatically remove or replace many of the old mod's items. For example:
* "Sea" 0.4.2 plants will be removed
* "Sea" 0.4.2 shipwrecks will remain
Some old items may show up as unknown nodes.
S3. CoderSea is reversible.
CoderSea is largely reversible. The following config-file setting can be used to make most plants, mobs, sprites, and special nodes added by CoderSea disappear:
codersea_reset = true
Note: Shipwrecks are an exception. They'll remain whether or not CoderSea is reset.
S4. Solution to air-bubble problem.
Historically, if MT nodes that aren't full cubes are placed underwater, they've looked completely wrong.
For example, in some cases, non-cube items have been surrounded by a dark blue region that moves up and down. In other cases, they've seemed to be embedded in air bubbles.
"sea" 0.4.2 addressed the problem for sea-plants by wrapping them in a layer of special nodes.
CoderSea uses a similar approach. Specifically, it replaces default water, around certain objects, with coderwater. This is done both for sea-plants and for stairs made out of CoderSea materials.
CoderSea's approach works better than "sea's" approach. It's superior, for multiple reasons, to Old Minetest 5's solution (plantlike_rooted) as well.
S5. Plants Glow is Quite a Show.
CoderSea makes sea-plants glow so as to illuminate the underwater world. This feature can be enabled or disabled and the brightness level is also adjustable.
S6. Other sea-plant features.
* If Ethereal isn't installed, CoderSea adds its own versions of Ethereal's coral and seaweed.
If Ethereal is installed, CoderSea is compatible with Ethereal's seaplants. Specifically, CoderSea's version of the old "noairblocks" code supports seaplants of this type.
"sea's" seaplant growth ABMs have also been rewritten.
CoderSea fixes visual glitches that occur with "sea" in newer releases of Minetest and/or minetest_game.
Damaged sea-plants, those with pieces missing from their middle, will usually grow back as long as the damage isn't too severe.
S7. Delete Entities feature.
CoderSea adds a chat command "/deleteentsea" that can be used to delete nearby CoderSea entities.
S8. Try CoderSea Stairs This I Dares.
CoderSea adds two groups of slabs and stairs:
* Regular slabs and stairs made out of seastone and related materials. Complete list: seabrick, seacobble, seagravel, seastone.
* Illuminated slabs and stairs made out of seaglass. These are similar to "stairsshine" slabs and stairs, but they add a new feature: You can turn seaglass slabs and stairs illumination off or on by punching the nodes.
You can use config-file settings to enable or disable these objects.
S9. CoderSea mobs overview.
CoderSea provides its own optional versions of these water mobs (i.e., animals):
clownfish, jellyfish, shark, tropical fish, and turtle
CoderSea also adds starfish and a few other stationary, though slightly active, sprites.
You can use config-file settings to enable or disable CoderSea mobs en masse or on a species basis.
You can also set spawn rates and Active Object Count limits for the mobs. Additionally, you can make the mobs either passive or hostile.
S10. Misc. settings.
You can use config-file settings to control generation rates of CoderSea objects such as algae, seaglass, seaplants, and seastone.
Drowning can be enabled or disabled.
Shipwrecks are enabled by default, but can be disabled.
Release TODO list
* More documentation
* Work on the new server list
* Done: Sync Bucket Game and Wonder Build
* Done: Add and test realms (Tron, Asteroids, possibly planetoids)
* Done: Put the Windows cross-build kit online
* Done: Add Wonder World and Bucket City to distributions
* Done: Add a preloaded cache
* Done: Get the Linux build kit in order (*)
* Done: Create a repo for the core engine
* Done: Enable Decor Pack only in Wonder Build mode
* Done: CoderEdit: //saveboth and //loadboth
(*) Regarding the Linux build kit:
* Done: Add our patched Irrlicht and the new LuaJit
* Done: Add Bucket Game (which incorporates Wonder Build)
* Done: Add the Bucket City and Wonder World maps
* Done: Add the Bucket Schems
General TODO list:
* Incremental update feature for build kits
* Incremental update feature for live worlds
* Edgy: Look into compose key operation
* Edgy: Per-world textures directories
* luk3yx: Build bootstrap gcc only if native copy is old
* "ocpainting" image mod-kit
* Light-cycles for BRON realm
* Different sizes of jellyfish
* Allow at least one home in each realm
* ABM to fix furnaces after load from MTS schems
* Oxy-gum for use underwater
* More biomes
* Medicinal herbs
(end of document)