Back to mods
More Events project artwork

CurseForge · Hytale mod

More Events

Adds more cancellable events to the ECS by overriding the class files that Hytale associates with certain interactions.

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which More Events release should I use?

Updated 4 months ago
Latest stable file MoreEvents-1.1.jar
Game version Not listed
Mod system Built-in Hytale mod system

More Events MoreEvents-1.1.jar targets Hytale. Do not install it as a separate client mod. Enable it on the world host—the local server in singleplayer or the dedicated server in multiplayer. No required dependencies listed for this file.

Where it goes

Where should More Events be installed in Hytale?

Do not install it as a separate client mod. Enable it on the world host—the local server in singleplayer or the dedicated server in multiplayer.

Separate client mod Not supported
World host / dedicated server Required
Mod system for this release Built-in Hytale mod system
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

Put Hytale mods on the world host or dedicated server. Singleplayer runs a local server too; Hytale does not use separate client mods.

What else does More Events MoreEvents-1.1.jar need?

MoreEvents-1.1.jar. Change the file and its required mods may change too.

No required dependencies listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional project dependencies. Check the creator notes before changing an existing world.

Before you install it

Add More Events without breaking your instance.

Built for More Events MoreEvents-1.1.jar. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use MoreEvents-1.1.jar. It targets Hytale; another release may target a different game build or dependency set.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Enable it on the world host

    Do not install it as a separate client mod. Enable it on the world host—the local server in singleplayer or the dedicated server in multiplayer.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside MoreEvents-1.1.jar. It opens that exact file at the source.

About this project

What does More Events add?

More Events

Since Hytale doesn't support certain cancellable events yet, I've made a mod that adds them!

With this mod you can treat events like :

  • Gathering
  • Harvesting
  • Filling Buckets
  • Placing Fluids
  • Changing block styles

As you would other cancellable events like breaking or placing blocks without interfering with the ability of other mods to customize the behavior of those events.

This is pretty neat because if, for example, you wanted to modify an interaction behavior across two plugins using only class registration overrides the logic of BOTH plugins would have to go into one, as the override is a server-wide (not plugin-specific) setting.

How to use it

Download MoreEvents

Move MoreEvents.jar into your plugin dependency folder (the same folder as the Hytale.jar your plugin references for dependencies)

Mark MoreEvents.jar as a compile-only dependency in build.gradle.kts (or your equivalent) :

dependencies {
    compileOnly(files("libs/HytaleServer.jar"))
    compileOnly(files("libs/MoreEvents-1.0.jar"))
}

Add MoreEvents to your mod's manifest.json as a dependency in the format :

"Dependencies" : { 
    "Mods:MoreEvents" : ">=1.0.0" 
}

Import the event you'd like to use

Register a system with the imported event! Ex :

public class YourPlugin extends JavaPlugin {
    @Override
    protected void setup() {
        getEntityStoreRegistry().registerSystem(
            new PlaceFluidEventSystem(PlaceFluidEvent.class));
    }
}
public class PlaceFluidEventSystem extends EntityEventSystem<EntityStore, PlaceFluidEvent> {
    public PlaceFluidEventSystem(@Nonnull Class<PlaceFluidEvent> eventType) {
        super(eventType);
    }

    @Override
    public void handle(int i, @Nonnull ArchetypeChunk<EntityStore> archetypeChunk,
                       @Nonnull Store<EntityStore> store,
                       @Nonnull CommandBuffer<EntityStore> commandBuffer,
                       @Nonnull PlaceFluidEvent placeFluidEvent) {
    }

    @Nullable
    @Override
    public Query<EntityStore> getQuery() {
        return Player.getComponentType();
    }
}

Don't see the event you want?

There are now generic events you can listen for when a player hits or interacts (F Key) with a block and use the provided context to detect specific events. This event intercepts these interactions early enough to actually cancel most of them, unlike the event built in to Hytale.

If you'd like to request that a specific kind of event be added to the plugin, just ask and I'll see if I can add support for it.

Project description from CurseForge.

Recent files

More Events releases and Hytale builds

2 of 2 releases match

Looking for an older file? The official CurseForge project page is in Resources.