Puzzles Lib

Puzzles Lib

Why it's called Puzzles, you ask? That's the puzzle!

40.0M downloads
Created Apr 9, 2026
by Fuzs

About

<p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/banner.png" width="854" height="240" /></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/strip.png" width="854" height="14" /></p> <p style="text-align: center; line-height: 36px;"><a href="https://lunapixel.studio/discord"><img src="https://img.shields.io/static/v1?label=&amp;message=Discord&amp;color=ECEBE6&amp;labelColor=2F4858&amp;style=for-the-badge&amp;logo=discord&amp;logoColor=white" width="117" height="28" /></a>&emsp;<a href="https://x.com/Fusseel"><img src="https://img.shields.io/static/v1?label=&amp;message=Twitter&amp;color=ECEBE6&amp;labelColor=2F4858&amp;style=for-the-badge&amp;logo=x&amp;logoColor=white" width="116" height="28" /></a>&emsp;<a href="https://www.youtube.com/@heyitsfuzs"><img src="https://img.shields.io/static/v1?label=&amp;message=YouTube&amp;color=ECEBE6&amp;labelColor=2F4858&amp;style=for-the-badge&amp;logo=youtube&amp;logoColor=white" width="118" height="28" /></a>&emsp;<a href="https://github.com/Fuzss"><img src="https://img.shields.io/static/v1?label=&amp;message=GitHub&amp;color=ECEBE6&amp;labelColor=2F4858&amp;style=for-the-badge&amp;logo=github&amp;logoColor=white" width="108" height="28" /></a>&emsp;<a href="https://www.curseforge.com/members/fuzs_"><img src="https://img.shields.io/static/v1?label=&amp;message=CurseForge&amp;color=ECEBE6&amp;labelColor=2F4858&amp;style=for-the-badge&amp;logo=curseforge&amp;logoColor=white" width="143" height="28" /></a>&emsp;<a href="https://modrinth.com/user/Fuzs"><img src="https://img.shields.io/static/v1?label=&amp;message=Modrinth&amp;color=ECEBE6&amp;labelColor=2F4858&amp;style=for-the-badge&amp;logo=modrinth&amp;logoColor=white" width="129" height="28" /></a></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/strip.png" width="854" height="14" /></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/commons/headers/about.png" width="854" height="32" /></p> <p><span style="font-size: 14px;">Puzzles Lib is the core library that all my mods need to run. What does it do you ask? Most importantly it offers a bunch of abstractions for mod loader-specific code, which makes it very easy for me to develop all of my mods on multiple mod loaders simultaneously.</span></p> <p><span style="font-size: 14px;">Note that Puzzles Lib is specifically designed for my own needs, it is not intended to be used by other developers. Other developers are welcome to adapt my implementations for their own needs though.</span></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/strip.png" width="854" height="14" /></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/commons/headers/features.png" width="854" height="32" /></p> <p><strong><span style="font-size: 14px;">▶️ </span></strong><strong><span style="font-size: 14px;">Use most of Forge's </span></strong><code><strong><span style="font-size: 14px;">IModBusEvent</span></strong></code><strong><span style="font-size: 14px;">s in the common project for setting up your mod.</span></strong></p> <p><strong><span style="font-size: 14px;">▶️ </span></strong><strong><span style="font-size: 14px;">Register content to Minecraft's game registries.</span></strong></p> <p><strong><span style="font-size: 14px;">▶️ </span></strong><strong><span style="font-size: 14px;">Send messages between client &amp; server with auto-serialization by simply using Java's record type.</span></strong></p> <p><strong><span style="font-size: 14px;">▶️ </span></strong><strong><span style="font-size: 14px;">Create annotation-based configs backed by Forge's config implementation (provided by </span></strong><a href="https://github.com/Fuzss/forgeconfigapiport"><strong><span style="font-size: 14px;">Forge Config API Port</span></strong></a><strong><span style="font-size: 14px;"> on Fabric).</span></strong></p> <p><strong><span style="font-size: 14px;">▶️ </span></strong><strong><span style="font-size: 14px;">Attach custom data to entities, block entities, chunks and levels using Forge's capability system and </span></strong><a href="https://github.com/OnyxStudios/Cardinal-Components-API"><strong><span style="font-size: 14px;">Cardinal Components</span></strong></a><strong><span style="font-size: 14px;"> on Fabric.</span></strong></p> <p><strong><span style="font-size: 14px;">▶️ </span></strong><strong><span style="font-size: 14px;">Apply extensive changes to Minecraft's biomes on loading directly in-code.</span></strong></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/strip.png" width="854" height="14" /></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/commons/headers/installation.png" width="854" height="32" /></p> <p><strong><span style="font-size: 14px;">⏩ </span></strong><strong><span style="font-size: 14px;">INSTALLATION REQUIRED ON CLIENT &amp; REQUIRED ON SERVER</span></strong></p> <p><strong><span style="font-size: 14px;">⏩ </span></strong><strong><span style="font-size: 14px;">REQUIRES </span></strong><a href="https://modrinth.com/mod/fabric-api"><strong><span style="font-size: 14px;">FABRIC API</span></strong></a><strong><span style="font-size: 14px;"> TO BE INSTALLED (FABRIC)</span></strong></p> <p><strong><span style="font-size: 14px;">⏩ </span></strong><strong><span style="font-size: 14px;">REQUIRES </span></strong><a href="https://modrinth.com/mod/forge-config-api-port"><strong><span style="font-size: 14px;">FORGE CONFIG API PORT</span></strong></a><strong><span style="font-size: 14px;"> TO BE INSTALLED (FABRIC)</span></strong></p> <p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/strip.png" width="854" height="14" /></p> <p><a href="https://modrinth.com/mod/visual-workbench"><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/visualworkbench/banner.png" width="854" height="240" /></a></p><p><a href="https://modrinth.com/mod/trading-post"><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/tradingpost/banner.png" width="854" height="240" /></a></p><p><a href="https://modrinth.com/mod/golden-age-combat"><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/goldenagecombat/banner.png" width="854" height="240" /></a></p><p><img src="https://raw.githubusercontent.com/Fuzss/modresources/main/pages/data/puzzleslib/strip.png" width="854" height="14" /></p>

