How are anti-cheats made?

And where do you start?
I'm just wondering, for general knowledge; in what language are most anti-cheats written in?
Why is one working better than the other? etc
Comments
31
From the beginning.
English.
Because it's more efficient.
haha
/thread
xd
Parent
having limited code knowledge and experience, I can only guess
but I'd imagine they're written in C/C++ (except CGAC which is written in C# I think)

I'd also guess they work mainly by checking the memory to see if anything is modifying the game process (maybe checking only for signatures of known cheats, and known methods, so as not to produce false positives with people using RInput etc)
other methods would be screenshots, searching game folders, checking the checksum of game files etc
bro this is one of the kindest comments ive seen from you on crossfire in ages, sup with your attitude here?? (kinda rude to that one guy who shoutcasted or whatever)
Parent
hes just german nothing out of the ordinary
Parent
Fucking anticheats how do they work? lel
its simple....... standard blackbox and you should believe its working
how is babby formed
They grow from cabbages..
Parent
Woah man, that's deep #showerthoughts #philosophy #THATSWHATSHESAID
how any anticheat woks, anticheat is a program in the matrix
are you constantly high?
Parent
okej whatever let us all be slavoj žižek
Parent
most anticheats are written with c++
It kind of depends on the coder itself in which language it's written. It can practically be done with any advanced language. Java, C+, C++ etc. It's just that C++ has one of the most advanced libraries that makes coding a lot simpler when you are able to use the library well. But figuring that this wasn't your question, I'll try to dig it a bit deeper.

Cheats can be made in different ways. The really oldschool way of for example an aimbot, was to obtain certain hooks (X, Y and Z coordinates) of the player and the opponent. This used to be done through a DLL Injector, but injection is usually fairly easy to detect. So people started to mess around the OpenGL32.dll by replacing this with their own version of the file making them able to manipulate the game. One of the perfect cheats would be to use reflection and just read the code (without injecting anything in the game) and then manipulate the windows mouse correctly. Although messing around with the windows mouse is pretty hard in general.

Now the way most (lets say all) AC's work, is anticipating these "known" methods of manipulating the game and detecting these manipulations. Now a perfect AC would be build for un-used methods, but this requires the AC writer to mess around with creating these cheats himself a lot.

Hope this sort of answers your question ;)
And one person writing a AC isn't working also, if you want a 90%(since none can reach 100%, not longer than one month) bust rate you will need a team, and also as you noted a section that tries to develop cheats. But working in a team also increases the risk of having leaks.
Parent
Couldn't agree more.
Parent
when GoodGuyGary procreates, ACs are born.
image: Good_Guy_Gary_700
so they are written in the language of love?
Parent
Back to top