Mod name conflicts

From Minetest Developer Wiki
Jump to: navigation, search

In general, avoid installing two or more mods with the same name! Doing so can and probably will lead to undesired behaviour. This includes having mods with the same name in different modpacks.

The rest of this page describes what exactly happens.

Contents

Minetest 0.4.7 and later

Rules

  • If the mod loader finds two or more mods with the same name, at most one of them can be loaded.
  • If mods are not loaded due to name conflicts, warnings will be printed to infostream.
  • If the conflicting mods belong to different levels (see the next section), the mod from the highest level will be loaded.
  • If there are conflicting mods at the same level (and no conflicting mods at higher levels), the server will abort with an error.

Levels

  1. game mods in modpacks
  2. game mods
  3. world mods in modpacks
  4. world mods
  5. user (addon) mods in modpacks
  6. user (addon) mods

Examples

  • If the directories games/survival/mods/bones and mods/bones exist (and if the latter one is enabled), the latter will be loaded as it is a user mod, whereas the former is a game mod.
  • If the directories mods/funmodpack1/funmod and mods/funmodpack2/funmod exist (and no funmod outside a modpack and they are both enabled), the server will abort.
  • mods/folder1/folder1 works but mods/funmodpack/folder1/folder1 gets ignored.

Discussion

These rules allow:

  • Overriding game- or world-provided mods with user mods.
  • Fixing a conflict caused by installing modpacks that contain the same mod, by installing a user mod with the same name.

Warning: always make sure the overriding mod is compatible with other installed mods and games!

Minetest 0.4.4-d1 to 0.4.6

These versions do not check for mod name conflicts. Multiple mods with the same name will be loaded without warning, but dependency resolution becomes unreliable.

Minetest 0.4.4 and older

In versions up to 0.4.4  – before support for enabling/disabling mods in the world configuration was added  – the mod loader would simply skip a mod if another mod with the same name was already loaded.

Personal tools
Namespaces

Variants
Actions
Navigation
API
Toolbox