Code Patterns

Copy-paste examples for common plugin tasks. Commands, events, ECS, GUI, and more.

← Back to Patterns
plugin

Plugin Logging

Use HytaleLogger for structured logging with levels (info, warn, error).

Example Code

java
public class MyPlugin extends JavaPlugin {

    private static final HytaleLogger LOGGER = HytaleLogger.forEnclosingClass();

    public MyPlugin(@Nonnull JavaPluginInit init) {
        super(init);
        LOGGER.atInfo().log("Plugin " + getName() + " v" + getManifest().getVersion() + " loaded!");
    }

    @Override
    protected void setup() {
        LOGGER.atInfo().log("Setting up " + getName());

        try {
            // Setup code
        } catch (Exception e) {
            LOGGER.atError().log("Setup failed: " + e.getMessage());
        }
    }

    @Override
    protected void shutdown() {
        LOGGER.atWarn().log("Plugin shutting down");
    }
}

Common Mistakes

Using System.out.println instead of HytaleLogger. Not using static final for logger.