HBLCore - Ban Detection v1.4

Silently checks players join and notifies staff of known hackers, griefers.
HBLCore - Hytale Ban List Core

Passive ban-status awareness for Hytale servers. Know exactly who is joining - no bans applied, no local data touched.

HBLCore checks every player joining your server against hytalebanlist.org and tells you the result. That is all it does. It will never ban, kick, or modify any local server data on its own.

If you want in-game notifications when a known bad actor joins - without wiring up a full ban system - this is the plugin for you.

If you are a developer building a moderation plugin, HBLCore gives you a clean event hook to receive ban status on every join without having to implement the API yourself.

Getting Started

1. Activate

Run /hblcore auth and click the magic link. Your server is registered.

hblcore-auth.png


2. Grant notify permission (Optional)

Give the HBLCore.notify permission to any staff rank. They will receive an in-game notification every time a player joins, showing their HBL status.

3. That's it

HBLCore runs silently in the background. No bans are applied. No local files are written to. Staff with the notify permission stay informed.

What HBLCore Does NOT Do

It is important to be clear about this:

  • It does not kick or disconnect any player
  • It does not write to bans.json, whitelist.json, or any server file
  • It does not manage warnings, bans, or moderation history locally
  • It does not override or replace any native server commands

HBLCore is purely an information layer. What you do with that information is up to you or the plugins consuming its events.

In-Game Notifications

When notify: true is set in config, staff with the HBLCore.notify permission receive a notification popup on every player join:

  • Clear - "[HBLCore] PlayerName - Clear"
  • Banned - "[HBLCore] PlayerName - BANNED - {reason}"
  • Pending Ban - "[HBLCore] PlayerName - PENDING BAN - {reason}"
  • Whitelisted - "[HBLCore] PlayerName - Whitelisted"

Notifications are silent to players without the HBLCore.notify permission.

Configuration

Config is created automatically at HBLCore/config.json on first run.

Code:
{
  "APIKey": "YOUR_API_KEY_HERE",
  "notify": true,
  "BanReports": true
}

  • APIKey (string, default: "YOUR_API_KEY_HERE")
    Your hytalebanlist.org API key. Set automatically via /hblcore auth.
  • notify (boolean, default: true)
    Send in-game status notifications to staff with HBLCore.notify.
  • BanReports (boolean, default: true)
    Enable the /hblcore report command.

Commands

/hblcore auth

Registers this server with hytalebanlist.org. Opens a magic link - click it in your browser to complete activation. The API key is saved automatically.

Requires: HBLCore.auth

/hblcore report {time} {username}

Submits a report for a player without a reason. The API returns a magic link - open it to add reasoning, evidence, and complete the submission via the web UI. Nothing is applied locally.

Requires: HBLCore.auth and BanReports: true in config.

Duration examples: 30m 2h 7d 2w 1mo 1y perm

Code:
/hblcore report 7d SomePlayer
> Report submitted for SomePlayer. Complete it at:
> https://hytalebanlist.org/report/...

Permissions

  • HBLCore.auth - Server admins. Run /hblcore auth and /hblcore report.
  • HBLCore.notify - Staff / moderators. Receive in-game join status notifications.

For Plugin Developers - Event Hooks

HBLCore exposes a static event API that any plugin can hook into with a single line. You receive the ban status of every joining player without having to implement the hytalebanlist.org API yourself.

Registering a listener

Code:
import org.hblcore.HBLCorePlugin;
import org.hblcore.event.HBLStatusEvent;
import org.hblcore.event.HBLStatusEvent.PlayerStatus;

// In your plugin's setup():
HBLCorePlugin.registerStatusListener(event -> {
    if (event.getStatus() == PlayerStatus.BANNED) {
        // kick, log, alert - your call
    }
});

Available event data

Code:
event.getUsername()   // String  - the joining player's username
event.getUuid()       // String  - the joining player's UUID
event.getStatus()     // PlayerStatus - CLEAR | BANNED | LOCAL_BAN | WHITELISTED
event.getReason()     // String  - ban reason (null if CLEAR or WHITELISTED)
event.getAppealUrl()  // String  - appeal URL (null if not applicable)
event.getExpiresAt()  // Instant - ban expiry (null if permanent or not applicable)

Status values

  • CLEAR - No ban on record. Player is clean.
  • BANNED - Active ban confirmed by hytalebanlist.org.
  • LOCAL_BAN - Ban exists on hytalebanlist.org but is pending review (not yet confirmed).
  • WHITELISTED - Player is whitelisted on hytalebanlist.org.

Handling all statuses

Code:
HBLCorePlugin.registerStatusListener(event -> {
    switch (event.getStatus()) {
        case BANNED -> {
            // Active ban confirmed - kick, log, restrict, etc.
            String reason = event.getReason();
            String appeal = event.getAppealUrl();
        }
        case LOCAL_BAN -> {
            // Ban exists but is pending review - not yet confirmed
        }
        case WHITELISTED -> {
            // Explicitly whitelisted - clear any local restrictions
        }
        case CLEAR -> {
            // Clean player - no action needed
        }
    }
});

Declaring HBLCore as a dependency

In your plugin's manifest.json:

Code:
{
  "Dependencies": {
    "HBLCore": "*"
  }
}

Important notes for developers

  • HBLCore never kicks players. Your listener decides what action to take.
  • Listeners are called asynchronously. Avoid blocking operations inside the callback.
  • Exceptions are caught per listener. A crash in your code will not affect other listeners or the join flow.
  • Registration is load-order safe. Call registerStatusListener any time in your plugin's setup().

Useful Links

EULA: Free EULA
220 Views
4 Downloads
Mar 11, 2026 Published
May 5, 2026 Updated
Not yet rated
37.1 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Protection
  1. Staff
  1. Core
Game mode
  1. Survival
  1. Skyblock
  1. Economy
Supported languages
  1. English
Creator
Owner
Lag-free, customizable servers ready in minutes.
Host your adventure today!
Recommended for you
The best holograms mod: lightweight, colors, image\GIF, leaderboards, interact, full GUI & Tools.
5.00 star(s) 4 ratings
13 purchases
Place waystones and fast travel across your world.
Not yet rated
2 purchases
Player Shops with NPC, Rent, Auctions
Not yet rated
3 purchases
Link multiple chests into one shared storage network with a controller and portable terminal.
5.00 star(s) 1 ratings
1 purchase
Dynamic multi-line nameplates with custom fonts, hex gradients, inline images, and full in-game GUIs
5.00 star(s) 1 ratings
0 purchases
220 Views
4 Downloads
Mar 11, 2026 Published
May 5, 2026 Updated
Not yet rated
37.1 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Protection
  1. Staff
  1. Core
Game mode
  1. Survival
  1. Skyblock
  1. Economy
Supported languages
  1. English
Creator
Owner
Lag-free, customizable servers ready in minutes.
Host your adventure today!
Recommended for you
The best holograms mod: lightweight, colors, image\GIF, leaderboards, interact, full GUI & Tools.
5.00 star(s) 4 ratings
13 purchases
Place waystones and fast travel across your world.
Not yet rated
2 purchases
Player Shops with NPC, Rent, Auctions
Not yet rated
3 purchases
Link multiple chests into one shared storage network with a controller and portable terminal.
5.00 star(s) 1 ratings
1 purchase
Dynamic multi-line nameplates with custom fonts, hex gradients, inline images, and full in-game GUIs
5.00 star(s) 1 ratings
0 purchases
Top