- Server settings > Console sends a raw console command for staff with @css/rcon
(POST /api/admin/rcon). It doesn't wait for the server; the output is only logged.
- Staff & ranks and Server settings panels fold up by clicking their heads. All but
Ranks and Server start folded; a folded Ranks panel shows the selected rank.
- The Members panel has an Add button that opens Add staff with that rank picked.
- The public rank log shows a rank being given as Promoted and taken away as Demoted.
Root sets GroupVerify's clan_tag (the scoreboard tag CS2-Tags gives verified players without a
rank) next to the Steam group. Validated like the plugin (12 UTF-16 units, no quotes, ; or \),
saved to gv_settings and sent as css_gv_clantag when the plugin is loaded. Only changed fields
are sent.
GroupVerify 0.3.0 checks players with the Steam Web API as they join, so the group list is now
"Confirmed group members" with first/last confirmed dates.
Shown only where GroupVerify is: staff get the Verification page once its gv_* tables are in
the database, and the public site shows "Verified" only while it's on (enabled, with a group)
and not missing from css_plugins list, which the poller reads once a minute over RCON.
- Verification page: plugin state and version, Steam group, saved member list, overrides.
- Overrides (@zio/verify, not on yourself unless Root): give, change, remove; player drawer
shows why a player is or isn't verified.
- Root sets the group and turns it on/off: saved to gv_settings, and sent as css_gv_* when the
plugin is loaded so it applies at once.
- gv_* times use GroupVerify's own timezone setting.
- MySQL integration test (SAW_TEST_DSN), unit tests for plugin list parsing and the show rule.
Staff without @zio/webpanel (or @css/root) no longer see the page: the API refuses it and the
panel leaves it out of the sidebar. The flag is offered in the rank editor.
The rank editor only listed @css/... flags, so a @zio/ flag showed up only on a rank that
already held it and couldn't be added to others. List the flags admin_overrides.json uses, plus
@zio/penalties from our SimpleAdmin fork.
SimpleAdmin upserts sa_players_ips on (steamid, address), so a rename on
the same IP overwrites the old name. sql/players-ips-name-history.sql adds
name to the primary key (binary collation, NOT NULL), so every name a
SteamID joins with is kept and shows on its player page and in name
search. SimpleAdmin's IP cache keeps only the newest row per IP, so its
multi-account and IP-ban checks are unchanged. The file includes a revert.