Description
I present to you the best CS 1.6 rank system on the internet, written entirely by me (with a bit of help by HueHue and SmirnoffBG), into which a lot of work has been invested and whose code is maximally optimized, readable and organized.
To start with, the rank system works entirely with reapi and all statistics it has like xp, level, kills, headshots and many others, are taken directly from its functions and saved with SQLite or MySQL. The system supports both database types, with MySQL allowing you to share statistics across multiple servers, creating a unified ranking system for your entire server network.
The system has lots of features like Skills, team XP, assists, Stats Viewer which is a menu for viewing other players' statistics, unique /top15, /rankstats and Map End Stats MOTD screens that can be easily customized to your liking and more...
Also, a unique sub-plugin has been added to it, which when activated, makes the system work in ZP Mode. This means that its functionality will be completely changed to work according to the Zombie Plague mod on your server.
All things that the system includes can be easily configured with a configuration file, everything is explained in it. There is also one for personalizing the MOTD screens. Separately, there is also an included lang file, in which messages are translated into all languages that CS 1.6 includes.
An API has been added to the system, which contains a bunch of natives, thanks to which you can easily create your own sub-plugins or use ones already made by me. The rank system is maximally optimized and works without any lag with a full server and there are absolutely no bugs on it so far.
The system is prone to all kinds of personalizations, ranging from HUD, MOTD, in-game messages, settings and much more... Now I will present to you in detail everything it has.
Core Features
ReAPI Integration
Fully integrated with ReAPI for maximum performance and compatibility. All statistics are captured directly from ReAPI functions.
Flexible Database Support
Choose between SQLite for single-server setups or MySQL for multi-server networks. MySQL support enables sharing statistics across multiple servers, creating a unified ranking system for your entire server network.
Team XP System
Advanced team-based experience system that rewards teamwork and objective completion.
Skill System
Advanced skill calculation using the ELO formula, providing accurate skill ratings based on performance metrics including K/D ratio, consistency, and opponent skill levels for competitive balance.
Stats Viewer
Comprehensive statistics viewer allowing players to check detailed stats of other players.
Zombie Plague Support
Special ZP Mode sub-plugin that adapts the entire system to work with Zombie Plague mod.
Multi-language
Complete language support with translations for all CS 1.6 supported languages.
API System
Comprehensive API with natives allowing easy creation of custom sub-plugins and extensions.
Optimized Performance
Maximum optimization ensuring no lag even with full servers. Zero bugs and reliable operation.
Unique MOTD Screens
Unique Top15, Rank Stats and Map End Stats MOTD screens have been created to display player statistics, and they have a bunch of features. All things like design, images, text, colors and others can be changed from the configuration file rsu_edit.ini or in real time during the game through the command /rsuedit (available only for admins with flag ADMIN_RCON).
Top 15
This is how Top 15 looks by default. As you can see, the table consists of the following columns: Top, XP, Name, Kills, Deaths, HS %, Kills for respective weapon (in this case Knife), Skill and Rank.
By clicking on any title of the respective column, it will sort the players by that column in ascending (on first click) or descending order (on second click). As you can also see, each player has an indicator of whether they are online or offline on the server, also the flag of their country, steam avatar and icon (if they are such), as well as whether they are new to the server.
Weapon Header Customization: The weapon column header can be customized to display any weapon from the available list. You can change which weapon statistics are shown in the header through the configuration:
Rank Stats
This is how the individual statistics page for each player looks. The rank statistics consist of three columns.
In the first column, the top row shows the player's Steam avatar (if they have one), which when clicked will take you to their steam profile. Next to it is the flag of the country they are from. Under the flag is an indicator of whether the player is online/offline on the server, their name and their current rank on the server, as well as their skill.
Map End Stats
This is how the statistics that will be displayed at the end of each map look. At the top center, the name of the map that was played is written.
Below it are two tables, each according to the team. The top one is for terrorists, and the bottom one for counter-terrorists.
Stats Viewer
The system includes a menu for viewing the statistics of all players currently playing on the server. When you click on a specific player, the Rank Stats MOTD screen will open with the selected player's statistics. You can sort players in the menu by XP, Kills, Most Valuable Player, Won Rounds, Planted Bombs, Exploded Bombs, Defused Bombs, Playtime or Skills.
Real-time Player Stats
View statistics of all players currently online in the server through an intuitive menu interface.
Multiple Sorting Options
Sort players by various criteria including XP, kills, MVP status, rounds won, bomb statistics, playtime, and skills.
Detailed Player Profiles
Click on any player to open their complete Rank Stats MOTD screen with comprehensive statistics.
HUD Information
This is the HUD information of the player regarding their rank status. By default it looks like this. It can be changed to be in the form of DHUD, change its color and position, and apply substitutes in it.
Available HUD Placeholders:
Settings
As mentioned in the description, the system has a configuration file for easy setup of everything. In it you will see different sections. Under each section are different options relating to the respective section. This is the list of all sections, their options, default values and brief description of each option:
[Settings]
General system settings for language, saving, chat and basic functionality.
Database driver selection ('sqlite' or 'mysql'). SQLite creates local DB in amxmodx/data/sqlite3/RanksUltimate.sq3, MySQL uses settings from amxmodx/configs/sql.cfg
Default language for MOTD screens. Languages: en (English), de (German), sr (Serbian), tr (Turkish), fr (French), sv (Swedish), da (Danish), pl (Polish), nl (Dutch), es (Spanish), bp (Brazilian Portuguese), cz (Czech), fi (Finnish), bg (Bulgarian), ro (Romanian), hu (Hungarian), lt (Lithuanian), sk (Slovak), mk (Macedonian), hr (Croatian), bs (Bosnian), ru (Russian), cn (Simplified Chinese), al (Albanian), pt (European Portuguese). If empty, uses player's amx_langmenu setting.
Player data saving method (0 = save by name | 1 = save by IP | 2 = save by SteamID)
When to save player data (0 = save on round end | 1 = save on map end | X = save every X minutes)
Chat prefix for all system messages ($1 = normal color | $3 = team color | $4 = green color)
Shows information about player's rank on each spawn (0 = off | 1 = on)
Enable/disable bots ranking (0 = disabled | 1 = enabled | 2 = disable bot ranking but keep real players from receiving statistics from them)
For how long a player is considered new (in seconds)
How to order top players by default. First value: stats order (0=XP, 1=Nick, 2=Kills, 3=Assists, 4=Deaths, 5=Skill, 6=HS%, 7=Bombs Planted, 8=Bombs Exploded, 9=Bombs Defused, 10=Rounds Won, 11=MVP, 12=Rank, 13=Overall, 14=Weapon). Second value: default weapon order (0=Knife, 1=Glock18, 2=USP, etc.)
If first value > 0, players will not receive certain statistics unless there are at least X players connected. Statistics separated by '|': all, level, kills, assists, deaths, headshots, planted, defused, exploded, roundswon, mvp, shots, hits, damage
Which team should receive XP (0/blank = All Teams | 1 = Terrorists Only | 2 = CT Only | 3 = Spectators Only)
Whether or not to show the Map End MOTD screen (0 = Hide | 1 = Show)
Message type when a player levels up/down (0 = turn off | 1 = only he can see it | 2 = all players can see it)
Level up screen effects. Use -1 for random color. To disable effects, change Alpha to 0. Values: Red, Green, Blue, Alpha, Hold time
Level up sound (leave blank for no sound)
Level down screen effects. Use -1 for random color. To disable effects, change Alpha to 0. Values: Red, Green, Blue, Alpha, Hold time
Level down sound (leave blank for no sound)
Assists values: minimum damage required for assist to count, how much money the assistant gets, whether assistant receives a frag (Minimum Damage, Money, Receive Frag)
Enable/disable player rank HUD status (0 = off | 1 = on)
HUD rank status type (0 = HUD | 1 = DHUD)
HUD rank status information format
HUD info when player reached maximum level
HUD message values (Red, Green, Blue, Position X, Position Y)
Enable/disable HUD message when you get/lose XP (0 = off | 1 = on)
Enable/disable HUD message when your team gets/loses XP (0 = off | 1 = on)
HUD type if XP_HUD_ENABLE is 1 (0 = HUD | 1 = DHUD)
HUD type for team XP messages (0 = HUD | 1 = DHUD)
HUD message when getting XP
HUD message when team gets XP
HUD message when losing XP
HUD message when team loses XP
HUD values. Use -1 for random color. Use -1.0 for center positions. Effect: 0=no effect, 1=blinking, 2=typewriter. Values: Red, Green, Blue, X, Y, Effect, Hold time
Team XP HUD values. Use -1 for random color. Use -1.0 for center positions. Values: Red, Green, Blue, X, Y, Effect, Hold time
Enable/disable HUD message for end-round MVP (0 = off | 1 = on)
HUD type if MVP_HUD_ENABLE is 1 (0 = HUD | 1 = DHUD)
HUD values (Red, Green, Blue, Position X, Position Y)
[Commands]
Configure custom commands for various system functions.
Commands for opening RankStats MOTD
Commands for opening Stats Viewer menu
Commands for showing player XP information in chat
Commands for showing player rank information in chat
Commands for toggling player HUD rank status
Commands for toggling rank info message on spawn
[XP Rewards]
XP reward system configuration for various in-game actions and achievements.
Available keywords: kill, death, headshot, assist, blind, bomb_plant, bomb_defuse, bomb_explode, team_kill, suicide, t_win, ct_win, t_lose, ct_lose, vip, vip_flags, weapon names (knife, usp, ak47, etc.), mvp, hostage events, and VIP events.
Usage: keyword = 'XP' 'Team XP'. Example: bomb_defuse = 10 5 gives 15XP (10+5) to the defuser + 5 team XP.
XP reward for killing an enemy
Additional XP for headshot kills (added to kill XP)
XP reward for assisting in a kill
Additional XP for killing while flashbanged (added to kill XP)
Additional XP for knife kills (added to kill XP)
Additional XP for grenade kills (added to kill XP)
XP reward for planting bomb (5 personal + 2 team XP)
XP reward for defusing bomb (10 personal + 5 team XP)
XP reward when bomb explodes (5 personal + 2 team XP)
XP penalty for team killing
XP penalty for suicide
Additional XP for VIP players (added to all actions)
Admin flags that qualify for VIP XP bonus
MOTD Personalization
All MOTD screens can be easily personalized through the rsu_edit.ini configuration file located in your amxmodx/configs directory, where you can customize design, images, text, colors and much more. Alternatively, for real-time adjustments during gameplay, you can use the /rsuedit command (available only for admins with flag ADMIN_RCON). The configuration system has a total of 6 sections, each relating to a given part in personalizing the MOTD screens.
[Ranks]
This section defines the rank system progression with required XP for each rank.
[Skills]
This section defines the skill system ranges. The skill marked with '*' is the default starting skill for new players.
[Top15]
This section contains all modifications related to the Top15 MOTD screen.
[Rankstats]
This section contains all modifications related to the Rankstats MOTD screen.
[Mapend]
This section contains all modifications related to the Map End MOTD screen.
[Name Colors]
This section allows adding players with specific flags to have different name colors. Syntax: <flags> = <color>
[Skill Colors]
This section changes the colors of each skill registered under the [Skills] section in the main configuration file rank_system_ultimate.ini. Syntax: <skill> = <color>
[XP Colors]
This section determines the color of XP frames in /top15 for each player according to their XP. Syntax: <xp> = <color>
[Rank Images]
This section allows adding/changing rank images by placing a URL to the image next to the specified rank. Recommended: .png format with dimensions 60 x 24. The rank number follows the order under the [Ranks] section in rank_system_ultimate.ini. Use "default" for default image. Syntax: <rank order> = <image link>
Admin Commands
Give XP Command
Gives XP to a specified player.
Reset Statistics Command
Resets statistics for a specified player.
Example:
rsu_reset_stats Tornado_SW level|headshots|mvp|playedtime
Reload Configuration
Reloads the configuration files.
MOTD Customization Menu
Opens the menu for personalizing MOTD screens.
CVARs
Statistics Control
Enables or disables the rank system statistics collection.
API
The system includes its own library ranksultimate.inc, which is essential for creating various sub-plugins. Here's an example of a basic sub-plugin that gives +5 XP to a player and +2 to the team when they are CT for every hit:
Example Sub-Plugin
#include <amxmodx> #include <hamsandwich> #include <ranksultimate> public plugin_init() { RegisterHam(Ham_TakeDamage, "player", "hamDamage") } public hamDamage(iVictim, iInflictor, iAttacker, Float:flDamage, iDmgBits) { if(!is_user_connected(iVictim) || !is_user_connected(iAttacker) || iAttacker == iVictim || get_user_team(iAttacker) == get_user_team(iVictim)) { return } rsu_give_user_xp(iAttacker, 5) rsu_give_team_xp(2, 5) }
Available Natives
The API includes 32 native functions that provide comprehensive access to all rank system data and functionality:
View All 32 API Natives
Returns client's current XP
Gives specific XP amount to client
Returns client's current level
Complete list of all native functions available in the ranksultimate.inc library:
Called when client's level changes
Called when client's XP changes
Called when client's stats are saved
Called when client's stats are loaded
Returns client's current XP
Returns client's current XP as percentage
Returns XP needed for next rank
Returns XP for specific level
Returns client's current level
Returns client's total kills
Returns client's total deaths
Returns client's total headshots
Returns client's total assists
Returns client's total shots
Returns client's total hits
Returns client's total damage dealt
Returns client's total MVPs
Returns client's total rounds won
Returns client's total bombs planted
Returns client's total bombs exploded
Returns client's total bombs defused
Returns client's total played time
Returns client's skill range as float
Returns client's current server rank
Returns maximum number of all levels
Returns maximum number of server ranks
Returns rank name for specific level
Returns client's current rank name
Returns client's current skill name
Returns client's save info
Gives specific XP amount to client
Gives specific XP amount to specific team
Returns client's first login date.
Returns client's last login date.
Returns client's weapon kills. Weapon index: 0 = Knife | 1 = Glock18 | 2 = USP | 3 = P228 | 4 = Deagle | 5 = Fiveseven | 6 = Elite | 7 = M3 | 8 = XM1014 | 9 = TMP | 10 = MAC10 | 11 = MP5 Navy | 12 = UMP45 | 13 = P90 | 14 = M249 | 15 = Galil | 16 = Famas | 17 = AK47 | 18 = M4A1 | 19 = SG552 | 20 = AUG | 21 = Scout | 22 = AWP | 23 = G3SG1 | 24 = SG550 | 25 = HE Grenade
Free Sub-Plugins
Here's a list of various sub-plugins made by me that anyone who purchased the system can use for free:
Zombie Plague Support
A unique sub-plugin has been added to the system, which when activated, makes the system work in ZP Mode. This completely changes its functionality to work according to the Zombie Plague mod on your server. Some default statistics will be replaced with others that relate to the Zombie Plague mod.
Replaced Statistics
The following statistics are replaced in place of the default ones:
Rounds Won-> Zombie WinsC4 Planted-> Human WinsC4 Exploded-> InfectionsC4 Defused-> Survivals
Unique ZP Style
They will be automatically replaced, both during the game and in the MOTD screens, whose design will be changed with a unique ZP style.
ZP MOTD Screens Preview
Here's how the MOTD screens will look with the ZP style applied:
ZP Mode API Natives
For ZP Mode, the following new natives have been added:
Returns total number of rounds won as zombie
Returns total number of rounds won as human
Returns total number of infections
Returns total number of survivals as human
Returns total number of infections made in one round
XP Rewards System
The following XP rewards have been added specifically for ZP Mode:
XP reward for becoming survivor
XP reward for being cured
XP reward for becoming nemesis
XP reward for infecting a player
XP reward for being last human
XP reward for being last zombie
XP reward for human team win
XP reward for surviving the round
Contact & Support
For support, custom modifications, or any questions about the Rank System Ultimate: