promotional bannermobile promotional banner

Useless-Core

Shared APIs and client UI infrastructure for the Useless-CE-Unofficial Forge 1.20.1 mod family.

Useless Core is a shared API and client-side UI library for the Useless-CE-Unofficial mod family, developed for Minecraft 1.20.1 Forge.

It provides reusable APIs, common systems, and client-side utilities for companion mods. These systems cover recipe integration, Applied Energistics 2 (AE2) automation, resource handling, networking, data persistence, graphical user interfaces, and font customization.

By centralizing these features in one library, Useless Core allows companion mods to share common implementations instead of independently recreating the same functionality. This improves interoperability, reduces duplicated code, and provides a consistent foundation for expanding the Useless mod ecosystem.

Features

1. Recipe and Ingredient Integration

Useless Core provides a shared recipe API for companion mods, including recipe adapters, ingredient registration, serialization, and recipe conversion.

Key features include:

  • Recipe Adapters: Allow companion mods to integrate their own recipe types with the shared alloy furnace recipe system.
  • Custom Ingredients: Support reusable item and fluid ingredient definitions, including fluid tags and alternative ingredient combinations.
  • NBT Matching: Support strict and partial NBT matching for item and fluid ingredients, allowing recipes to distinguish between different item or fluid variants.
  • Recipe Serialization: Provide shared codecs and serialization utilities for synchronizing and storing recipe data.
  • Dynamic Recipe Support: Allow adapters to provide recipes generated from runtime data and match recipes against actual machine inputs.

These features help companion mods integrate different recipe systems consistently while preserving ingredient requirements and item or fluid data.

2. Applied Energistics 2 (AE2) Integration

Useless Core provides shared interfaces and utilities for AE2-related automation and crafting integrations.

Key features include:

  • ME Network Access: Provide shared APIs for accessing linked ME networks and performing item insertion and extraction operations.
  • Material Selection: Build a shared snapshot of stored and craftable ME network resources, supporting item and fluid ingredient selection.
  • Crafting Job Management: Provide a common lifecycle for AE2 crafting jobs, including job-start events, pattern dispatch notifications, provider availability policies, and job completion handling.
  • Persistent Crafting Attachments: Allow companion mods to attach custom data to crafting jobs and save or restore that data.
  • Construction Pattern Support: Provide shared interfaces for multiblock construction material preparation and material return workflows.

These systems allow companion mods to implement more advanced ME automation without independently rebuilding network access, material selection, and crafting job management.

AE2 is an optional integration and is not a mandatory dependency of Useless Core itself.

3. Shared Capabilities and Resource Handling

Useless Core provides common Forge capability registration, lookup, and resource handling utilities.

Key features include:

  • Shared access to item, fluid, and energy capabilities.
  • Reusable capability providers for block entities.
  • Capability registration helpers that avoid duplicate registrations.
  • Cached capability lookups with automatic invalidation when block entities are removed or unloaded.
  • Long-based resource handler interfaces for item, fluid, energy, and pressure-related integrations.

The long-based interfaces allow compatible implementations to represent resource quantities beyond the limitations of standard integer-based handlers, making them suitable for large-capacity storage and automation systems.

4. Networking and Data Persistence

Useless Core provides a shared networking infrastructure and data persistence utilities.

  • Packet Registration: A common API for registering client-bound and server-bound network messages.
  • Packet Distribution: Support sending packets to the server, individual players, all players, specific dimensions, and players tracking entities or chunks.
  • Network Codecs: Reusable serialization utilities for encoding and decoding packet data.
  • Data Persistence: Shared utilities for saving and restoring world data and custom crafting job attachments.
  • Synchronization: Common infrastructure for maintaining consistent interactions between clients and servers.

These features reduce networking and persistence implementation overhead for companion mods and help maintain reliable multiplayer interactions.

5. Reusable Graphical User Interface Components

Useless Core provides a shared graphical interface framework for companion mods.

Its UI infrastructure includes:

  • Reusable buttons and text input components.
  • Light and dark interface themes.
  • Rounded panels, borders, gradients, and slot backgrounds.
  • Glass-style panels with background blur effects.
  • Adaptive container screens that fit the available GUI viewport.
  • Window resizing through mouse dragging and Ctrl + mouse wheel.
  • Per-interface window size persistence.
  • Coordinate handling for tooltips and JEI overlays.

Players can resize supported machine interfaces to better fit their screen dimensions. Interface sizes are saved locally and restored when the corresponding screens are opened again.

These components help companion mods maintain consistent interface layouts and improve usability across different screen sizes.

6. Font Customization

Useless Core includes a client-side font customization system accessible from the Minecraft main menu.

  • Available options include:
  • Minecraft default font.
  • Microsoft YaHei font.
  • Huawei HarmonyOS Sans SC font.

The font system can use fonts installed on the player's computer or custom font files placed in the Useless Core configuration directory.

Font preferences are stored locally on the client. Custom font files are not bundled with the mod or transmitted to the server.

This allows players to personalize supported game and companion mod interfaces without requiring server-side configuration.

Requirements

  • Minecraft: 1.20.1
  • Mod Loader: Minecraft Forge 47 or higher (built with Forge 47.4.0).
  • Java: 17 or higher.

Additional Information

MixinExtras Forge 0.5.5 or higher is bundled through Jar-in-Jar. A separate installation is normally unnecessary.

  • AE2 is optional and is only needed for features that use its integration APIs.
  • Companion mods may have their own additional dependencies.
  • Useless Core is intended to be installed alongside compatible companion mods that depend on it.

Useless-Core Team

profile avatar
Owner
  • 4
    Projects
  • 68
    Downloads

More from mybong9