promotional bannermobile promotional banner

E-Utils

EverlastingUtils is a robust utility library for Minecraft mod development and all of Hysocs mods.

EverlastingUtils (Minecraft)

Note: If you're seeing this as a dependency or requirement for another mod, you can simply install it and ignore this documentation.

 

EverlastingUtils is a utility library for Fabric mod development. It provides implementations for common features that mod developers frequently need to implement:

  • Configuration management with runtime reloading
  • Command registration with permission handling
  • Inventory GUI framework
  • Utility functions and extensions

For mod developers looking to use this library, continue reading below.

Features

Config Management

  • JSONC configuration with comments support
  • Automatic config migration and backup
  • File watching and hot reloading
  • Type-safe config handling with Kotlin data classes
data class MyConfig(
    override val version: String = "1.0.0",
    override val configId: String = "mymod"
    // Your config properties here
) : ConfigData

val configManager = ConfigManager(
    currentVersion = "1.0.0",
    defaultConfig = MyConfig(),
    configClass = MyConfig::class
)

 

Enhanced Command System

  • Fluent command builder API
  • Built-in permission handling
  • Subcommand support
  • Alias support
commandManager.command("mycommand", permission = "mymod.command") {
    executes { context ->
        // Command logic
        1
    }
    
    subcommand("subcommand") {
        executes { context ->
            // Subcommand logic
            1
        }
    }
}

 

GUI Framework

  • Simple inventory GUI creation
  • Custom button support
  • Interactive slot handling
  • Dynamic content updates
CustomGui.openGui(
    player = player,
    title = "My GUI",
    layout = listOf(/* GUI items */),
    onInteract = { context ->
        // Handle interactions
    }
)

 

Dependencies

  • Kotlin
  • Fabric API
  • Fabric Language Kotlin

 

Installation

Add to your build.gradle.kts:

dependencies {
    modImplementation "curse.maven:e-utils-1275646:6588136"
}

 

Usage Examples

Config Management

// Create a config
data class MyConfig(
    override val version: String = "1.0.0",
    override val configId: String = "mymod",
    var debugMode: Boolean = false
) : ConfigData

// Initialize manager
val configManager = ConfigManager(
    currentVersion = "1.0.0",
    defaultConfig = MyConfig(),
    configClass = MyConfig::class,
    metadata = ConfigMetadata(
        headerComments = listOf("My mod configuration")
    )
)

// Access config
val currentConfig = configManager.getCurrentConfig()

 

Command Registration

val commandManager = CommandManager("mymod")

commandManager.command("hello", permission = "mymod.hello") {
    executes { context ->
        val source = context.source
        CommandManager.sendSuccess(source, "Hello, World!")
        1
    }
}

 

GUI Creation

CustomGui.openGui(
    player = player,
    title = "My GUI",
    layout = listOf(
        CustomGui.createNormalButton(
            ItemStack(Items.DIAMOND),
            "Click Me!",
            listOf("Button Description")
        )
    ),
    onInteract = { context ->
        // Handle button clicks
    }
)

 

Contributing

Contributions are welcome! Feel free to submit issues and pull requests.

 

Source Code & Development

The complete source code for EverlastingUtils is available on GitHub: EverlastingUtils Repository

Adding to Your Project

Add this to your build.gradle.kts:

dependencies {
    modCompileOnly(files("libs/everlastingutils-1.0.0.jar"))
}

Make sure to place the EverlastingUtils JAR file in your project's libs directory.

The E-Utils Team

profile avatar
Owner
  • 8
    Projects
  • 377.0K
    Downloads

More from HysocsView all

  • B-RTP project image

    B-RTP

    • 178
    • Mods

    BlanketRTP: A Minecraft Fabric mod for random teleportation with biome selection, gliding mechanics, and boss bar notifications.

    • 178
    • June 7, 2026
    • Mods
    • +3
  • CobbleSpawnRegions project image

    CobbleSpawnRegions

    • 136
    • Mods

    Create named regions that control Cobblemon natural spawns and custom Pokemon spawns. Use it to create custom spawns for separate towns, routes, caves, arenas, and event areas without needing to modify the natural spawn behavior per world.

    • 136
    • May 27, 2026
    • Mods
    • +3
  • CobbleBattleRewards project image

    CobbleBattleRewards

    • 16.6K
    • Mods

    A simple mod to provide rewards for completing battles with cobblemon

    • 16.6K
    • May 25, 2026
    • Mods
    • +4
  • NoMonsInMyWorld project image

    NoMonsInMyWorld

    • 311
    • Mods

    a lightweight, server-side Minecraft Fabric mod for Cobblemon that gives you per-world control over Pokémon spawning. Block specific species, filter by type/shiny status, or completely disable spawns in hub worlds, minigame maps, or curated dimensions.

    • 311
    • April 6, 2026
    • Mods
    • +3
  • B-RTP project image

    B-RTP

    • 178
    • Mods

    BlanketRTP: A Minecraft Fabric mod for random teleportation with biome selection, gliding mechanics, and boss bar notifications.

    • 178
    • June 7, 2026
    • Mods
    • +3
  • CobbleSpawnRegions project image

    CobbleSpawnRegions

    • 136
    • Mods

    Create named regions that control Cobblemon natural spawns and custom Pokemon spawns. Use it to create custom spawns for separate towns, routes, caves, arenas, and event areas without needing to modify the natural spawn behavior per world.

    • 136
    • May 27, 2026
    • Mods
    • +3
  • CobbleBattleRewards project image

    CobbleBattleRewards

    • 16.6K
    • Mods

    A simple mod to provide rewards for completing battles with cobblemon

    • 16.6K
    • May 25, 2026
    • Mods
    • +4
  • NoMonsInMyWorld project image

    NoMonsInMyWorld

    • 311
    • Mods

    a lightweight, server-side Minecraft Fabric mod for Cobblemon that gives you per-world control over Pokémon spawning. Block specific species, filter by type/shiny status, or completely disable spawns in hub worlds, minigame maps, or curated dimensions.

    • 311
    • April 6, 2026
    • Mods
    • +3