SimpleAdmin/README.md
Astra dc5ad30952
Some checks are pending
Build and Publish / build (push) Waiting to run
Build and Publish / publish (push) Blocked by required conditions
zio fork 1.8.2b-zio15: in-game gags/mutes/silences expire with TimeMode 0
The in-memory penalty was only cleared when its end time exactly matched the
database row's, which never happens for one given in game (sub-second vs
to-the-second), so it lasted until reconnect. Match by type within 5 seconds,
and stop applying a penalty as soon as it's marked passed.
2026-10-03 00:15:03 +01:00

8.2 KiB

zio.sh fork

This is zio.sh's fork of CS2-SimpleAdmin 1.8.2b (upstream is daffyyyy/CS2-SimpleAdmin, branched from the build-1.8.2b tag). Changes, all marked zio: in the code:

  • A gagged or silenced player can still send @message in team chat to reach online staff.
  • The gag/silence chat message says how long is left (or that it's permanent) and the reason, in place of "Your chat is blocked to: ". New lang keys sa_player_penalty_gag_active, ..._gag_active_perm, ..._silence_active, ..._silence_active_perm and sa_player_penalty_no_reason, in lang/en.json only (other languages fall back to it).
  • Moving to spectators doesn't unhide a hidden admin; only joining T or CT does.
  • A banned player is let in long enough to be told the reason and time left, then kicked after KickTime, instead of seeing only "Your client is not allowed to join this server".
  • New permission @css/bypassipban, for players or groups: IP bans, and bans on other accounts that share their IP, don't apply to them; a ban on their own SteamID still does. @css/root has it, as it has every @css flag.
  • Staff chat shows the sender's rank, from their highest #rank/... group (O, S.Admin, Admin, T.Admin, Mod, T.Mod, Helper, Guardian, the same as CS2-Tags' chat prefixes): @message in team chat and css_asay read >[STAFF][RANK] name: message, and @message in all chat and css_say from a player read [RANK] name: message (name: message if they have no rank group). A non-staff player's @message in team chat reads >[STAFF] name: message, all in purple. Console's css_say/css_asay are unchanged. New lang keys sa_staffchat_template, sa_staffsay_template, their _norank variants and sa_staffchat_template_player, in lang/en.json only.
  • css_psay from a player reads (PM) [RANK] name: message ((PM) name: message without a rank group); console's is unchanged. Lang keys sa_psay_template and sa_psay_template_norank.
  • admin_overrides.json reaches the admin menu too: every player and server entry names its command, and an overridden entry is checked with the override's check_type (any passes with one flag), as CSS checks the typed command. Upstream required every flag in the override.
  • css_penalties <player> (someone else's penalties) needs @zio/penalties or @css/root instead of @css/kick.
  • css_addadmin, css_deladmin and the admin menu's add/remove log rank changes (the player's highest-immunity group, and who changed it) to sa_rank_log, the table simpleadmin-web creates and lists as the public promotions/demotions log. If the table is missing, it warns once in the log and the admin change goes ahead.
  • With TimeMode 0 (online time only), a gag, mute or silence given in game now ends when its database row expires. Upstream matched the two by exact end time, which never matched for one given in game (the database stores the time to the second), so it lasted until the player reconnected. A penalty marked passed also stops applying at once, not on the next 61-second tick.

Publish with FORGEJO_TOKEN=... ./release.sh v<ModuleVersion> (ModuleVersion is 1.8.2b-zioN). It rebuilds from the committed source and uploads SimpleAdmin-<tag>.tar.gz to git.zio.sh (cs2/SimpleAdmin), laid out like game/csgo/. It holds the whole plugin (its libraries, all lang files and migrations) and shared/CS2-SimpleAdminApi, as upstream's own release does, so nothing from upstream needs installing first. It leaves out the optional FunCommands and StealthModule modules and configs/. The NickFox007 dependencies (AnyBaseLib, PlayerSettings, MenuManager) aren't in it either; the server's pre.sh installs them from their own releases.


Build and Publish GitHub Release Made with a lot of tea 🍵

Join the support Discord

CS2-SimpleAdmin


Manage your Counter-Strike 2 server with simple commands!
CS2-SimpleAdmin is a plugin designed to help you easily manage your Counter-Strike 2 server with user-friendly commands. Whether you're banning players, managing teams, or configuring server settings, CS2-SimpleAdmin has you covered.


🚀 Features

  • 🎮 Simple, Intuitive Commands: Manage players, teams, bans, and server settings using an easy command system.
  • 🗄 Full Database Integration: Reliable MySQL backend with optional experimental SQLite support for persistent data storage.
  • ⚡ Efficient and Lightweight: Designed to minimize server resource usage while maintaining robust functionality.
  • 🚨 Real-time Notifications: Instant in-game and Discord notifications to keep admins and players informed.
  • 🎛 User-Friendly Admin Interface: Plugin menus for quick and efficient management without complex commands.
  • 🔄 Multi-Server Compatibility: Manage and sync data across multiple servers seamlessly.
  • 🧩 Modular and Extensible: Tailor the plugin with API access to add custom commands and automation.
  • 📜 Complete Auditing Logs: Track all administrative actions rigorously for accountability.
  • 🌐 Discord Integration: Stream logs and alerts to your Discord channels for centralized monitoring.
  • 🤝 Community Driven: Open-source with ongoing contributions from a passionate community.

⚙️ Requirements

Ensure all the following dependencies are installed before proceeding


🚀 Getting Started

  1. Clone or Download the Repository:
    Download or clone the repository and publish to your addons/counterstrikesharp/plugins/ directory.

  2. First Launch Configuration:
    On the first launch, a configuration file will be generated at:

    addons/counterstrikesharp/configs/plugins/CS2-SimpleAdmin/CS2-SimpleAdmin.json
    

    Edit this file to customize the plugin settings according to your server needs.

  3. Enjoy Managing Your Server!
    Use the commands provided by the plugin to easily manage your server.


📁 Configuration

The configuration file (CS2-SimpleAdmin.json) will be auto-generated after the first launch. It contains settings for MySQL connections, command permissions, and other plugin-specific configurations.


📚 Documentation & Support

Access full documentation, guides, tutorials, and developer API references here:
CS2-SimpleAdmin Wiki


🛠️ Development

This project started as a base for other plugins but has grown into a standalone admin management tool. Contributions are welcome! If you'd like to help with development or have ideas for new features, feel free to submit a pull request or open an issue.


🤝 Contributing & Feedback

Help improve CS2-SimpleAdmin by:

  • Reporting bugs or requesting features on GitHub
  • Submitting pull requests with improvements
  • Participating in discussions and sharing ideas

💡 Credits

This project is inspired by the work of Hackmastr. Thanks for laying the groundwork!


☕ Support Development

If you find CS2-SimpleAdmin useful, consider supporting the ongoing development:
Buy me a coffee


📄 License

This project is licensed under the GPL-3.0 license - see the LICENSE file for details.