Hytale Server Admin: OP, Permissions, Whitelist and Bans

Published on

Make yourself OP on a Hytale server from the console, then set up permission groups, the whitelist, kicks, bans and PvP with commands checked on server 0.7.5.

Three Hytale characters next to a wooden village notice board covered in pinned notes

Your Hytale server runs and your friends can join, but nobody can use admin commands yet, you included. If you typed /op self in chat, you probably got a tip instead of operator rights. This guide covers the admin basics in the order you need them: making yourself operator, giving other players a role, closing the server with a whitelist, kicking and banning, and switching PvP on per world.

Hypixel's Hytale Server Manual names the files involved (permissions.json, whitelist.json, bans.json) and the --allow-op launch argument, but it does not list the admin commands. Every command below comes from Hypixel's server API reference for version 0.7.4 and was checked against server 0.7.5, which Hypixel's Maven repository lists as the current release since 29 October 2026. If a command answers with a usage error after a later update, run /help in the server console: since Update 6 it prints every command with its usage.

Quick answer: To make yourself OP on a Hytale server, join it and type /op add YourName in the server console. That puts you in the hytale:Admin group, which holds every permission. In game, /op self only works when the server was started with --allow-op. Turn the whitelist on with /whitelist enable and let players in with /whitelist add <name>. /kick <name> disconnects a player, /ban <name> <reason> keeps them out until you run /unban <name>, and /world config pvp true switches PvP on in the world you are in.

How to make yourself OP on a Hytale server

Operator on Hytale means a place in the hytale:Admin group. That group holds the * permission, so its members can run every command, in the console or in chat. There are three ways in.

From the console. Join the server, then type this in the server console. On a rented server you usually find the console in the host's web panel.

/op add YourName

A name only works while that player is online. For a player who is offline, use their UUID: every player can see their own with /whoami (short: /uuid), and /whoami <name> in the console shows it for anyone online. /op remove <name or UUID> takes the rights away again. The two commands check the permissions hytale.command.op.add and hytale.command.op.remove, so out of the box only operators and the console can use them.

With /op self. In game, /op self toggles your own operator rights, but on a dedicated server it only does so when the server was started with --allow-op. Without that argument it replies with a tip that points to the UUID command, permissions.json and the launch argument. Hypixel's API reference calls the option "Intended for devs and cowboy server admins", and for a reason: /op self needs no permission, so while the argument is on, any player who joins can make themselves operator. If you use it anyway, do it before you share the server's address, run /op self once (a second run removes you again), then remove the argument and restart. The official start scripts pass extra arguments on to the server, so ./start.sh --allow-op or start.bat --allow-op is enough. In a singleplayer world, only the world's owner can use /op self, and no argument is needed.

By editing permissions.json. Stop the server, add your UUID under users with the hytale:Admin group, and start it again:

{
  "users": {
    "00000000-0000-0000-0000-000000000000": {
      "groups": ["hytale:Admin"]
    }
  }
}

Replace the zeros with your UUID, and if the file already has a users block, add your entry inside it. Stop the server first: the manual says configuration files are read on startup and written when in-game actions change them, so "Manual changes while the server is running are likely to be overwritten." Older guides use the group name OP, which the server still reads as hytale:Admin.

Hytale permissions: groups and nodes

Update 5 (26 May 2026) untied permissions from game modes: "You can give friends a role based on the permissions you want them to have, instead of having to '/op' them." The server ships six built-in groups, and each one inherits everything from the group in the row above it:

GroupInherits fromAdds, for example
hytale:None(start of the chain)No permissions
hytale:Adventurerhytale:NoneThe default for every player: /who, /whoami, teleporting to map markers
hytale:Builderhytale:AdventurerFly camera and no-clip
hytale:WorldEditorhytale:BuilderBuilder tools, brushes, prefabs, selections, edit history, teleporting to map coordinates
hytale:ServerEditorhytale:WorldEditorThe Asset Editor and asset packs
hytale:Adminhytale:ServerEditor*, every permission

To give a player a role:

/setgroup Builder Alex
/perm user group add <uuid> hytale:Builder
/perm user group remove <uuid> hytale:Builder
/perm user group list <uuid>

/setgroup takes a group name such as Builder and an online player, and replaces all of that player's groups with the one you name. On an operator, that removes their operator rights. The /perm user group commands add or remove one group and keep the rest. They take a UUID instead of a name, and the full group name with hytale: in front, because they store the name exactly as you type it.

For single permissions, called nodes:

/perm user add <uuid> <node>
/perm user remove <uuid> <node>
/perm group add <group> <node>
/perm group remove <group> <node>

A moderator who may kick but should not be an operator gets /perm user add <uuid> hytale.system.command.kick. Don't guess other node names: /perm list --all --console writes every registered node to the server console. /perm list on its own shows your own groups and effective permissions, and /perm test <node> tells you whether you hold a node.

The API reference documents how the server decides:

  • * grants every node and -* denies every node.
  • A minus sign in front of a node denies it, and within one level a denial beats a grant.
  • The server checks the player's own nodes first, then their groups, then the groups those inherit from, and stops at the first level that grants or denies. A node that a player holds personally therefore wins over what their group says.

