Compatibility
Minecraft: Java Edition
26.1.x
1.21.7–1.21.11
1.21.5
Platforms
Supported environments
Server-side
Singleplayer
Tags
Creators
Details
Licensed MIT
Published last year
Server Events
Server Events is a support library for Fabric server development, designed to enhance the Fabric API's limited event system. It offers a Bukkit-like event framework while adhering to Fabric's minimalist philosophy.
The mod doesn't wrap CommandRegistrationCallback and DynamicRegistrySetupCallback from Fabric API.
Installation
- Import this package to your project.
- Add
servereventsto your mod depends.
repositories {
maven "https://mvn.suc.icu"
}
dependencies {
implementation "icu.suc.mc:serverevents:<version>"
}
Since 2.0.0, the groupId has been changed from icu.suc to icu.suc.mc.
Usage
ServerEvents provides a simple API for registering and processing events.
Here is an example of a player modifying broadcast information:
import net.fabricmc.api.ModInitializer;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.Items;
import icu.suc.mc.serverevents.ServerEvents;
public class ExampleMod implements ModInitializer {
@Override
public void onInitialize() {
ServerEvents.Player.MODIFY_JOIN_MESSAGE.register((player, message) ->
Component.literal("[+] ").append(player.getName()));
}
}
Since 2.2.0:
import icu.suc.mc.serverevents.Listener;
import icu.suc.mc.serverevents.ServerEvents;
import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.event.Event;
import net.minecraft.network.chat.Component;
import net.minecraft.server.level.ServerPlayer;
import org.jetbrains.annotations.NotNull;
public class ExampleMod implements ModInitializer, Listener, ServerEvents.Player.Join.ModifyMessage {
@Override
public void onInitialize() {
ServerEvents.register(this);
}
@Override
public @NotNull Event<?>[] events() {
return new Event[]{ServerEvents.Player.Join.MODIFY_MESSAGE};
}
@Override
public @NotNull Component modifyJoinMessage(@NotNull ServerPlayer player, @NotNull Component message) {
return Component.literal("[+] ").append(player.getName());
}
}
License
This project is licensed under the MIT License © 2025 sucj.


