Changing how hidden players look
Out of the box, a hidden player is shown with a random name, a random skin, and everything else untouched: their armour, their hearts, their burning animation. This guide covers how to change each of those.
Everything lives under disguise in config.yml:
disguise: name: show: true value: random prefix: "&7Hidden " suffix: "" skin: random health: show: true color: ["&4"] show_armor: true show_nbts: true show_fire: true show_stuck_arrows: trueWhere the names and skins come from
Section titled “Where the names and skins come from”value: random and skin: random both mean the same thing: pick one at random from the pool called
default. Those pools are two separate files you can edit.
| File | Holds |
|---|---|
usernames.yml | The names a hidden player can be given. |
skins.yml | The skins they can be given. |
So the fastest way to change how your hidden players look is to edit the default pool in those two
files, and leave config.yml alone.
Use your own set of names
Section titled “Use your own set of names”Say you want medieval names for one event, and the usual ones everywhere else.
-
Add a second pool to
usernames.yml.usernames.yml usernames:default:- Steve- Alexmedieval:- Aldric- Bertrand- Guenievredefaultis the one used byrandom.medievalis yours, and the name of the pool is whatever you put there. -
Point the zone at it.
zones.yml zones:tournament:disguise:name:value: medieval -
Apply it.
/sh reload
Skins work exactly the same way, with pools in skins.yml and skin: medieval in the zone.
The four things you can write
Section titled “The four things you can write”name.value and skin accept the same four kinds of value. SomaHider works out which one you meant,
in this order:
| You write | You get |
|---|---|
random | A random pick from the default pool. |
medieval | A random pick from your medieval pool. |
%factionsuuid_faction_name% | The placeholder, resolved on the hidden player. |
Notch | Exactly that: the fixed name Notch, or for a skin, the skin of the player Notch. |
The order matters when names collide. A pool called Notch wins over the player called Notch, because
pools are checked first. And no pool can be called random, since that word is already taken.
Add something in front of the name
Section titled “Add something in front of the name”prefix and suffix go around the name and accept colour codes:
disguise: name: prefix: "&7Hidden " suffix: " &8[?]"Mind the spaces inside the quotes. "&7Hidden " has one at the end, which is what separates it from
the name.
Both accept placeholders too, including relational ones (%rel_...%) that give a different result for
each person looking. That is how you colour a name by whether the viewer is an ally or an enemy.
Hide more than just the name
Section titled “Hide more than just the name”A player can still be recognised by their gear, their hearts, or the enchanted sword they are holding. Five switches control that:
| Setting | Turn it off to |
|---|---|
name.show | Remove the nameplate entirely. |
health.show | Remove the hearts under the name. |
show_armor | Show the player as if they were wearing nothing. |
show_nbts | Strip item details, so a held item cannot be identified by its tags. |
show_fire | Hide the flames while they burn. |
show_stuck_arrows | Hide arrows stuck in their body. |
Turning show_nbts off is the one with a side effect: some plugins rely on item tags to render items
on the client. If yours does, list those tags in nbts.yml and they
survive the stripping.
Change the look for one zone only
Section titled “Change the look for one zone only”A zone repeats only the keys it wants to change. Everything it leaves out comes from config.yml:
zones: arena: world: events center: x: 1500 z: 1500 radius: 150 disguise: name: prefix: "&cArena " show_armor: falseThis zone keeps the global name pool, skins, hearts and effects. It changes the prefix and hides armour, nothing else.
Keep the same disguise all evening
Section titled “Keep the same disguise all evening”By default a player can be given a new name each time a zone starts. For a tournament, where people follow each other across several rounds, that is confusing. Turn it off:
persist_identity: trueA player now keeps the same name and skin for as long as they stay connected and the zone keeps running. Walking out of the zone and back in returns the same identity. Disconnecting gives a new one, and so does closing the zone.
Check what you changed
Section titled “Check what you changed”/sh info <zone> tells you whether the zone uses a disguise of its own or the one from config.yml.
That is how you confirm your override was read at all.
To see the result itself, start the zone and stand in it with a second account. A staff member holding
soma.hider.bypass can also toggle /sh bypass on and off to compare the two views without leaving
the zone.