Configuration

The best configuration of the anticheat is the default configuration unless you have issues with some players' actions that you allow on your server (example: Prop spawn spam) or bad quality scripts. If you do not have any issue with players' actions or bad quality scripts, do not modify the configuration file unnecessarily. Update the configuration file only if needed and only if you know what are you doing. Modifying the configuration file without knowing what are you doing or causing errors can lead to security, server or anticheat issues.

The configuration file can be found in cfg folder of anticheat resource named config. Inside the config file you can set values or actions for every feature of anticheat. Down below, each feature will be detailed with more details about each feature even though there are instructions in the config file. Copy and find in the config file the feature you need to adjust.

In the future updates you will can configure the configuration file more easily from our site. Our site is currently on going.

Config.discordServer - represents the discord link invite for your server. This link will appear as hyperlink when someone gets banned and tries to connect to your server. Ban window will tell them to join your discord server and they can create a ticket to get unbanned. Also, it will be shown the Reason Anticheat discord server in case they are interested in our work, but if they join to our discord we cannot handle their ban, because it is a local ban.
Config.detectionStart - after this timer, the anticheat will start all detections from client. This timer has been added in case a player has low performance even though it is also checked the player spawn. It is recommended to set a timer between 10-20 seconds (value of 10000-20000 in config files) to not get any detections while he is in awaiting scripts or falling through the map. Also, if the server has low performance, setting a timer is a good thing.
Config.detectionThreshold - represents the timer at which all detections will be performed on player.
Config.AccessMenuIds - is a table where you can add all player's identifier who will have access to the menu. Is it enough to add only one identifier (license, discord, fivem, xbl, live, steam) in order to grant access to the in game menu. You can find player's identifiers in your database or anticheat logs. Adding your user licenses to access menu table will also make you a whitelisted user.
Config.WhitelistedIds - is a table where you can add all players' identifier who will be protected from almost all anticheat detections (if you use cheat as whitelisted user you can get banned for several reasons. we do not allow cheating at all). Is it enough to add only one identifier (license, discord, fivem, xbl, live, steam) in order to whitelist a player in order to be protected from almost all anticheat detections. You can find player's identifiers in your database or anticheat logs.
Config.Help, Config.ClearAllCommand, Config.ClearVehiclesCommand, Config.ClearPedsCommand, Config.ClearObjectsCommand - variables that sets your command you can call from server console in order to perform the right action. Check category Commands from the documentations to see the usage of commands and their features.
Config.BlockedExplosions - is a table where is the name of the explosion along with its id that is allowed or not. In case a player will execute any of this not allowed explosion will get banned on first explosion usage. If the name of the explosion along with its id is commented (-- before explosion) means that it is allowed, else if the name of the explosion along its id is not commented (it has not -- before explosion) means that it is not allowed and the player will get banned if he is execute such explosion. In case you use any explosion on the server it will print the explosion id on anticheat logs so you can allow it. Config.antiExplosions will cancel the explosion used at first usage if it set to true. It is recommended to set it to true. Config.explosionsPenalty represents the punishment for the player who executes the action. The punishment can be WARNING, KICK or BAN. It is recommended to keep it as it is in configuration file by default. In this case, it is recommended to keep it with ban because it can be harmful for your server to spawn explosions on the server. In case you have scripts that uses explosions you have to allow them carefuly in Config.BlockedExplosions (even though you have scripts with explosions it is not recommended to allow any explosion and leave the table as it is by default. a cheater can have in his executor / menu an explosion that is allowed and harm your server).
Config.countExplosions will start counting each player explosions used in a certain period of time (Config.explosionsTimer). If a player cause an amount of any type of explosions (Config.explosionsCounter) even though the explosion is allowed (beside the explosions from gas, vehicles or other explosions that can be produced on the server by players) in a certain period of time (Config.explosionsTimer seconds) he will get punished. Even though the explosions from vehicles are not blacklisted they will count in different situations such as the explosion has been produced with no vehicle nearby the player (if there is no vehicle nearby and he is the owner of a vehicle explosion he must be cheating) and try to prevent this type of explosions by deleting the vehicle which is going to explode. This is one example of a situation that is analyzed and deliver full information about the explosion. Also, explosions which are not produced on the server and only on client will be punished. Config.countExplosionsPenalty represents the punishment for the player who executes the action. The punishment can be WARNING, KICK or BAN. It is recommended to keep it as it is in configuration file by default. In this case, it is recommended to keep it with ban because it can be harmful for your server to spawn a big amount of explosions in a short time on the server.

