Acidity (V2) is an advanced anti-cheat solution for Minecraft. Similar to the previous project, it is open-source, licensed under GPL v3.0, and is completely free to use and get source code for.
-
This is a fork of an open-source anticheat known as Grim, so go give them to love and support them!
-
Acidity is inspired by other anti-cheats like Polar (https://polar.top) or Intave (https://intave.de). Go check them out aswell, as they have put a lot of effort in their anticheat solutions.
-
ACIDITY IS A WORK IN PROGRESS PROJECT. Don't expect everything to be finished for quite a while.
-
It is recommended that your server staff enable verbose (/grim verbose).
-
You may modify, distribute, or use code from this.
-
You MUST give credits to the original author(s), and use the same license if your project is open-source. If not, please keep the project for private use.
-
You MUST also make the source code public (this does not apply to private projects)
If I am wrong about this please correct me, I don't know much about copyright law and stuff like that.
Since this version will be based off of Grim, it includes a "prediction engine". Essentially, this takes actual player movements, and compares them to actual possible player positions (which are generated by the prediction engine). If they don't match up almost exactly, they are almost always using some sort of movement exploit. This is why almost most movement hacks will not work on servers with Acidity or Grim. The prediction engine also handles literally every movement you can do, ranging from walking to sprinting, crouching to swimming, climbing, etc.
Acidity also provides as much flexibility as possible to prevent false punishments from lag. Here is how it works:
-
Acidity keeps every player's worlds saved somewhere, and each are compressed to 16-64 kb per chunk. This design is what makes a lot of the lag compensation system work, and also prevents a lot of issues with lag. This also prevents players from false flagging by block glitching or sending block update packets, and allows for multithreaded design (which will be covered in a bit).
-
Acidity also uses several methods to ensure lag does not cause issues with falses, this includes using packets like transactions to get ping and such. MOST packets are lag compensated using these methods.
We track each player's inventory to prevent ghost blocks causing issues along with other things.
Acidity also is fully asynchronous and multithreaded. This basically means it won't have a huge impact on TPS, allows the other stuff to work (ex: lag compensation), and allows for hundreds of players on one instance.
Similar to paid anticheats like Polar or Intave, Acidity mitigates cheaters to prevent unfair advantages from being given. An example of this is when a player combat-flags a bunch, their hits will either be slowed, reduced, or cancelled, depending on their trust factor (will be discussed in a bit, inspired by Intave) and how much the flag is weighted.
Acidity uses something called "Trust Factor" to determine if a person is cheating. If a player flags a lot for one or more checks enough and are flagged a certain way, they get a lower trust factor. When someone has a lower trust factor, they are more likely to be mitigated and more likely to alert staff whenever they flag. It is also based on the severity of the player's flags.
-
Add mitigations for Backtrack (Grim Contributors straight up won't do it...)
-
Include "severity" values in flags, which will be used for trust factor and mitigations
-
Add and improve combat checks (Auto Clicker, Aim Assist, Auto Block, Kill Aura, etc.)
-
Improve Scaffold detections (yes, let's also add more checks for the fun of it)