promotional bannermobile promotional banner

S-Lib

An easy to use config and utility library.
Stalemated | S-Lib
Create a server, get 25% off your first monthaffiliate logo
Create Server
affiliate banner image

S-Lib

S-Lib is a lightweight utility and config library for Minecraft modding.


Example mod: Check out the S-Lib Test Mod repository for complete config usage examples and GUI generation using YACL.


Features

Annotation-Driven Configs

  • Register synced or local configs in a single line of code using SLibConfig.syncedBuilder() or SLibConfig.localBuilder().
  • Network @Sync Options:
    • OVERRIDE_CLIENT: server authoritative config, syncs to the client. Config broadcasts on login and updates in real time. Supports configurable permission checks (e.g., OP-only).
    • INFORM_SERVER: local config, informs server of changes
    • NONE: local config, no network sync
  • Newly added fields are automatically populated with defaults, obsolete keys are removed, and values are clamped to specified ranges when using the annotations @RangeInt, @RangeFloat, and @RangeDouble.
  • Insert comments using the @Comment annotation on top of fields, directly in your config class.
  • Backups are automatically created if file corruption or invalid syntax is detected, preserving the broken config if you accidentally make a mistake.
  • Use the @Nest annotation to allow usage of nested classes for more complex config structures.
  • Use the @Ignore annotation to ignore a field entirely.
  • Built-in type adapters compatible with serialization for AWT's Color, Minecraft's TextColor, Identifier, Pattern, and UUID classes.

Custom YACL Controllers

Custom controllers for YACL:

  • Advanced Color Controller: Supports hex codes (#RRGGBBAA), Minecraft color names, and legacy formatting codes (&a, &3).
  • Item or Tag Controller: Autocomplete dropdown for matching exact items, tags (#c:swords), namespaces (minecraft:*), and regex patterns.
  • Simple Dropdowns: Dropdown selectors for Enums and Strings.

General Utilities

  • Target Matcher Engine: Item matching via exact IDs, tags, namespaces, wildcards (*), and regex (regex:.*_sword).
  • Platform Helpers: Abstractions for loader-specific methods, both as a general utility (PlatformHelper) and for network-related features (NetworkHelper).
  • Math and Color Utils: Easing functions (lerp, ease-out, clamp), text gradient generators, color utilities, and more.

The S-Lib Team

Grand Artisan tier frameprofile avatar
  • 5
    Followers
  • 18
    Projects
  • 16.4M
    Downloads
Donate

More from StalematedView all