Explosion occured from client will not work. Banned reason will tell that the explosion has not been occured by the player. This means that the explosion has not been occured on the server, only from client, so this means it occured from a cheating method.

Vehicle explosion is a common method used by cheaters in order to deal damage to players. With Config.countExplosions set to true, vehicle explosion is handled in order to cancel the damage to players and punish the player who tries to explodes with this method.

Config.WhitelistedParticles - is a table which contains all id particles that are allowed on the server. In case the particle is not added as whitelisted particle, the player who execute any particle which is not whitelisted will get banned on first particle usage. In case you use any particle on the server it will print the particle id on anticheat logs so you can whitelist it. Config.antiParticles will cancel the particle used at first usage if it is set to true. It is recommended to set it to true. Config.particlePenalty represents the punishment for the player who executes the action. The punishment can be WARNING, KICK or BAN. It is recommended to keep it as it is in configuration file by default. In this case, it is recommended to keep it with ban because it can be harmful for your server to spawn particles for every player on the server. In case you have scripts that uses particles you have to add them in Config.WhitelistedParticles.

The punishment Config.blacklistedWeaponsPenalty is available only for the players who damage other players with a blacklisted weapon (our detections for having the weapon in loadout, pull out weapon, shoot or aim with a blacklisted weapon will make impossible for a cheater to damage a player, but in case he succeed damage a player with a blacklisted weapon, he will get punished). If the player just have weapon in loadout, pulls weapon out, shoots or aiming with a blacklisted weapon, his weapon will be removed due to an unfixable exploit where cheaters can give weapons to other players without being detected (punishing every action with BAN can lead to ban other players for no reason).

You are able to add in the Config.whitelistedProps table either name or hash of object / prop. Adding the hash is in case you have a custom object / prop and cannot find the name of the object / prop.

For Config.vehiclesCounter there is also a check if the player has spawned in the network more than (Config.vehiclesCounter + 5) vehicles. If the player exceeded this value, all unoccupied vehicles will be deleted.

This feature is different from Config.entitySpawnCheck, as it is more advanced and checks if the entity has been spawned from a valid script that can create peds, vehicles or objects/props.

This feature is an automated version of Config.activeWhitelistedSpawnPedsResources, Config.activeWhitelistedSpawnVehiclesResources, Config.activeWhitelistedSpawnObjectsResources, which delete the entities spawned from unknown or injected (abnormal) scripts that are not supposed to create peds, vehicles or objects/props.

By default it is set to true, but test your server and be sure that this feature will not break your scripts which have creating entities functions. Keep this feature to true only if you are very sure that will not cause issues for spawning entities, otherwise set it to false.

Config.advancedentitySpawnCheck feature will not affect or insert anything to your server scripts.

For more information about how to shift entity creating from client-side to server-side directly from your server you can follow the Secure your server section

Do not players fool or manipulate you with excuses like "I have never cheated" or "It was not me, it was my brother / cousin playing in my house / on my computer. Always check their previous IP activity."

In case the cheater calls any function of this type, in their print it will show the player's vehicle, so it will be a lie in order to tell you a wrong information. Do not action only if you are sure that the player who tries to manipulate the vehicle position or speed is legit.

Loadout citizen file is a file that can be added to fivem data that can load weapons for players (only for those who loads the file) in game when he connect to the server.

It is recommended to activate the pure level in your server.cfg, even though the player will lose their graphics mode or other files that can benefit them. To add the pure level in your server.cfg you have to add this line:

Projectiles feature is based on the same principle as explosions.

Both Config.antiGodmode and Config.antiGodemode2 will perform analysing if the player has godmode functions or not. Config.antiGodmode already detects majority types of god mode functions, but in order to cover all types of godmode functions you have to set your server safezones to Config.serverSafezones table and Config.antiGodemode2 to true to ensure more security against these types of functions.

