- Fixed GuiDrawEvent not firing on Forge and NeoForge
- Fixed crash with Sinytra Connector (again)
- Added
BalmNetworking.defineNetworkVersionfor more control over network compatibility- Fabric's remote version check now uses the network version (which defaults to the mod version)
- Network version is also used to version the channel on Forge and NeoForge
- Added remote version verification even on client/server-only compatible mods if they are installed on both sides
- Added
BalmResources.registerResourceCondition
- Fixed crash when opening mod menu
- Fixed crash with Sinytra Connector (again)
- Renamed
balm-fabric:milktobalm:milk(should automatically migrate via alias) - Added
BalmNetworking.defineNetworkVersionfor more control over network compatibility- Fabric's remote version check now uses the network version (which defaults to the mod version)
- Network version is also used to version the channel on NeoForge
- Added remote version verification even on client/server-only compatible mods if they are installed on both sides
- Added
BalmResources.registerResourceConditionto register custom resource conditions - Added
balm:configresource condition to check a config option against a stringified value
- Updated to Minecraft 1.21.5
- Added
BalmModuleandBalmClientModuleas an alternative more structured way of initializing a mod with Balm - Added
Balm.onRuntimeAvailableandBalmClient.onRuntimeAvailableto allow more stable access to Balm outside of mod loader lifecycles - Added
BlockGetterandBlockPostoDigSpeedEvent, now sets the final value on all loaders - Refactored Capabilities support to reduce mod-loader-specific overhead
- Refactored Configs to allow for declarative config schemas and cleaner implementation
- Balm mods no longer need to register their own config sync packet
- Added
BalmClient.addResourceReloadListener() - Added
ConfigLoadedEvent - Fixed
ScreenInitevents not firing reliably for all screens on NeoForge - Fixed
GuiDrawEventnot firing on NeoForge - Changed config i18n to use
modid.configuration.category.keyformat - Changed client-side registration methods to require identifiers
- Removed several obsolete hooks from
BalmHooks - Removed obsolete key mapping methods - use Kuma instead
- Removed obsolete
BalmTextures - Removed
ExtractionAwareContainerin favor ofWorldlyContainer
- Updated to Minecraft 1.21.5
- Revert parts of initial fix to fix another threading issue causing a crash on startup
- Never doing workarounds for Sinytra Connector again
- Fixed threading issue causing Balm to not initialize things correctly when multiple Balm mods are present, causing lots of weird followup issues
- Fixed crash when mods falsely access Balm too early e.g. due to Sinytra Connector
- Revert parts of initial fix to fix another threading issue causing a crash on startup
- Never doing workarounds for Sinytra Connector again
- Fixed threading issue causing Balm to not initialize things correctly when multiple Balm mods are present, causing lots of weird followup issues
- Fixed crash on startup on Forge
- Fixed crash when mods falsely access Balm too early e.g. due to Sinytra Connector



