# Port iteration 7 ## 0.7.0-alpha - Starts the Fabric port's own version line. The original Forge version remains documented as provenance, but releases no longer inherit the upstream `0.1.4.4-fabric.N` version string. - Fixed stale vanilla player-part visibility after armor changes. `PlayerModel` now resets every LesRaisinsArmor-controlled part at the start of each animation setup, then applies the current frame's `armor_display` hide mask at the end. - This specifically fixes cases such as removing a helmet while keeping a chestplate equipped and having the player's head remain invisible. - No GeckoLib model scale or transform changes in this iteration; Port 7 isolates the visibility lifecycle fix. # Port iteration 6 ## 0.1.4.4-fabric.6 - Ported the original Forge `assets/lrarmor/armor_display/*.json` body-part hiding behavior to Minecraft/Fabric 26.2. - Added a client render-state bridge: `AvatarRenderer` extracts equipped LesRaisinsArmor pieces into an `AvatarRenderState` hide mask. - Added a `PlayerModel` mixin that hides the vanilla head/hat/body/arms/sleeves/legs/pants named by the original armor display JSON. - The JSON files remain the source of truth; suits without an `armor_display` file keep vanilla body rendering unchanged. - Keeps GeckoLib 5 model rendering, the dedicated creative tab, and local client/server run scripts from Port 5. # Port iteration 2 ## 0.1.4.4-fabric.5 - Migrated GeckoLib model assets from the legacy `assets/lrarmor/geo/...` layout to GeckoLib 5's canonical `assets/lrarmor/geckolib/models/...` layout. - Migrated animation assets to `assets/lrarmor/geckolib/animations/...`. - `BedrockArmorModel` now returns GeckoLib 5 logical resource IDs without location prefixes or `.geo.json` / `.animation.json` suffixes. - Texture paths remain vanilla-style full texture paths (`textures/...png`), as required by GeckoLib 5. - Keeps the custom LesRaisins Armor creative tab and local run scripts from Port 4. Changes from fabric.1: - Updated Fabric API to `0.158.0+26.2` for GeckoLib 5.5.4 compatibility. - Updated `CreativeModeTabEvents` import to the Fabric 26.2 `creativetab.v1` package. - Changed Fabric/GeckoLib dependencies to Loom `modImplementation`. - Removed `splitEnvironmentSourceSets()` for now. GeckoLib 5.5.4 exposes client render types through `GeoRenderProvider`; compiling the renderer in the standard Loom source set allows javac to resolve `HumanoidRenderState`. - `src/client/java` remains logically client-only through the `client` entrypoint in `fabric.mod.json`. - Bumped private port version to `0.1.4.4-fabric.2`. Dedicated-server runtime verification remains a later test step; this iteration targets the current compile blockers first. ## Port 4 - Fixed GeckoLib model and animation resource identifiers to include the actual geo/animations directories and file extensions. - Added dedicated LesRaisins Armor creative tab. - Added run-client/run-server scripts for Windows and Linux. ## 0.8.0-alpha - Build/Git workflow - Version line moved to `0.8.0-alpha`; release version continues to come exclusively from `gradle.properties`. - Reworked `compile.bat` based on the Lobby Systems workflow supplied by DartoKloning. - `compile.bat` now reads `mod_version`, `minecraft_version`, `maven_group`, and `archives_base_name` from `gradle.properties`. - If the exact main JAR for the current `mod_version` already exists, the script asks whether to rebuild or skip directly to Git integration. - If the current-version JAR is absent (including an empty `build/libs` or a JAR from a different version), the build runs automatically. - After a successful build, the script can commit and push the repository. - Git push retries automatically up to three times per round; after three failures the user can choose another three-attempt round or stop. - Added `.gitignore` for Gradle caches, build output, Loom runtime files, IDE metadata, and logs so Git integration does not stage generated files.