It is recommended to activate the pure level in your server.cfg, even though the player will lose their graphics mode or other files that can benefit them. To add the pure level in your server.cfg you have to add this line:

  1. Resource stopped from executor (most common)

  2. Host low performance: unstable network (freezings, drops, packet loss, DDOS attacks), lost internet, poor specifications

  3. Server low performance: high server resource consumption

  4. Player's low pc performance: poor specifications

  5. Player's bad internet connection: unstable internet connection, low internet speed

The anti stop resource check does not produce false positives. In case there are multiple player disconnect with the reason Server-client inactivity, this means a server timeout (both Server-client inactivity or server timeout is the same thing). In such cases, it is recommended to monitor your host and server performance to ensure a stable server-client connection (checking the host network and server consumption). Server-client inactivity is not affected by the anticheat resource and the anticheat has no issue in checking the anticheat resource activity on each player. If you deal with such issues, you have to solve the issue from your side. We can support to find the issue and solve it.

Fast reload the weapon can be produced by meta files for fast reload the weapon, cheating functions or bug abuse by the players through key bindings or commands from other scripts. In case you give them permission to bug abuse through such things you can set this to false.

Config.antiAimbot2 is very accurate at disabling aimbots by eliminating the aimbot, compared to Config.antiAimbot1, which allows a small time frame where aimbot might work due to the weapon pullout animation.

If you prefer to keep this small time frame when aimbot might work, you can set Config.antiAimbot1 to true and Config.antiAimbot2 to false, but it is still disabling aimbot in most cases, beside the small time frame of weapon pullout animation (Instant shot cases).

If both Config.antiAimbot1 and Config.antiAimbot2 are set to true, Config.antiAimbot2 will handle the anti aimbot functionality.

By default, Config.antiTriggerbot is set to false for testing

If Config.antiTriggerbot is set to true, in case the player is detected by one of Anti Triggerbot #1, Anti Triggerbot #2 or Anti Triggerbot #3, the player will get banned.

It is recommended to activate the pure level in your server.cfg, even though the player will lose their graphics mode or other files that can benefit them in order to be sure that he is not using any type of cheating files (such magic bullet even through it will not work with Config.antiSilentAim feature). To add the pure level in your server.cfg you have to add this line:

Anti blacklisted words on screen / OCR (Optical Character Recognition) system will catch faster a player that injected a menu for cheating, but even if it is set to false, it does not mean the anticheat will not detect cheaters' actions. By setting Config.useModuleScreenshotBasic and Config.antiBlacklistedWordsOnScreen to true, this feature will just detect and punish faster the player who has a menu on the screen by detecting the blacklisted words on screen from Config.blacklistedWordsOnScreen.

By default this feature is set to false (Config.antiBlacklistedWordsOnScreen) to let you install the resources screenshot-basic, yarn, webpack first in order to make it work. After installing these resources provided by FiveM you can set Config.useModuleScreenshotBasic and Config.antiBlacklistedWordsOnScreen to true.

Damage modifier and damage multiplier are two different ways to affect the weapon damage, but both will be checked under Config.antiDamageModifier feature. Damage modifier applies changes to the player, while damage multiplier applies to the weapon. For anti damage modifier check, if the player weapon damage modifier is higher than the value of Config.maximumWeaponDamageModifier, the player will be warned with Config.antiDamageModifierPenalty. For anti damage multiplier check, if the weapon damage is higher than default values (weapon damage when player weapon damage modifier is less than or equal to 1.0), the player will be warned with Config.antiDamageModifierPenalty

The key names match the name of component id from native SetPedComponentVariation (https://docs.fivem.net/natives/?_0x262B14F48D29DE80)

Example:

Example:

This feature checks if a player changed his outfit through some monitored component variations using a complex algorithm that will not impact with your server's uniforms or EUP systems from jobs or factions or change clothing systems in a standalone way. The only edge case possible to be detected by the algorithm as a player, is only through commands or options that will refresh your outfit, changing your uniform or EUP to the initial player outfit (the outfit saved in the player database), and at least one player from the server has exactly the same outfit (all component variations) or even commands or options that can copy the outfit of a player.

Last updated