Download Lib39 — Minecraft Mods — MetaMods

Lib39

Active

Downloads

48

Last update

9 months ago

Versions

1.18.2 — 1.20.1
Client and server
Fabric
Quilt
Game mechanics
Libraries
Utils

Lib39

Useful Tools Library for Minecraft

Regular players should never need to download Lib39 separately. Mods that utilize this library already include it in their package. This version is intended for special cases, debugging, or for creating resource packs and data packs using the Machination, Lockpick, or Keygen modules.

Lib39 is a collection of various utilities, mixins, events, and other components that originally were part of the Yttr mod. Since Yttr contained many useful mechanics, many developers wanted to borrow mixins from it, which led to separating these functions into a standalone library.

The name "39" corresponds to the atomic number of the chemical element yttrium. You can pronounce it as "lib thirty nine", "lib three nine", or even "lib miku" — whatever you prefer.

Getting Started

The primary way to obtain Lib39 is through the Sleeping Town Maven repository. Add the following lines to your build.gradle file:

repositories {
    maven {
        url 'https://repo.sleeping.town'
        content {
            includeGroup 'com.unascribed'
        }
    }
}

dependencies {
    modApi include("com.unascribed:lib39-core:1.4.0")
    // you can add other necessary modules here
    // loom doesn't include transitive dependencies, so you need to specify all explicitly
}

Currently, only Minecraft version 1.19.x is supported for ModFest: Singularity. The Core module also works on version 1.18, and Deferral works starting from 1.17.

Available Modules

Core (Java & JSON)
Contains various utility classes such as AutoRegistry and AutoMixin, as well as shared components for other modules. Includes various minor improvements, for example, crafting sounds.

Lockpick (JSON)
Mixins for removing artificial limitations, such as model rotation angles, crafting recipe sizes, and others. Also provides additional capabilities, for example, inheriting elements from parent models.

Ripple (Java)
Allows customizing loading screen texts.

Gesundheit (Java)
Adds a convenient particle system for interfaces that uses Minecraft's standard particle manager. Works in any screen.

Fractal (Java)
Introduces a "subgroup" system for further dividing creative mode tabs.

Tunnel (Java)
Provides a convenient networking system based on Concrete Network from version 1.12.

Phantom (Java)
Adds the ability to temporarily "hide" blocks from the world. Blocks are not removed, but simply become invisible.

Waypoint (Java)
Adds an additional world rendering layer with additive blending for displaying various glowing effects.

Weld (Java)
Implements a "big blocks" system for creating prefabricated structures, similar to beds in vanilla game, but with broader capabilities and theoretically without size limitations.

Sandman (Java)
Allows items to "always update" using random ticks.

Crowbar (Java)
Adds events for low-level world generation phases, such as constructing surface rules, and direct access to chunks during surface generation and population for invoking custom generators.

Keygen (Resource)
Adds the ability to load music in XM, S3M, and MOD formats via IBXM2.

Dessicant (Java & JSON)
Implements "logical defaults" for loot tables and automatically manages recipe unlocking based on the "discovered_by" key in recipe JSONs. Support for blockstates and block/item models coming soon.

Machination (JSON)
Adds new recipe types, such as "soaking" for throwing items into a fluid and "smashing" for crushing a block between two others using a piston. Has EMI support.

Recoil (Java)
Events for working with camera and field of view, as well as the ability to suppress default behavior and intercept attacks/usage. Everything needed to create a weapon mod.

Util (Java)
Various utility classes. Documentation not ready yet.

Planned Modules

Yttr contains many unusual mixins and utilities, and separating them into individual modules will take time. Here are some components planned for future addition:

Equivalence (Java & JSON)
A "substitutes" system for creating functionally identical items in recipe ingredients and tags.

Mesh (Java)
An efficient block network system based on graphs for pipes and similar constructions.

Conflagration (Java)
A CSS-based configuration system and a framework for creating interfaces that interact with it.

Project members
unascribed

unascribed

Developer

Created: 1 Oct 2025

ID: 2515