Description

Rate Management Plugin

The rate management plugin adjusts every players "rate" every time a new player joins or leaves the game. The "rate" controls how frequently the client contacts the server, and is measured in bytes per second.

Some players with fast internet connections set their rate very high, which gives them an unfair advantage in the game over those with lower rates. However, if such a player connects to a server with a bandwidth close to or lower than that of the player, they flood the server's connection,

The visible symptom of this is when such a user joins, every player who is not on a LAN with the server sees their ping go up to 2000+, and the game appears to freeze.

This plugin allows the server admin to set a total amount of "rate" to be shared amongst all players connected. Whenever a new player connects, each player's share of that overall pool of rate is updated to an equal slice. It does this by setting server side limits and by issuing a command accross the network that is run on the client.

This dual approach ensures that the settings can't be overridden by the players, but the player can see the changes to their rate.

NOTE: This plugin only helps to reduce "lag spikes" caused by this specific phenomenon - it does not eliminate lag entirely, or reduce the lag of players when the serve has enough bandwidth. Do not email me just to complain that your server is still laggy after installing it - you will be ignored.

So why not just set sv_maxrate?

sv_maxrate is a server side variable that controls the maximum rate any individual player can use. However, consider the following: You have a 128K server connection and want a 6 player game. If you were to use sv_maxrate to limit the rate, you would have to set it to 2730, which is quite low.

If you use this plugin, when six people are on your server, the rate would still be set to 2730. However, when less than six are playing, the rate will raised to improve everyones game performance. The plugin ensures your server bandwidth is kept near full utilisation regardless of how many are playing.