If you edit permissions.json while the server runs, load it straight away with /perm reload, which reads the file again without a restart. Otherwise your edit is likely to be overwritten, as the manual warns.

How to enable the whitelist on a Hytale server

Since Update 6 (27 August 2026), the whitelist is a permission: "The whitelist now runs on the hytale.server.join permission, and the whitelist commands grant and revoke it." An existing whitelist.json was migrated at that point and renamed to whitelist.json.migrated.

/whitelist add Alex
/whitelist enable
/whitelist status
/whitelist remove Alex
/whitelist list
/whitelist disable
/whitelist clear
  • /whitelist enable (or on) makes the server refuse every player without hytale.server.join and saves "RequireJoinPermission": true in config.json. /whitelist disable (or off) switches it back. Neither works in a singleplayer world.
  • No built-in group holds hytale.server.join, so add your players before you switch the whitelist on. Operators always get in, because hytale:Admin holds every permission.
  • /whitelist add and /whitelist remove take a name or a UUID, and the player does not have to be online: the server looks the name up through Hypixel's profile service.
  • /whitelist remove warns you when the player can still join through a group or a wildcard, for example because they are an operator.
  • /whitelist list shows the UUIDs when 10 or fewer players are on it, and only the count above that. Players who can join through a group are not listed.
  • /whitelist clear takes the personal join permission away from everyone on the list.

You can also let a whole group in, for example with /perm group add hytale:Builder hytale.server.join. Never give that node to hytale:Adventurer: every player starts in that group, so the whitelist would let everyone in.

Kick and ban players

/who
/kick Alex
/ban Alex Griefing the spawn
/unban Alex
  • /who lists who is online in each world, so you have the exact name. Every player can use it.
  • /kick takes only the player, no reason. The player sees the server's own kick message on the disconnect screen, which Update 6 started showing in place of a generic error.
  • /ban takes a name or a UUID, and everything after the name becomes the reason, or "No reason." if you leave it out. A player who is online is disconnected at once. The built-in ban has no duration: it lasts until /unban. Bans are kept in bans.json, and /ban and /unban don't work in singleplayer worlds.
  • Since Chapter I (Update 7, 12 October 2026), "Bans and kicks now close every connection an account has open, including Asset Editor connections that previously remained connected", according to the modder-facing notes.

Plugins can take over bans: Update 6 added the BanProvider and BanStorageProvider interfaces and a BanStorage block in the server configuration.

Turn PvP on or off per world

PvP is a setting of each world, not of the whole server, and the manual's example world config has "IsPvpEnabled": false. To change it in game:

/world config pvp true
/world config pvp false

The command changes the world you are in and saves the change to that world's config. From the console, name the world: /world config pvp true --world <name>, where /world list shows the names. You can also stop the server, set "IsPvpEnabled": true in universe/worlds/<world>/config.json, and start it again.

Two Chapter I changes matter here. "In areas where PvP is disabled, player attacks will no longer knock other players backwards." And worlds you reach through Portal Devices now follow the PvP and fall damage settings chosen when the original world was created.

Back up the admin files before an update

Your admin setup lives in a few files in the server folder: permissions.json (operators, groups, personal nodes and, since Update 6, the whitelist), bans.json, config.json with RequireJoinPermission, and the config.json of each world for PvP. The built-in updater backs up config.json, permissions.json, bans.json and whitelist.json before it applies an update (BackupConfigBeforeUpdate, on by default), but keep a copy of your own. Update 8, on the pre-release patchline since 22 October, changes how permissions.json is stored, and one of its fixes reads: "The permissions migration from version 0 to version 1 no longer locks players out." Our Chapter I server guide has the full update checklist.

On our Hytale server hosting you get full access to the server files, so you can open, edit and copy all of these yourself. Still choosing where to run the server? Our Hytale hosting comparison and RAM guide cover that part.

FAQ

How do I make myself admin on my Hytale server? Join the server and run /op add YourName in the server console. That adds you to hytale:Admin, the group with every permission. If you are not online at that moment, use your UUID, which /whoami shows you in game.

How do I add an admin to my Hytale server? Run /op add <name> in the console while that player is online, or /op add <UUID> when they are not. For a helper who only needs the builder tools, use /setgroup WorldEditor <name> instead.

Why does /op self not work on my Hytale server? On a dedicated server, /op self only works when the server was started with --allow-op, and otherwise shows a tip. Use /op add in the console instead: while --allow-op is on, any player can make themselves operator.

How do I whitelist players on a Hytale server? Run /whitelist add <name> for each player, then /whitelist enable. Operators always get in, and /whitelist status shows whether the whitelist is on.

How do I turn on PvP on a Hytale server? Run /world config pvp true in the world you want, or set "IsPvpEnabled": true in that world's config.json while the server is stopped. Each world has its own setting.

Can I ban a Hytale player for a set time? Not with the built-in command. /ban has no duration, so a ban lasts until you run /unban <name>. Plugins can replace ban handling through Hypixel's BanProvider interface.

Sources

All opened on 1 November 2026: