Community listing page, reviews here may not be monitored by the author.
Mystical Realms Modpack Fixes
No reviews yet
Optional Mixin patches that fix crashes and broken behavior caused by third-party mods on the Mystical Realms modpack: Iris/Sodium, Better Party, NaN health corruption, Nether portal routing, and Dangerous NeoForge boss scaling.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
🩹 Mystical Realms Modpack Fixes
A small patch mod that stops known third-party crashes, fixes optional-mod interactions, and quiets the harmless log spam left behind when a modpack's mod list changes.
✨ Overview
🎯 Features
🌕 Iris / Sodium compat patch
Fixes a startup crash (MixinTransformerError / ClassNotFoundException: SodiumGameOptions$PerformanceSettings) that occurs when Iris 1.8.12's bundled Sodium-compat mixins target a class name (SodiumGameOptions) that Sodium renamed to SodiumOptions in 0.8.13+.
- Both mods are treated as optional dependencies — the patch only activates when both are present
- Client-side only; nothing changes on a server or when Iris/Sodium are absent
🏷️ Lenient entity CustomName parsing
Stops the endless Failed to parse entity custom name warning — with a full stack trace, once per tick — that a datapack tick function can trigger when it writes a malformed CustomName to an entity (for example an unquoted string instead of a JSON text component).
- The bad value falls back to plain text instead of throwing, so the entity still gets a readable name
- Implemented as a targeted mixin on the vanilla load path; valid names are untouched
🔇 Configurable benign-log filter
Drops a small, config-controlled allow-list of harmless log lines produced by stale save data after a mod-list change. Everything not on the list is left completely alone, and the filter never touches this mod's own logging.
- Default patterns:
Tried to load invalid item: 'Item must not be minecraft:air', unknown-item and unknown-fluid registry keys, andIgnoring unknown attribute 'forge:…' - Fully editable — add or remove substrings, or switch the whole filter off
Note: the forge: attribute lines come from old entity data using Forge-era attribute ids that NeoForge renamed. The filter only silences the warning; the stale modifier values themselves (from removed mods) are dropped by the game as before.
🔥 Nether return-portal fix
Vanilla sends a returning traveller to the closest existing portal at the scaled destination coordinates. When two portals sit near the same coordinates in the other dimension, the return trip can drop you at the wrong one. This fix remembers, per entity, which exit portal was paired with the portal you entered, and reuses it on the way back.
- Applies to Overworld↔Nether travel in both directions; other portal types are untouched
- Falls back to vanilla search when the remembered portal no longer exists
- The mapping is kept in memory only — it resets on a server or world reload
🛡️ Better Party member-health crash guard
Better Party builds each party member's HUD health from their vanilla health and max-health. Its PartyMemberHealth record throws an uncaught IllegalArgumentException whenever a player's generic.max_health is momentarily ≤ 0 or non-finite. That exception escapes the event bus and crashes the entire dedicated server mid-tick — for every player online — the instant a single player's attribute is corrupted. This patch sanitises the two health reads that feed the record and substitutes a safe finite value, logging a warning instead of taking the server down.
- Server-side only; activates only when Better Party is present
- Covers both the login and logout sync paths, so a bad value can no longer prevent a player from joining or stop the server
- It does not fix whatever corrupts the attribute in the first place — it only stops that corruption from killing the server
❤️ NaN/Infinity health & absorption guard
Some combat mods compute damage as a percentage of an entity's current health. If that percentage attribute is ever driven to Infinity by a bad affix roll, and the target's health happens to land on exactly 0 at that instant, the multiplication produces NaN — a value vanilla can never compare or reduce below zero, so the entity gets stuck: unkillable, unhealable, permanently broken, and the corruption survives every save. This patch guards the two vanilla setters that write health and absorption directly.
- Always on, client and server; no configuration
- Rejects any non-finite write before it reaches the entity's actual state, keeping the last good value
- Self-heals a player or mob that was already saved with corrupted health/absorption — no manual save editing needed, it recovers the moment it loads
- Does not patch whichever mod produced the bad value in the first place; it only hardens vanilla against receiving it
💀 Dangerous NeoForge boss health scaling fix
Dangerous NeoForge scales monster max health over time using a day-elapsed multiplier, and does this correctly for regular mobs by caching their true base health once and always recomputing trueBase × currentMultiplier. Its "boss" branch — taken for any mob whose saved NBT carries apotheosis:tier_augments_applied, i.e. any Apotheosis rarity-affixed mob — reads the mob's current, already-scaled max health instead of the true base and multiplies it again by the new factor, so every subsequent rescale compounds on top of the last one instead of scaling linearly. Left alone, Apotheosis-boosted mobs' health balloons exponentially the longer a world survives.
- Server-side only; activates only when Dangerous NeoForge is present
- Reuses the same base-health cache Dangerous NeoForge's own non-boss branch already relies on, so boss mobs scale linearly like every other mob
- Does not modify the Dangerous NeoForge jar — patched entirely via a soft mixin that only applies when that mod is loaded
💬 Better Villager Animations Spanish dialogue overlay
Better Villager Animations keeps its speech-bubble flavour text as hardcoded Java string literals, so ordinary lang files cannot translate it. This patch routes its two dialogue select(…) methods through a translation table and swaps the English line for Spanish whenever a matching entry exists.
- Client-side only; activates only when Better Villager Animations is present
- Applies to
es_esonly — English and every other language are left completely untouched - The translation table is not bundled: it is read from a separately installed resource pack at
assets/bettervillageranimations/dialogue/es_es.json, and reloads with resource packs. With no pack installed the overlay is a silent no-op.
⚙️ Configuration Reference
File: config/mystical_realms_modpack_fixes/config.toml
| Key | Default | Notes |
|---|---|---|
| [logfilter] | ||
logfilter.enabled | true | Master switch for the benign-log filter. |
logfilter.patterns | (4 built-in lines) | List of case-sensitive substrings; any log message containing one is dropped. Edit freely. |
| [fixes] | ||
fixes.enableNetherReturnPortalFix | true | Remember and reuse the portal you came from on Nether return trips. Set to false for vanilla routing. |
fixes.enableDangerousBossHealthFix | true | Stop Dangerous NeoForge's day-based health scaling from exponentially inflating Apotheosis-boosted mobs. Set to false to restore Dangerous NeoForge's original (buggy) boss scaling. |
The Iris/Sodium, Better Party, NaN/Infinity health guard and Better Villager Animations patches have no configuration — they activate automatically (the health guard is always on) and are inert otherwise.
📋 Requirements
| Minecraft | 1.21.1 |
| NeoForge | 21.1.249+ |
| Java | 21 |
🎮 How to Use
- Install NeoForge 21.1.249 for Minecraft 1.21.1.
- Place Mystical Realms Modpack Fixes in your
modsfolder. - No setup required — every patch applies automatically when its target is detected.
- To keep or drop different log lines, or to toggle individual fixes, edit
config/mystical_realms_modpack_fixes/config.toml([logfilter]and[fixes]). - Optional: for the Spanish villager dialogue overlay, install a resource pack that provides
assets/bettervillageranimations/dialogue/es_es.json.
🙏 Credits
Developed by Stalking Dragons.
https://codex.skdragons.com/
Codex Stalking Dragons — Minecraft Modding
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources