# AdminStealth A companion to CS2-SimpleAdmin's `css_hide` (`!hide`, `@css/kick`). SimpleAdmin's hide moves the admin off the scoreboard. This plugin makes it look like they left the server: - When an admin hides, every other player gets a `player_disconnect` event for them, sent to each client only. The server and other plugins never see it, so the admin stays connected. - While an admin is hidden, their team changes, their death and their real disconnect are not broadcast to clients. - `status` from a player's console is blocked and prints nothing. It still works from the server console and RCON. WebPanelBridge leaves hidden admins out of `css_webpanel_status`, so simpleadmin-web doesn't show them either. Built for CounterStrikeSharp **1.0.375** (`net10.0`) on Metamod:Source 2.0.0.1469, and needs CS2-SimpleAdmin 1.8.2b's shared API (`CS2-SimpleAdminApi`). `lib/CS2-SimpleAdminApi.dll` is a compile-time copy of the server's `shared/` one and isn't shipped. Without SimpleAdmin loaded, only the `status` block works. ## Limits - Hiding still lasts only as long as SimpleAdmin remembers it: a map change or reconnect makes the admin visible again, and joining a team unhides them. - Unhiding doesn't announce the admin as joining again. - The server browser and trackers get the player list from a separate server query, which this doesn't touch, so they still list a hidden admin. ## Install Build with `cd plugins/AdminStealth && ../../build.sh`. Then copy the contents of `compiled/AdminStealth/` to `game/csgo/addons/counterstrikesharp/plugins/AdminStealth/` on the server. Or install a release, which unpacks into `game/csgo/`: ``` tar -xzf AdminStealth-.tar.gz -C /srv/cs2/game/csgo ``` To publish one, commit, bump `ModuleVersion`, then run `FORGEJO_TOKEN=... ./release.sh v`. It rebuilds the plugin from the committed source in the SDK container, tags HEAD, and uploads `AdminStealth-.tar.gz` to the git.zio.sh release. The plugin has no config.