Files
core-staff/docs/02_Configuration.md
T
2026-05-26 00:59:39 -04:00

2.2 KiB

Configuration

Location

<plugin data dir>/config.json. Written with defaults on first boot.

Full config

{
    "permissions": {
        "staff_groups": ["OP", "ADMIN", "MOD", "HELPER"],
        "admin_groups": ["OP", "ADMIN"]
    },
    "chat": {
        "channel": "staff.chat",
        "prefix": "[Staff]"
    },
    "tables": {
        "punishments": "staff_punishments",
        "players_seen": "staff_players_seen"
    }
}

Fields

permissions

Field Default Meaning
staff_groups ["OP", "ADMIN", "MOD", "HELPER"] Any Hytale group name in this list grants access to staff commands.
admin_groups ["OP", "ADMIN"] Subset that the plugin treats as "admin". v1 doesn't gate anything on this, but it's available for future features that want to require admin (e.g. unban after a permaban).

Group names come from PermissionsModule.get().getGroupsForUser(uuid). Set up your groups in the Hytale server's own configuration first; this plugin just reads them.

chat

Field Default Meaning
channel "staff.chat" MessageBus channel used for cross-server staff chat. Don't share this with other plugins.
prefix "[Staff]" Visual prefix on every staff chat line.

tables

Field Default Meaning
punishments "staff_punishments" Table name. Change only if you really need to and you're prepared to migrate data.
players_seen "staff_players_seen" Same.

Setting up staff groups

In your Hytale server config, define groups and assign players:

  1. Make sure the group names you assign match one of staff_groups exactly. The check is case-sensitive (groups in Hytale tend to be uppercase, e.g. OP).
  2. After assigning, the player needs to relog for the change to take effect (PermissionsModule.get().getGroupsForUser is queried on each command, but Hytale generally requires a reconnect for group changes to apply on the player side).
  3. Test with /lookup <staff-member-name> from a staff account. If you see the lookup output, you have staff perms.

Environment variables

None specific to Staff. The relevant secrets (MYSQL_PASSWORD, NETWORK_AUTH_TOKEN) live in NetworkCore's env.