Anti-cheat guide
Server setup
3 settings in mtaserver.conf control AC behaviour for a server:
<disableac></disableac>
Comma separated list of disabled anti-cheats. This setting disables specific AC codes. AC codes are shown to the player when that detection has been triggered. Available codes are:
Code for <disableac> | Displayed on detect | Required server version | Required <minclientversion> | Notes |
---|---|---|---|---|
1 | AC #1 | any | Classic health/armour hack detector | |
2 | AC #2 | any | Corrupted dll files | |
4 | AC #4 | any | Detects presence of trainer. Capital letters in the message are for tagging particular trainers | |
5 | AC #5 | any | Detects use of trainer. | |
6 | VF #6 | any | Detects use of trainer incl.: player movement, health/damage, weapons, money, gamespeed, game cheats, aimbot | |
7 | VF #7 | any | Detects use of trainer. | |
8 | VF #8 | any | Detects unauthorized mods | |
11 | AC #11 | any | More trainers | |
VF #11 | any | Dll injector / Trainer | ||
13 | SD #13 | any | Data files issue | |
17 | VF #17 | any | Speed / wall hacks | |
21 | AC #21 | any | 1.3.1-9.05097 | More trainers |
VF #21 | any | 1.3.1-9.05097 | Custom gta_sa.exe | |
26 | SD #26 | any | 1.3.4-9.05858 | Anti-cheat component blocked |
<enablesd></enablesd>
Comma separated list of enabled special detections. A special detection is a type of anti-cheat for (usually) harmless game modifications. Competitive servers may wish to enable special detections, but most servers should leave this setting blank. Available codes are:
Code for <enablesd> | Displayed on detect | Required server version | Required <minclientversion> | Notes |
---|---|---|---|---|
12 | SD #12 | any | Disallow custom D3D9.DLL | |
14 | SD #14 | 1.3.1-9.04605 | 1.3.1-9.04605 | Disallow virtual machines such as VMWare |
15 | SD #15 | 1.3.1-9.04791 | 1.3.1-9.04791 | Disallow disabled driver signing |
16 | SD #16 | 1.3.1-9.05097 | 1.3.1-9.05097 | Disallow disabled anti-cheat components. This is triggered when an anti-cheat component can not start. It is usually due to some problem with the PC and might be fixed by a reboot. Can also be triggered by a virus. |
20 | SD #20 | 1.3.1-9.05097 | 1.3.1-9.05097 | Disallow non-standard gta3.img or gta_int.img (For servers not using onPlayerModInfo) |
22 | SD #22 | 1.3.4-9.05884 | 1.3.4-9.05884 | Disallow resource download errors/corruption (Lua script files) |
23 | SD #23 | 1.3.4-9.05884 | 1.5.2-9.07911 | Disallow resource download errors/corruption (Non-Lua files e.g. png,dff) |
28 | SD #28 | 1.3.4-9.05884 | 1.3.4-9.05884 | Disallow Linux Wine |
31 | SD #31 | 1.5.3 | 1.5.3-9.11204 | Ignore injected keyboard inputs (e.g. from AutoHotKey and other key macro programs) |
32 | SD #32 | 1.5.3 | 1.5.3-9.11204 | Ignore injected mouse button inputs |
<client_file name="data/carmods.dat" verify="0"/>
By default, clients may not join a server if they have customized GTA:SA data files. Adding one or more of the above lines excludes files from validation. The file names that can be used are:
- "data/carmods.dat"
- "data/animgrp.dat"
- "data/ar_stats.dat"
- "data/melee.dat"
- "data/clothes.dat"
- "data/object.dat"
- "data/default.dat"
- "data/surface.dat"
- "data/default.ide"
- "data/gta.dat"
- "data/surfinfo.dat"
- "data/peds.ide"
- "data/vehicles.ide"
- "data/pedstats.dat"
- "data/water.dat"
- "data/txdcut.ide"
- "data/water1.dat"
- "models/coll/weapons.col"
- "data/weapon.dat"
- "data/plants.dat"
- "anim/ped.ifp"
- "data/furnitur.dat"
- "data/procobj.dat"
- "data/maps"
Note 1: "data/maps" represents all the files and directories within "data/maps"
Note 2: "data/handling.cfg" is not included as it is always ignored by MTA because of the internal vehicle handling functions. See here if you want to load custom handling.cfg files
Client
When joining a server, the server AC info is displayed in the client console (F8)
Example:
Server AC Info: [Allowed client files: None] [Disabled AC: None] [Enabled SD: None]
Disabled AC contains the contents of the server setting from <disableac></disableac>
Enabled SD contains the contents of the server setting from <enablesd></enablesd>
Allowed client files contains numbers to indicate which client files the server allows to be modified. The numbers represent these files:
- 1 - "data/carmods.dat"
- 2 - "data/animgrp.dat"
- 4 - "data/ar_stats.dat"
- 5 - "data/melee.dat"
- 6 - "data/clothes.dat"
- 7 - "data/object.dat"
- 8 - "data/default.dat"
- 9 - "data/surface.dat"
- 10 - "data/default.ide"
- 12 - "data/gta.dat"
- 13 - "data/surfinfo.dat"
- 14 - "data/peds.ide"
- 15 - "data/vehicles.ide"
- 16 - "data/pedstats.dat"
- 17 - "data/water.dat"
- 18 - "data/txdcut.ide"
- 19 - "data/water1.dat"
- 20 - "models/coll/weapons.col"
- 21 - "data/weapon.dat"
- 22 - "data/plants.dat"
- 23 - "anim/ped.ifp"
- 24 - "data/furnitur.dat"
- 25 - "data/procobj.dat"
- 26 - "data/maps"
Using modified files
If you want to use modified data files from your GTA:SA install directory, check this check box:
Settings->Multiplayer->Use customized GTA:SA files
(check box only appears if your GTA:SA data files are customized)
Note that this will restrict your access to public servers as most do not allow customized data files.
AC Panel resource
An anti-cheat helper resource called acpanel is included with the default resources.
It shows the current anti-cheat status of your server, along with an option to keep your clients up to date and a basic implementation of onPlayerModInfo to block modified img files.