Versions

v21.11.11Latest
1.21.11fabricFeb 12, 2026

# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [v21.11.11-1.21.11] - 2026-02-12 ### Added - Add `EntityDamageImmunityCallback` ### Fixed - Fix component-style-based config options not parsing properly ## [v21.11.10-1.21.11] - 2026-02-09 ### Fixed - Fix data pack registries only being created for the main mod namespace ## [v21.11.9-1.21.11] - 2026-02-05 ### Added - Add `ItemModelGenerationHelper::generateChest` ### Changed - `AbstractModelProvider::generateForBlocks` no longer creates the base block model ## [v21.11.8-1.21.11] - 2026-02-04 ### Fixed - Fix minor `BlockSetFamily` related issues ## [v21.11.7-1.21.11] - 2026-02-04 ### Added - Add `BlockSetFamily` - Add `AbstractMenuSelectionList` - Add `ExtractLevelRenderStateCallback` - Add `StopSleepInBedCallback` - Add additional helper methods `ComponentHelper::getAsComponent` and `ComponentHelper::getAsString` ### Changed - Move `StyleCombiningCharSink` to api package - Adjust the injection point for `GatherEffectScreenTooltipCallback` on Fabric - Use native event for implementing `ExtractBlockOutlineCallback` on Fabric ## [v21.11.6-1.21.11] - 2026-01-09 ### Fixed - Fix `GatherPotentialSpawnsCallback` not firing for nether fortress spawns on Fabric ## [v21.11.5-1.21.11] - 2026-01-03 ### Fixed - Fix `MobEffectEvents$Remove` running when the `MobEffectInstance` is `null` - Fix `MobEffectEvents$Expire` not allowing for returning an `EventResult` ## [v21.11.4-1.21.11] - 2025-12-20 ### Added - Add `GameRuleUpdatedCallback` - Add back `GatherEffectScreenTooltipCallback` ## [v21.11.3-1.21.11] - 2025-12-17 ### Added - Add `PackResourcesHelper::isPackHidden` and `PackResourcesHelper::setPackHidden` ### Changed - Enable all model-related events again on Fabric ## [v21.11.2-1.21.11] - 20

Download
v21.11.10
1.21.11fabricFeb 9, 2026

# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [v21.11.10-1.21.11] - 2026-02-09 ### Fixed - Fix data pack registries only being created for the main mod namespace ## [v21.11.9-1.21.11] - 2026-02-05 ### Added - Add `ItemModelGenerationHelper::generateChest` ### Changed - `AbstractModelProvider::generateForBlocks` no longer creates the base block model ## [v21.11.8-1.21.11] - 2026-02-04 ### Fixed - Fix minor `BlockSetFamily` related issues ## [v21.11.7-1.21.11] - 2026-02-04 ### Added - Add `BlockSetFamily` - Add `AbstractMenuSelectionList` - Add `ExtractLevelRenderStateCallback` - Add `StopSleepInBedCallback` - Add additional helper methods `ComponentHelper::getAsComponent` and `ComponentHelper::getAsString` ### Changed - Move `StyleCombiningCharSink` to api package - Adjust the injection point for `GatherEffectScreenTooltipCallback` on Fabric - Use native event for implementing `ExtractBlockOutlineCallback` on Fabric ## [v21.11.6-1.21.11] - 2026-01-09 ### Fixed - Fix `GatherPotentialSpawnsCallback` not firing for nether fortress spawns on Fabric ## [v21.11.5-1.21.11] - 2026-01-03 ### Fixed - Fix `MobEffectEvents$Remove` running when the `MobEffectInstance` is `null` - Fix `MobEffectEvents$Expire` not allowing for returning an `EventResult` ## [v21.11.4-1.21.11] - 2025-12-20 ### Added - Add `GameRuleUpdatedCallback` - Add back `GatherEffectScreenTooltipCallback` ## [v21.11.3-1.21.11] - 2025-12-17 ### Added - Add `PackResourcesHelper::isPackHidden` and `PackResourcesHelper::setPackHidden` ### Changed - Enable all model-related events again on Fabric ## [v21.11.2-1.21.11] - 2025-12-14 ### Added - Add `MutableBakedQuad` ## [v21.11.1-1.21.11] - 2025-12-13 ### Fixed - Fix `ExtractRenderStateCallback` not running on Fabric ## [v21.11

Download

Download

Download v21.11.11

Minecraft: 1.21.11

Loaders: fabric

Tags

fabricforgeneoforge1.21.71.21.81.21.91.21.101.21.11