Commands
The command is /somahider, and /sh is built in as a shorter form. You can add more names with
aliases in config.yml.
Everything is tab completed with what makes sense at that position: your zone ids, the zones currently
running, the captured line numbers. Arguments in <angle brackets> are required, those in
[square brackets] are not.
| Command | What it does | Permission |
|---|---|---|
/sh create <id> <radius> [x] [z] [world] | Defines a zone | soma.hider.admin |
/sh delete <id> | Removes a definition | soma.hider.admin |
/sh start <id> [duration] | Starts a zone | soma.hider.operate |
/sh stop [id] | Stops one zone, or all of them | soma.hider.operate |
/sh temp <radius> [name] | Opens a zone here, without defining it | soma.hider.operate |
/sh list | Lists your zones and what is running | soma.hider.operate |
/sh info <id> | Shows one zone in detail | soma.hider.operate |
/sh capture [action] | Turns a chat message into a trigger | soma.hider.operate |
/sh bypass | See real identities, for yourself | soma.hider.bypass |
/sh reload | Rereads the configuration files | soma.hider.reload |
create
Section titled “create”Writes a new zone to zones.yml.
Run by a player without coordinates, it centres the zone on where they stand. From the console there
is no position to take, so x, z and world all become required:
/sh create arena 150 1500 1500 eventsThe radius goes from 1 to 512 blocks. The id takes 1 to 32 characters from a-z, 0-9, _ and -,
and cannot be only digits. The zone is created stopped.
Without duration, the run lasts the zone’s own duration, or until stopped if it has none. With
one, that value is used instead. Either way the ceiling still applies, as explained in
zones.yml.
When a zone refuses to start, the command says which of these it was: unknown id, already running, name taken by another running zone, or world not loaded.
With an id, stops that zone. Without one, stops everything currently running, including temporary zones.
Opens a zone around you immediately, without writing anything to zones.yml. It is what you want for
an event nobody planned.
/sh temp 80Without a name it gets a generated one such as zone1, which /sh list will show. Pass one to choose
it yourself, as long as it does not collide with a zone that already exists.
A temporary zone is never saved, so it is gone after a restart.
Shows what SomaHider actually read for one zone: the position, the time left, the players inside, and the schedule, triggers and reveal rules that survived parsing. A setting missing from that output was rejected, and the log says why.
Reach for it whenever a zone does not behave the way you expected.
capture
Section titled “capture”Listens to chat and turns a message into a trigger. The full walkthrough is in starting a zone from a chat message.
| Form | Does |
|---|---|
/sh capture | Listens for 60 seconds, numbering every message. |
/sh capture stop | Ends the window early. |
/sh capture list | Prints what was caught. In game each line is clickable. |
/sh capture use <line> <zone> <field> | Writes that line into the zone. <field> is start or stop. |
use tells you when it overwrote an existing pattern, and refuses zones with always_on: true since
those ignore triggers.
bypass
Section titled “bypass”Toggles seeing real identities in every zone, for the player who runs it. The setting is saved, so it survives a reconnect. Player only.
Anyone holding soma.hider.bypass can identify every player a zone is protecting, so keep it to staff
who moderate.
reload
Section titled “reload”Applies your file edits without restarting. A running zone whose position, radius, reveal rules or disguise changed is restarted with the new definition and keeps the time it had left. A running zone whose definition you deleted is stopped.