Checks & Check types - Nort721/GodsEye GitHub Wiki
What are checks?
GodsEye's checks are the programs that responsible for checking the player's activity, the players are checked for every action they do, moving, hitting players, getting damaged, eating, even when standing in place there are checks that constantly run and analyze the information sent to the server by the player's client, every check can be configured in the configuration file (the checks.yml file) and is responsible for running its own check types since there are a lot of ways to check if a player is using a specific hack or doing a specific legitimate activity, every check has multiple check types
What are check types?
Check types are what actually analyses the player's activity, you can think of it like making a sandwich while the check is the bread on top and bottom and the check types are the fillings between the bread, the check types exist because often there is more than one way to detect a specific cheat
Example check(Killaura):
- TypeA -> check if the player is looking at the entity that he is hitting
- TypeB -> check if the player is slowing down after hitting the player (KeepSprint)
- TypeC -> check if the player's cps is above too high etc
In this example you can see the idea, basically, every check types checks a specific characteristic of that specific cheat, while the check itself is what holds the check types together, another name for check types is detections which is how I'm going to call them for the rest of this wiki, every check has its own list of detections
What check types are useful for?
Other than checking different characteristic of the same cheat, and making the code of each detection shorter and cleaner, detections are also useful because if one detection falses, you can disable that specific detection and still have the rest of the check work, for example, lets go to the killaura check we have above, let's say that TypeA falses for players that have above 200 ping so we decide to disable only TypeA specifically, we will still have the rest of the detections working
Example check(Killaura):
- TypeA -> check if the player is looking at the entity that he is hitting - disabled
- TypeB -> check if the player is slowing down after hitting the player (KeepSprint) - still working
- TypeC -> check if the player's cps is above too high - still working
Meaning we still can detect Killaura and now without any false positives, the detection will be weaker after all we have disabled one of the detections, so then the smartest step would be to go to the issue tracker and report about the problem so TypeA will be fixed in the next update so we will still be able to enable it and use it in the next versions