EZForever / ThatOrThis

A Fabric mod for choosing between sets of Fabric mods.
https://modrinth.com/mod/thatorthis
MIT License
19 stars 6 forks source link
fabricmc fabricmc-mod minecraft minecraft-mod

ThatOrThis

A Fabric mod for choosing between sets of Fabric mods.

This branch (master) is the active development branch for latest Minecraft (currently 1.17.1).

What is this

ThatOrThis is designed mainly for modpack developers. It hacks into Fabric Loader to allow loading mods from additional user-selectable directories. This allows the end user to choose which mod(s) to load into their modpack, or workaround incompatible mod sets.

Technically speaking, ThatOrThis take its inspiration from Modsmod and GrossFabricHacks, which abuses the LanguageAdapter feature of the Fabric Loader. This allows part of this mod's code to run even before Fabric Loader starts to initialize most other mods. It then read configs, resolve for additional mods to load, and inject them into the loader via Java reflection wizardry.

Features

Usage

For ordinary users (who installed this mod manually)

Install this mod into your mods folder, along with ModMenu and Fabric API.

Launch Minecraft and open the settings screen via ModMenu. Follow the instructions.

ThatOrThis will be running under the default (limited) rule set if configured this way. If you need features more than toggling individual mods, please refer to the "modpack developers" section.

For modpack users (who downloaded a modpack containing this mod)

Open the settings screen via ModMenu. Change the settings as you desire. Done.

Note that the new settings won't come into effect until you re-launch the game.

For modpack developers (who wish to integrate this mod into a modpack)

Install this mod into your mods folder, along with ModMenu and Fabric API.

Then, create thatorthis folder in your config folder, and file rules.json in that. If done correctly, the path for it should be .minecraft/config/thatorthis/rules.json.

rules.json defines all the available settings and their options. Specs for it can be found here.

Finally, put the mods into subdirectories of the mods folder, as defined in the rule file.

This mod is open-sourced and MIT licensed, meaning that you can include it into your modpack and redistribute it without asking for permission, as long as you credit me (and of course the authors of all other mods) in your modpack.

Compatibility

NOTE: ThatOrThis is only intended for small, client-side mods. It may cause crashes and/or server/world incompatibilities if rules and options are not designed carefully. Test your modpack throughly before and after installing this mod.