Skip to content

v1.0.0: NeoForge support for every supported Minecraft range

Latest

Choose a tag to compare

@castledking castledking released this 25 Aug 10:20
· 4 commits to 78e7a5f8660c0a1affecdb90b6be272cf7566c8e since this release

CrowBar v1.0.0

CrowBar's 1.0.0 release ships native NeoForge and Fabric builds for every supported Minecraft range, with per-range jars split to handle Mojang's API renames across versions.

Added

NeoForge Builds

  • Every Minecraft range ships a native NeoForge build next to its Fabric build.
  • NeoForge builds are compiled against real class names, so Mojang's renames split support into five sets: Minecraft 1.21.6-1.21.8 (NeoForge 21.6+), 1.21.9-1.21.10 (NeoForge 21.9+), 1.21.11 (NeoForge 21.11+), 26.1.x (NeoForge 26.1), and 26.2 (NeoForge 26.2). The breaks are real API changes: keybind categories, PlayerSkin, and waypoint APIs changed in 1.21.9, and ResourceLocation was renamed to Identifier in 1.21.11.
  • Feature parity across loaders: claim and player locator bar rendering, waypoint keybinds, HUD overlays, experience-bar restoration, and the config screen (registered through NeoForge's settings-screen extension point instead of Mod Menu).
  • Payload channels register as optional, so NeoForge clients can still join vanilla and Paper servers that do not run CrowBar plugins.

Fabric Builds

  • Fabric builds cover Minecraft 1.21.6-1.21.8 with one jar and 1.21.9-1.21.11 with a second, since Fabric's intermediary names survive Mojang's renames but KeyBinding.Category only exists from 1.21.9 onward.
  • The 1.21.6-1.21.8 Fabric build required porting six API differences from the 1.21.9+ code: string-based keybind categories, SkinTextures package relocation, YawProvider replacing EntityTickProgress, and authlib/game-profile method name changes.

CurseForge

  • CrowBar is now published to CurseForge (project 1667680) alongside Modrinth, with per-file game version tags for all nine jars.

Changed

Project Layout

  • Each Minecraft range is split into fabric/ and neoforge/ subprojects sharing one loader-agnostic common module, keeping gameplay logic identical across loaders.
  • The 1.21.9+ Fabric and NeoForge subprojects live together in version21_9/, the 1.21.6-1.21.8 range in version21_6/, and the 1.21.11-only NeoForge build in version21/.
  • One Gradle invocation builds all nine artifacts; per-loader jars no longer drift between releases.

Fixed

  • Action bar feedback on NeoForge rendered with continuously cycling colors because the overlay message was created with the vanilla rainbow animation flag enabled; toggle and status messages now render with their intended color.

Technical Changes

  • NeoForge subprojects use ModDevGradle with per-range NeoForge versions (21.6.x, 21.9.x, 21.11.x, 26.1.x, 26.2.x) and require Java 25 to build the 26.x targets; Fabric subprojects stay on Loom.
  • Mixin targets follow each version's API: Gui extract render states on 26.1.x, Hud, LocatorBar, and ContextualBar on 26.2.x.
  • Release automation publishes four Fabric and five NeoForge versions to Modrinth and CurseForge, and attaches all nine jars to the GitHub release.

Testing

  • Verified the common module tests pass and all nine loader artifacts compile and package successfully.
  • Confirmed each Modrinth and CurseForge listing resolves exactly its own jar via the asset patterns.

Downloads

  • CrowBar-1.21.6-1.21.8-1.0.0.jar for Minecraft 1.21.6-1.21.8 (Fabric)
  • CrowBar-1.21.6-1.21.8-neoforge-1.0.0.jar for Minecraft 1.21.6-1.21.8 (NeoForge)
  • CrowBar-1.21.9-1.21.10-neoforge-1.0.0.jar for Minecraft 1.21.9-1.21.10 (NeoForge)
  • CrowBar-1.21.x-1.0.0.jar for Minecraft 1.21.9-1.21.11 (Fabric)
  • CrowBar-1.21.x-neoforge-1.0.0.jar for Minecraft 1.21.11 (NeoForge)
  • CrowBar-26.1.x-1.0.0.jar / CrowBar-26.1.x-neoforge-1.0.0.jar for Minecraft 26.1.x
  • CrowBar-26.x-1.0.0.jar / CrowBar-26.2.x-neoforge-1.0.0.jar for Minecraft 26.2