⚠️ Important: Other admin or report/calladmin plugins can conflict. Avoid duplicate!report/!calladminstacks. Bans, mutes, gags, and silences require MySQL — without it those features will not load.
Admin plugin for Counter-Strike 2 with bans, menus, votes, fun commands, communication control, and optional reservation. Steam / IP bans and mute / gag / silence are stored in MySQL; admins, Discord, chat tags, and languages use JSON files (same style as classic AdminPlus, with a database backend). Built to pair with an advanced web panel (coming later) on the same MySQL database.
- 🔨 Ban system: SteamID & IP bans (temporary / permanent) in MySQL
- 💬 Communication: Mute, gag, silence in MySQL (
ap_communication) - 👥 Admin management:
admins.json/ groups, immunity, reload - 🗳️ Voting: Map, kick, ban, mute, gag, silence, custom votes
- 🎮 Menus: Built-in admin menu
- 🎯 Fun commands: Teleport, freeze, blind, drug, etc.
- 📢 Chat commands: asay, csay, hsay, psay
- 📊 Reports: Menu-driven report / calladmin flow + Discord
- 🌍 Languages:
lang/*.json(e.g. en, tr, fr, de, ru, pl, pt-BR) - 🔗 Discord: Direct webhooks (ban, admin actions, comms, status, connections, chat, reports)
- 📝 Logging: Daily files under
counterstrikesharp/logs/(log-AdminPlus-*.log)
- CounterStrikeSharp (API 78+)
- Metamod:Source
- MySQL or MariaDB reachable from the game server
- Copy the
AdminPlusMYSQLfolder tocsgo/addons/counterstrikesharp/plugins/AdminPlusMYSQL/ - Ensure
lang/andtags.jsonsit besideAdminPlusMYSQL.dll - Add
adminplus-mysql.json— see Configuration - Optionally add
adminplus-discord.jsonfor Discord - Restart the server or reload plugins
On first successful DB connection, tables ap_bans, ap_communication, and ap_settings are created if missing.
MySQL (required for bans & communication punishments):
csgo/addons/counterstrikesharp/plugins/AdminPlusMYSQL/adminplus-mysql.json
orcsgo/addons/counterstrikesharp/configs/adminplus-mysql.json
{
"host": "127.0.0.1",
"port": 3306,
"database": "your_database",
"username": "your_user",
"password": "your_password"
}Other files:
csgo/addons/counterstrikesharp/configs/admins.json— admin permissions (CounterStrikeSharp)csgo/addons/counterstrikesharp/configs/admin_groups.json— groups / flagscsgo/addons/counterstrikesharp/plugins/AdminPlusMYSQL/adminplus-discord.json— Discord webhookscsgo/addons/counterstrikesharp/plugins/AdminPlusMYSQL/tags.json— chat tags / clan tags
In-game chat uses the same commands with a chat trigger (e.g. !ban, !mute). Console / RCON use the css_ names below.
css_ban <target> [duration] [reason] # Ban player; duration in minutes, 0 = permanent [@css/ban]
css_ipban <target> [minutes] [reason] # IP ban [@css/ban]
css_unban <steamid/ip> # Remove ban [@css/unban]
css_lastban # Recently disconnected players (for ban) [@css/ban]
css_baninfo <steamid/ip> # Ban info [@css/ban]
css_cleanbans # Clear all bans [@css/root]
css_cleanipbans # Clear all IP bans [@css/root]
css_cleansteambans # Clear all SteamID bans [@css/root]
css_banlist # Ban list menu [@css/ban]
css_addadmin <steamid64> <group> <immunity> # Add admin [@css/root]
css_removeadmin <steamid64> # Remove admin [@css/root]
css_adminlist # List admins from file [@css/root]
css_admins # Online admins [All players]
css_version # Plugin version [All players]
css_report # Open report menu (pick player + reason) [All players]
css_calladmin # Same flow / call admin [All players]
css_mute <target> [duration] [reason] # Mute voice [@css/chat]
css_unmute <target> # Unmute [@css/chat]
css_gag <target> [duration] [reason] # Gag chat [@css/chat]
css_ungag <target> # Ungag [@css/chat]
css_silence <target> [duration] [reason] # Mute + gag [@css/chat]
css_unsilence <target> # Remove mute + gag [@css/chat]
css_mutelist # Active mutes [@css/chat]
css_gaglist # Active gags [@css/chat]
css_cleanall # Clear all comm punishments [@css/root]
css_cleanmute # Clear all mutes [@css/root]
css_cleangag # Clear all gags [@css/root]
css_kick <target> [reason] # Kick [@css/generic]
css_slay <target> # Slay [@css/slay]
css_slap <target> [damage] # Slap [@css/slay]
css_rename <target> <new_name> # Rename [@css/slay]
css_money <target> <amount> # Set money [@css/slay]
css_armor <target> <amount> # Set armor [@css/slay]
css_team <target> <t/ct/spec> # Change team [@css/kick]
css_swap <target> # Swap to opposite team [@css/kick]
css_freeze <target> [seconds] # Freeze [@css/slay]
css_unfreeze <target> # Unfreeze [@css/slay]
css_beacon <target> <0|1> # Beacon [@css/slay]
css_blind <target> <seconds> # Blind [@css/slay]
css_unblind <target> # Unblind [@css/slay]
css_drug <target> <seconds> # Drug effect [@css/slay]
css_undrug <target> # Remove drug [@css/slay]
css_shake <target> <seconds> # Shake [@css/slay]
css_unshake <target> # Stop shake [@css/slay]
css_glow <target> <color> # Glow [@css/slay]
css_color <target> <color> # Player color [@css/slay]
css_bury <target> # Bury [@css/slay]
css_unbury <target> # Unbury [@css/slay]
css_gravity <value> # Server gravity [@css/slay]
css_clean # Clean weapons on ground [@css/slay]
css_goto <target> # Teleport to player [@css/slay]
css_bring <target> # Bring player [@css/slay]
css_hrespawn <target> # Respawn at last death pos [@css/slay]
css_respawn <target> # Respawn [@css/cheats]
css_noclip <target> <0|1> # Noclip [@css/cheats]
css_god <target> <0|1> # God mode [@css/cheats]
css_speed <target> <multiplier> # Speed [@css/cheats]
css_unspeed <target> # Reset speed [@css/cheats]
css_hp <target> <health> # Health [@css/cheats]
css_sethp <team> <health> # Team default HP [@css/cheats]
css_weapon <target> <weapon> # Give weapon [@css/cheats]
css_strip <target> [filter] # Strip weapons [@css/cheats]
css_map <map> # Change map [@css/generic]
css_wsmap <workshop_id> # Workshop map [@css/generic]
css_rcon <command> # RCON [@css/root]
css_cvar <cvar> [value] # Get/set cvar [@css/generic]
css_who <nick/steamid> # Player info [@css/generic]
css_rr # Restart round [@css/generic]
css_players # List players (console) [@css/root]
css_discord_status # Push server status to Discord [@css/root]
css_asay <message> # Admin-only chat [@css/chat]
css_csay <message> # Center message [@css/chat]
css_hsay <message> # HUD message [@css/chat]
css_psay <target> <message> # Private message [@css/chat]
css_say <message> # Say to all [@css/chat]
css_vote <question> <option1> <option2> [options...] # Custom vote [@css/generic]
css_votemap <map1> <map2> [maps...] # Map vote [@css/generic]
css_votekick <target> # Kick vote [@css/generic]
css_voteban <target> # Ban vote [@css/generic]
css_votemute <target> # Mute vote [@css/generic]
css_votegag <target> # Gag vote [@css/generic]
css_votesilence <target> # Silence vote [@css/generic]
css_rvote # Revote [players]
css_cancelvote # Cancel vote [@css/generic]
css_admin # Admin menu [@css/ban]
css_adminmenu # Same [@css/ban]
css_adminhelp # Detailed command help [@css/generic]
Create csgo/addons/counterstrikesharp/plugins/AdminPlusMYSQL/adminplus-discord.json:
{
"discordWebhooks": {
"banWebhook": "https://discord.com/api/webhooks/...",
"adminActionsWebhook": "https://discord.com/api/webhooks/...",
"communicationWebhook": "https://discord.com/api/webhooks/...",
"serverStatusWebhook": "https://discord.com/api/webhooks/...",
"connectionLogsWebhook": "https://discord.com/api/webhooks/...",
"chatLogsWebhook": "https://discord.com/api/webhooks/...",
"reportAndCalladminWebhook": "https://discord.com/api/webhooks/...",
"reportAndCalladminWebhookMentionUserId": "@everyone",
"serverAddress": "your-ip:port"
}
}Webhooks are created in Discord under Channel settings → Integrations → Webhooks.
Uses CounterStrikeSharp groups and flags, for example:
@css/root— full access@css/ban— ban commands@css/chat— mute / gag / silence@css/generic— kick, map, votes, etc.@css/slay— slap, slay, fun commands@css/kick— team / swap@css/cheats— noclip, god, weapons, hp, speed@css/unban— unban@css/reservation— reservation features (if enabled)
Admin actions are written to daily files: csgo/addons/counterstrikesharp/logs/log-AdminPlus-*.log
- Initial AdminPlusMYSQL release: bans and communication data in MySQL (
ap_bans,ap_communication,ap_settings) - Discord: direct webhook HTTPS posts
- Targets .NET 8 and CounterStrikeSharp API 78+
AdminPlusMYSQL — CS2 administration with MySQL-backed moderation data.