AStudioLib
A library for all AttackStudio's mods and more.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
AStudioLib
---
AStudioLib
A lightweight, general-purpose Fabric mod library built by AttackStudio. AStudioLib handles all the boilerplate that every mod needs — config persistence, GUI rendering, sound helpers, inventory queries, a tick scheduler, keybinding registration, and more — so it never has to be written twice.
> For players: Drop the JAR in your mods folder alongside any mod that requires it. AStudioLib has no visible effect on its own.
---
What's Included
Config
JSON config persistence backed by Gson. One-line save and load, automatic file location, pretty-printing, and silent error handling.
GUI Rendering
A full set of `DrawContext` helpers for the AttackStudio dark-theme UI: panel backgrounds, pulsing borders, corner brackets, animated shimmer sweeps, progress bars, tooltip boxes, scrollbars, and fade edges for scrollable regions.
Easing
Frame-rate-independent easing functions: ease-out, ease-out-back, ease-in-out, sine pulse, ease-out bounce, and linear lerp. All inputs are clamped automatically.
Color Utilities
ARGB color packing, alpha blending, two-color lerp, a `healthColor` gradient (red → yellow → green), HSV-to-RGB conversion, and an animated rainbow helper.
Math Utilities
`clamp`, `remap`, `approach`, `smoothLerp`, `wrap`, and `nearlyEqual` — the numeric helpers that Java forgot to include.
Text Helpers
Minecraft `Text` builders: hex-colored text, toggle labels (`"Feature: ON/OFF"`), join-with-separator, and vanilla `Formatting` application.
Tick Scheduler
Client-side deferred and repeating task scheduler. Schedule a one-shot action after N ticks or a repeating pulse every N ticks — no background threads, no boilerplate.
Inventory Utilities
Full-inventory queries including offhand: item count, presence checks, first-slot search, and held-item detection.
Sound Utilities
One-liner sound playback — fixed volume/pitch, custom pitch, or randomized pitch within a range.
Toast Notifications
One-liner Minecraft system toast notifications (top-right corner), with or without a body message.
Keybinding Registration
Thin wrapper around Fabric's keybinding API. Register a key in one line, poll with `isHeld()` or `consumePress()`. Auto-ticked each client frame.
/studiolib Command
A shared client command registry. Any mod can register subcommands under `/studiolib` during init — AStudioLib assembles the full tree automatically.
---
For Mod Developers
1. Publish to Maven local: ``` git clone https://github.com/AttackStudios/AStudioLib.git cd AStudioLib ./gradlew publishToMavenLocal ```
2. Add to `build.gradle`: ```groovy repositories { mavenLocal() } dependencies { modImplementation "net.attackstudioyt:astudiolib:1.1.0" } ```
3. Declare in `fabric.mod.json`: ```json "depends": { "astudiolib": "*" } ```
---
Requirements
| | | |---|---| | Minecraft | 1.21.11 or higher | | Fabric Loader | ≥ 0.18.4 | | Fabric API | 0.141.3+1.21.11 | | Java | 21 |
---
Disclaimer
This mod was made with help of Claude CLI and may have imperfections due to GenAI code.