Immortal security tools
MadROM ships with a collection of administrative safeguards that help immortals monitor problem players and protect the world. These features live primarily in src/interp.c
, src/act_wiz.c
, and supporting modules.
Command logging
Each command entry contains a logging mode that the interpreter enforces before the handler runs. Entries marked LOG_ALWAYS
, characters flagged with PLR_LOG
, or a server with the global fLogAll
switch enabled will generate wiznet announcements and entries in the immortal log (src/interp.c
). Immortals toggle targeted logging with the log
command in src/act_wiz.c
, which either flips PLR_LOG
on a victim or turns the global fLogAll
mode on and off.
Deny command
The deny
command in src/act_wiz.c
sets the PLR_DENY
flag on a character, saves them, and forces an immediate quit. During login the descriptor code in src/comm.c
refuses connections from any player whose saved data carries PLR_DENY
, ensuring they cannot re-enter the game until an implementer clears the flag manually.
Ban command
Use the ban
command to block incoming connections from a host. The handler delegates to ban_site
in src/ban.c
, which records the address and optional permanence flag. Subsequent logins check the ban list and disconnect players whose host matches an entry unless they have been explicitly permitted.
Snoop
Immortals can observe player sessions with the snoop
command (src/act_wiz.c
). Entering a player name attaches your descriptor to theirs so every command they enter is echoed to you; snooping yourself clears all active snoops. The implementation prevents snoop loops and respects trust levels so lower-ranked immortals cannot watch higher-ranked staff.
Wizard invisibility
The invis
command toggles the PLR_WIZINVIS
flag (src/act_wiz.c
). While active, the character's invis_level
is set to their trust (or a supplied value), movement messages suppress entry and exit echoes for mortals (src/act_move.c
), and their presence is hidden from standard look
output. Toggling the flag again fades the immortal back into view.