Skip to Content
Configuration

Configuration

HackedServer uses TOML configuration files for all settings. After the first launch, configuration files are generated in the plugin’s data folder.

Configuration Files Overview

FilePurpose
config.tomlMain plugin settings
actions.tomlDefine what happens when clients are detected
generic.tomlConfigure client/mod detection rules
languages/english.tomlCustomizable messages

Main Configuration (config.toml)

[settings] # Name of a language file without extension, english.toml by default language = "english" # Enable logging of all CustomPayload packets for debugging purposes debug = false # If the same payload is sent twice, only the first triggers a check skip_duplicates = false

Settings

OptionTypeDefaultDescription
languagestring"english"Language file to use (without .toml extension)
debugbooleanfalseLog all custom payload packets for debugging
skip_duplicatesbooleanfalseSkip duplicate payload messages from same player

Enable debug mode to see all incoming custom payload packets in the console. This is helpful when adding custom checks.

Actions Configuration (actions.toml)

Actions define what happens when HackedServer detects a modified client. You can create multiple actions and reference them in your checks.

[alert] send_alert = "<red><player> <gray>just logged in using <red><name><gray> !" [alert.commands] console = [] player = [] opped_player = []

Action Properties

PropertyDescription
send_alertMessage sent to staff with hackedserver.alert permission
commands.consoleCommands executed as console
commands.playerCommands executed as the player
commands.opped_playerCommands executed as the player with OP permissions

Placeholders

Use these placeholders in alert messages and commands:

PlaceholderDescription
<player>The player’s name
<name>The detected client/mod name

Example: Kick and Alert

[kick_alert] send_alert = "<red><player> <gray>was kicked for using <red><name><gray>!" [kick_alert.commands] console = ["kick <player> Hacked clients are not allowed!"] player = [] opped_player = [] [silent_alert] send_alert = "<yellow><player> <gray>is using <yellow><name><gray> (no action taken)" [silent_alert.commands] console = [] player = [] opped_player = []

Generic Checks (generic.toml)

The generic checks file configures what clients and mods HackedServer detects. Each check monitors specific plugin message channels.

# Enable/disable all generic checks enabled = true [labymod_v3] actions = ["alert"] channels = ["labymod3:main"] name = "Labymod v3" [forge] actions = ["alert"] channels = ["MC|Brand", "minecraft:brand"] message_has = "forge" name = "Forge"

Check Properties

PropertyTypeRequiredDescription
namestringYesDisplay name shown in alerts
channelsarrayYesPlugin message channels to monitor
message_hasstringNoOnly trigger if message contains this text
actionsarrayYesList of action IDs to execute

Pre-configured Checks

HackedServer comes with detection for many popular clients and mods:

Hacked Clients:

  • Cracked Vape
  • Easy Minecraft Client
  • Winterware

PvP Clients:

  • Lunar Client
  • Badlion Client
  • Feather Client
  • PvPLounge Client
  • Hyperium

Utility Clients:

  • Labymod (v1, v2, v3)
  • 5zig Mod
  • Remix

Forge Mod Detection (forge.toml)

HackedServer can send a fake Forge handshake to retrieve the complete mod list from Forge clients.

# Enable forge mod list detection enabled = true [category] [category.whitelisted] color = "<green>" mods = [ "FML", "FORGE", "MCP", "MINECRAFT", "MERCURIUS_UPDATER", "BETTERFOLIAGE" ] [category.blacklisted] color = "<red>" mods = [ "FORGEWURST", "FORGEHAX", "WURST" ]

Mod Categories

CategoryColorPurpose
whitelistedGreenAllowed mods (shown but no action)
blacklistedRedBanned mods (trigger actions)

Forge mod detection works by emulating the Forge handshake protocol. This only works with Forge clients that properly implement the handshake.

Language Files (languages/*.toml)

Customize all plugin messages by editing the language file. The default is english.toml.

[general] prefix = "<gradient:#2F80ED:#FFCAC9>HackedServer <#282B3F>| " [logs] loaded = "<prefix><#55ffa4>Successfully enabled" debug_message = "<#93291E>HS-Debug <#282B3F>| <#facc43><player> <#b8bbc2>channel<#6f737d>: \"<#facc43><channel><#6f737d>\", <#b8bbc2>message<#6f737d>: \"<#facc43><message><#6f737d>\"" [commands] help = """ <prefix><#b8bbc2>Available commands <hover:show_text:\"<gray>fill reload command\"><click:SUGGEST_COMMAND:/hackedserver reload ><#6f737d>/hs \ <#b8bbc2>reload</click></hover> <#6f737d>»<#b8bbc2> reload the plugin<reset> <hover:show_text:\"<gray>fill give command\"><click:SUGGEST_COMMAND:/hackedserver check ><#6f737d>/hs \ <#b8bbc2>check <#43c9fa>target</click></hover> <#6f737d>»<#b8bbc2> check player detected mods<reset> <hover:show_text:\"<gray>fill list command\"><click:SUGGEST_COMMAND:/hackedserver list ><#6f737d>/hs \ <#b8bbc2>list</click></hover> <#6f737d>»<#b8bbc2> list all spotted players<reset> """ reload_success = "<prefix><#55ffa4>Successfully reloaded" check_no_mods = "<prefix><#55ffa4> No mods detected" check_mods = "<prefix><#55ffa4> Detected mods:" mod_list_format = "<#6f737d>- <#facc43><mod>" check_players = "<prefix><#55ffa4> Spotted players:" check_players_empty = "<prefix><#55ffa4> No chocolate players spotted" player_list_format = "<#6f737d>- <#facc43><player>"

MiniMessage Format

HackedServer uses MiniMessage  for rich text formatting. Supported features include:

  • Colors: <red>, <blue>, <#RRGGBB>
  • Gradients: <gradient:#color1:#color2>
  • Hover text: <hover:show_text:"text">
  • Click actions: <click:SUGGEST_COMMAND:/command>
  • Formatting: <bold>, <italic>, <reset>

Reloading Configuration

After editing any configuration file, use /hs reload to apply changes without restarting the server.

The reload command re-reads all TOML files and re-registers all players. This ensures changes take effect immediately.

Last updated on