Ban Sync
Ban Sync pushes your BattleMetrics bans to your server's native (game-level) ban system. It will automatically handle adding, removing, and updating bans. Ban Sync is designed to augment the BattleMetrics ban system, not replace it. This allows you to utilize our full feature set even if the game's ban system is limited.
Ban Sync does not import bans that have already been added to the server's native ban list. It only keeps bans issued through the BattleMetrics ban system synchronized.
The normal BattleMetrics ban system will continue to kick players that are on your ban list. If you enable Ban Sync then we will also add a native ban after kicking them. A few seconds after adding a ban we will recheck that it was successfully added and in the correct state whenever possible.
- Using Ban Sync
- When Bans are Added
- Ban List Options
- Update Interval
- Native Ban List Interface
- Games
- Feature Support
¶ Using Ban Sync
We recommend that you clear your server's native ban list before using Ban Sync. A large ban list can cause issues when attempting to add, remove, and verify bans.
Ban Sync can be enabled or disabled for an individual ban. You may also set "enabled" or "disabled" as a default setting for a given ban list. Bans added to a list will use the list's default setting unless you specifically enable or disable it on the ban.
If you do not have BattleMetrics bans on a ban list you may use the "Import" option when editing a ban list, which will move bans that are not already on a list to that list.
¶ When Bans are Added
We initially add a native ban either:
- When the ban is added to our system; or
- When a matching player joins.
A native ban is added to all servers that the ban applies to. We add bans to all servers in case the player attempts to join another one of your servers.
¶ Ban List Options
Time To Live (TTL) is the maximum amount of time a ban is allowed to stay on a native ban list. Many games have issues with large native ban lists. We recommend that you keep the TTL value under 30 days.
Once the TTL is exceeded we will remove the ban from the native ban list. This does not unban the player. If a player rejoins the server after the native ban has been removed, we will kick them based on the ban in our internal database and issue a native ban again, restarting the TTL counter.
Native Max Duration allows you to set the maximum duration/expiration that we will use when adding native bans. After a native ban expires we will add it again if the ban is still valid, and the TTL has not been exceeded. If the game does not support temporary bans then this setting will have no effect.
Setting a max duration decreases the chance that a ban could become "stuck" in a game's ban system if we are unable to remove it. This is a common problem with ArmA servers.
¶ Update Interval
The Ban Sync system is designed to ensure that bans we have issued are:
- Still valid; and
- In the correct state.
The system will check the above criteria at regular intervals as well as on certain triggering events.
If the game supports the ability to view bans we will verify that bans that should be present are present and bans that should be removed have been removed.
If we are unable to check if a ban is currently in the server's ban list then we will issue removal commands multiple times. However, we do not blindly reissue bans that should be added. We only reissue a native ban if a banned player attempts to join again and our internal database kicks them.
The regular update interval will choose the nearest time based on the conditions below.
- When the native ban will exceed it's TTL;
- When the BattleMetrics ban expires; and
- When the native ban expires.
- If the BattleMetrics ban is temporary, the reason includes
{{timeLeft}}
, the game supports ban reasons, and the game supports removing bans then:- If the ban expires in more than 24 hours, check in 12 hours.
- If the ban expires in more than 1 hour, check in 1 hour.
- If the ban expires in less than 1 hour, check in 10 minutes.
- If the game supports listing bans then:
- If the ban was added in the past 24 hours, check in 1 hour.
- Otherwise check in 6 hours.
We'll also check on the following events:
- On server restart.
- When the associated BattleMetrics ban is updated or removed.
- When a connection from a player is rejected. Only Arma and Rust provide the information necessary for this check.
If a BattleMetrics permanent ban is removed or a BattleMetrics temporary ban is removed before it expires, we will check every 3 hours to ensure the native ban is removed. We will stop checking after 3 days or when the native ban would have expired on its own.
¶ Native Ban List Interface
The list of native bans includes both added and removed bans that the Ban Sync system is currently tracking. It represents the state we think your server is in. The expiration and reason are for the native ban, not necessary what the associated BattleMetrics ban currently has set.
¶ Games
Most games create their own custom ban system with their own bugs and quirks. You can change Ban Sync settings on a per-server basis by changing "Server Settings" to "Limited". This allows you to control settings for each server.
Below we list recommendations, known issues, and incompatibilities for each game we support. Please read the sections on the games you host.
¶ 7 Days to Die
- 7 Days to Die does not support permanent bans. For permanent bans we issue a 100 year ban.
- 7 Days to Die does not support IP bans despite providing IP information for each player. If a player with a banned IP joins we'll kick them, but we will be unable to issue a native ban unless their Steam ID is also banned in our internal database. This can be automated with the "Auto Add" feature.
¶ Ark
- Ark does not support IP bans or provide IP information.
- Ark does not support ban reasons.
- Ark does not support temporary bans.
- Ark does not provide a way to retrieve the ban list or check for an existing ban. We can not verify that bans have been added for Ark.
¶ Arma
- The RCON protocol for Arma has a maximum response size that can make it impossible to retrieve the ban list and unban players. You may wish to set your maximum duration as low as 30 to 60 minutes for Arma servers if you have an especially large number of banned players.
The above limitation usually becomes a problem around 2,000 - 5,000 bans. To be safe you should not let your native ban list exceed 2,000 bans. - Arma does not kick for BattlEye GUID bans until after the player has connected and had their GUID verified. Note: IP bans will result in faster kicks than GUID bans.
¶ Dark and Light
Dark and Light and Ark share the same RCON system. See Ark.
¶ Insurgency
- Insurgency does not support ban reasons.
¶ Rising Storm 2: Vietnam
- RS2: Vietnam does not support IP bans despite providing IP information. If a player with a banned IP joins we will kick them, but we will be unable to issue a native ban unless their Steam ID is also banned. This can be automated with the "Auto Add" feature.
¶ Rust
- Rust does not support IP bans despite providing IP information. If a player with a banned IP joins we will kick them, but we will be unable to issue a native ban unless their Steam ID is also banned. This can be automated with the "Auto Add" feature.
- Rust servers under high load may ignore add and remove ban commands.
- The ban list may not be saved if the server crashes or terminates improperly. You may wish to issue the command
server.writecfg
before restarts and/or periodically. You can use our scheduler for this if you wish.
If you use the restart
, or quit
commands the ban list should be saved.
¶ Squad
- Squad is unsupported for several reasons. Offline players can not be banned, bans can not be removed, and there is no way to list bans.
¶ Feature Support
Game | Reason | Temporary Bans | Verification | Updates On Join | Identifiers |
---|---|---|---|---|---|
7 Days to Die | ✔ | ✔ | ✔ | ❌ | Steam ID |
Ark | ❌ | ❌ | ❌ | ❌ | Steam ID |
Arma | ✔ | ✔ | ✔ | ✔ | BattlEye GUID, IP |
Dark and Light | ❌ | ❌ | ❌ | ❌ | Steam ID |
Insurgency | ❌ | ✔ | ✔ | ❌ | Steam ID, IP |
Rising Storm 2: Vietnam | ✔ | ✔ | ✔ | ❌ | Steam ID |
Rust | ❌ | ✔ | ✔ | ✔ | Steam ID |