linuxdo-idea-ui
A collection of Tampermonkey scripts for skinning linux.do: featuring JetBrains/Darcula IDE styles, Feishu IM, and DingTalk IM appearances.
AI translation
Hold mutually exclusive enchantments on one item and switch between them. Docs for players, pack devs and mod devs.
PluginsJavaGitHub @SafetImamovicOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Minecraft mod (Fabric + NeoForge): keep conflicting enchantments like Fortune and Silk Touch on one item and switch which one is active.
Taken from the repository README
Loading the full README.
Read the full README ↗Minecraft Java 1.21.1, 26.1, 26.2 and 26.3 · Fabric + NeoForge · MIT · Beta
Install on both the client and the server. Optional mods are client only.
| Minecraft 1.21.1 | Minecraft 26.1 | Minecraft 26.2 | Minecraft 26.3 | |
|---|---|---|---|---|
| Fabric, required | Fabric Loader 0.16.0+Fabric API 0.102.0+Forge Config API Port 21.1.0+ | Fabric Loader 0.19.5+Fabric APIForge Config API Port 26.1.5+ | Fabric Loader 0.19.5+Fabric APIForge Config API Port 26.2.1+ | Fabric Loader 0.19.5+Fabric APIForge Config API Port 26.3.1+ |
| NeoForge, required | NeoForge 21.1.1+ | NeoForge 26.1.2.125+ | NeoForge 26.2.0.93+ | NeoForge 26.3.0.95+ |
| Optional (both loaders) | JEI: info pages on the anvils and the grindstoneYACL 3.8.2+: a nicer settings screen | JEI: info pages on the anvils and the grindstoneYACL 3.9.7+: a nicer settings screen | JEI: info pages on the anvils and the grindstoneYACL 3.9.7+: a nicer settings screen | JEI: info pages on the anvils and the grindstoneYACL 3.9.7+: a nicer settings screen |
With the full automated test suite, on the Minecraft version in the row (26.3 unless noted); the two enchantment mods were also played through by hand (details: compatibility):
| Mod | Version | Loader | Result |
|---|---|---|---|
| Easy Anvils | 26.3.1 | Fabric, NeoForge | Works |
| JEI | 31.16.0.89 | Fabric, NeoForge | Works: the Adjust panel draws above JEI's item list |
| Mouse Tweaks | 26.3-2.31 | Fabric | Works |
| Enchantment Descriptions | 26.3.0.2 | Fabric | Works |
| AppleSkin | 3.0.10 | Fabric | Works |
| Enchantment Switch | 26.3.0 | Fabric | Works; its key is unbound by default, so Left Alt stays with Adjustability |
| Apotheosis + Apothic Enchanting | 9.1.0 + 2.1.0 (26.1.2) | NeoForge | Works. It writes enchantment tooltips itself, which hid the dormant lines until a fix after 0.7.0. It removes Protection from the armor exclusive set and Sharpness from the damage one, so those don't conflict and aren't made dormant |
| Enchancement | 26.3-r4 | Fabric | Works, including its own enchantments with one-sided conflicts against vanilla (Extracting / Silk Touch, Frostbite / Fire Aspect, Bouncy / Feather Falling). Tested with its config relaxed: as shipped it disallows Fortune and 35 other vanilla enchantments and limits items to one enchantment, which is its own rule. Adjustability tells operators (in the log and in chat on join) when this is the case, with a suggested fix |
1.21.1 has no automated tests: there, Apotheosis 8.9.0 (NeoForge) and Enchancement 1.21-r14 (Fabric) were played through by hand, and other mods are untested. Found a mod that doesn't work with it? Use the compat issue form.
The 2024 prototype for Forge 1.20.6 is kept under the
legacy-1.20.6-forge tag.
Java API, configuration and how it works: the docs site.
Click an image to view the full screenshot.
| First-time guidance | Make the panel your own |
|---|---|
| A reminder explains how to open the panel; the next introduces the Cycle key. | Choose a panel profile, or change its marks, colors, and spacing. |
All rebindable under Controls → Adjustability, or with /adjustability keybinds.
| Action | Default |
|---|---|
| Open the Adjust panel | Left Alt, while hovering an item in your inventory |
| Cycle the held item's enchantments | Unbound (set it under Controls → Adjustability) |
| Command | Who | What |
|---|---|---|
/adjustability help | Everyone | Lists these commands |
/adjustability config | Everyone | Opens the settings screen |
/adjustability keybinds | Everyone | Opens Controls to rebind the keys |
/adjustability tutorial | Everyone | Restarts the two switching reminders on your client |
/adjustability panel [<setting> <value>|reset] | Everyone | Shows or changes the Adjust panel's look |
/adjustability toggle <enchantment> | Everyone | Makes an enchantment on the held item active |
/adjustability inspect | Operators | Shows the held item's active and dormant enchantments and how they conflict |
/adjustability add <enchantment> [level] | Operators | Adds an enchantment to the held item, dormant if it conflicts |
/adjustability flatten [<targets>] | Operators | Removes dormant enchantments from items, before uninstalling |
config/adjustability-server.toml: gameplay, synced from the server (costs, cooldowns, limits).config/adjustability-client.toml: personal (tooltip hint, sounds), editable in game.[exclusivity]: extra groups, pairs that never conflict, vanilla's on or off) and costs
per group (group_costs), in the server file.exclusive_set in enchantment files. Reload with /reload.Guide for admins, pack devs and mod devs: safetimamovic.github.io/Adjustability (source in docs/guide).
Removing Adjustability never breaks an item: dormant enchantments are stored in vanilla's minecraft:custom_data under
adjustability:dormant, so items keep their active enchantments and load fine without the mod. To remove the dormant
ones for good, run /adjustability flatten @a with everyone online first. Details:
Uninstalling and
where dormant enchantments are stored.
latest.log uploaded to mclo.gs.Requires JDK 25.
./gradlew build # jars in {fabric,neoforge}/versions/<minecraft version>/build/libs
./gradlew :graph:test # unit tests
./gradlew :fabric:26.3:runClient # dev client (Fabric)
./gradlew :neoforge:26.3:runClient # dev client (NeoForge); :neoforge:26.3:runClient2 for a second one
./gradlew :fabric:26.3:runServer # dedicated server
./gradlew :fabric:26.3:runClient --debug-jvm # wait for a debugger on port 5005
| Module | Contents |
|---|---|
graph/ | Pure-Java conflict graph logic (independent sets, toggling). No Minecraft imports; unit tested. |
common/ | Almost all code. Compiles against vanilla only. Public API in api/. |
fabric/ | Fabric entrypoint and Fabric-specific glue. |
neoforge/ | NeoForge entrypoint and NeoForge-specific glue. |
build-logic/ | Shared Gradle conventions. |
Loader-specific calls from common go through platform/Services (Java ServiceLoader).
See CONTRIBUTING.md: short branches off master, atomic Conventional Commits, PRs against master.
Based on MultiLoader-Template.
| Enchancement | 26.1-r25 | NeoForge 26.1.2 | The notice and its own enchantments' conflicts work. This build removes Unbreaking from items whatever its config says, which is its own behavior |
| YACL | 3.9.7 | Fabric, NeoForge | Works: the settings screen is YACL's. On NeoForge, a warning about YACL's logoFile shows at startup; that's YACL's own metadata (fix pending), click Proceed |