






ILLUSION SQL GAG SYSTEM v1.0
Author: illusion @ eSportsDesigns.com
Plugin: AMX Mod X for Counter-Strike 1.6
🎯 OVERVIEW
Advanced MySQL-based gag system with strong anti-bypass protection and full configuration control.
✨ FEATURES
- Gag Types: Chat, Voice, or Both
- Flexible Duration: Minutes-based or permanent gags
- Custom Reasons: Fully configurable via INI file
- Bad Word Filter: Automatic gagging for forbidden words
- Logging System: Detailed logs of all gag events
- Anti-Bypass: Triple-identifier verification (SteamID + IP + Name)
- Round-Based Sync: Automatically detects gag changes (add/edit/remove) from database
- Direct Command Interface: Quick gagging with
amx_gag
command
- HUD Notifications: Real-time gag status display
- Sound Effects: Configurable sounds for gag events
- Professional Menus: Colored admin interface
🚀 INSTALLATION
- Upload
GagSystemNew_Config.amxx
to plugins/
folder
- Add to
plugins.ini
- Create MySQL database
- Edit
configs/gagsystem.ini
with your database settings
- Restart server
⚙️ CONFIGURATION
Auto-generates gagsystem.ini
with sections:
- Database: MySQL connection settings
- Logs: Event logging configuration (
LOGS_ENABLED = 1
, LOGS_FILE = gagsystem.log
)
- Menu: Interface customization
- Reasons: Gag reasons list
- Times: Duration options
- GagTypes: Chat/Voice/Both options
- Bad Words: Auto-gag filter
- Sounds: Audio effects
- Access: Admin permission levels
Checks: Round-based gag checking control (ENABLE_CHECKS = 1
)
🎮 COMMANDS
amx_gagmenu
- Opens interactive gag menu
amx_gag <user> <minutes> <reason> <type>
- NEW! Direct gag command
- Example:
amx_gag John 30 Spam 0
- Types:
0
= Chat Only, 1
= Voice Only, 2
= Chat + Voice
amx_ungag <player>
- Ungag player
amx_cleangags
- Remove all gags
amx_gaglist
- List active gags
🛡️ SECURITY
- Triple Protection: Requires exact match of SteamID + IP + Nickname to prevent bypass attempts
- Round-Based Sync: NEW! Automatically checks every round for all gag changes (add/edit/remove) from database
- Auto-Detection: Detects new gags, gag edits, and gag removals from external sources (website)
- Real-Time Updates: Gag details (reason, time, type) automatically sync when edited from website
- Player Notifications: Chat messages inform players when their gag status or details change
- No Reconnect Required: All changes apply instantly on next round without reconnecting
📝 LOG FORMAT
L MM/DD/YYYY - HH:MM:SS: Admin X gagged player Y for Z minutes with reason 'ABC' (Type: Chat)
L MM/DD/YYYY - HH:MM:SS: Admin X ungagged player Y
L MM/DD/YYYY - HH:MM:SS: Gag expired for player Y (Type: Voice)
L MM/DD/YYYY - HH:MM:SS: SYSTEM automatically gagged player Y for Z minutes with reason 'Swearing (badword)' (Type: Both)
L MM/DD/YYYY - HH:MM:SS: Gag validation failed for player Y - gag was manually removed from database
L MM/DD/YYYY - HH:MM:SS: Gag details updated for player Y - Admin: X, Reason: ABC, Type: 0
🆕 NEW FEATURES (Latest Update)
Direct Gag Command
- Instant Gagging: Use
amx_gag
for quick player gagging without menus
- Parameter Validation: Built-in checks for all parameters with helpful error messages
- Type System: Numeric gag types (0/1/2) with clear explanations
Enhanced Round-Based Synchronization
- Complete Database Sync: Detects all gag changes (create/edit/remove) from external sources
- Real-Time Gag Updates: Automatically syncs reason, duration, and type changes from website
- Smart Voice Blocking: Properly handles gag type changes (Chat ↔ Voice ↔ Both)
- Player Communication: Chat notifications when gag status or details are modified
- Website Integration: Full compatibility with PanelSIX web management pages
Enhanced User Experience
- Help System: Typing
amx_gag
alone shows usage examples and type explanations
- Error Messages: Clear feedback for invalid parameters or missing arguments
- Consistent Access: Uses same admin flags as existing gag menu system
Performance Optimization
-
Configurable Checks: New ENABLE_CHECKS
option to control round-based gag checking
-
Lag Reduction: Set ENABLE_CHECKS = 0
to disable round end/start checks for better server performance
-
Selective Disabling: Only affects automatic round checks - manual commands still work normally
-
Server-Friendly: Helps servers with high player counts avoid lag spikes during round transitions