Links
Tags
Creators
Details
Forge-1.20.1-2.4.13
Compatibility
Changes
Fixed: a full-code audit pass that closed every P1 and P2 finding with zero P0s. Hostile packets can no longer force unbounded memory allocations (every network decoder now caps counts and lengths and rejects the packet instead of silently clamping), NeoForge no longer burns double the download quota on server-hosted JPEGs (the one end the 2.4.12 fix missed), switching themes on Fabric keeps the custom panel background image, opacity and crop, the /e33chat template command no longer silently disables server media hosting after saving, the group directory no longer desyncs above 200 groups, the sidebar background no longer vanishes below y=999 on large GUIs, viewed animations are cached with an LRU and released on disconnect instead of living forever in VRAM, the clear-history double-click confirm now actually expires (a clock-domain mixup), popups reopened within 150ms of closing are no longer killed by the stale close timer, banner avatars fade in step with their text instead of darker, emoji-grid clicks in the right-hand padding band no longer send the wrong emote, and labelled player chat keeps its styled channel/title prefixes when the EasyBot colon shape claims it. Hardened: group data saves atomically and tells the player when it fails, corrupt config files are kept as backups instead of being overwritten, singleplayer world switches no longer inherit the previous world's server config or chat backlog, the sidebar wildcard hide patterns (e.g. Islot_*) that never worked on Forge/NeoForge and crashed Fabric on brackets now share one correct implementation across all three platforms. Development: TemplateMatcher moved into the shared layer, the pinned-equality guard grew from 10 to 18 entries, and six new test classes cover hostile decoder input, group validation and the emoji grid (446/416/447 tests green across Forge/Fabric/NeoForge).
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:onBSJreQ:nBEn61Iq"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:onBSJreQ:nBEn61Iq"
}

