Gdscript let's you do static typing, so "var a : int" ensures that a is an integer. This can help prevent bugs and bad code, and even speeds up the interpreter since it can make some assumptions.
So until now, you couldn't do that with dictionaries, they always allowed any type as a key or value. This adds that functionality so dictionaries can be used with stricter rules, preventing bugs and making them faster.
Csgo and 2 have a "trust" system to keep track of player behavior and put you in games with others of similar trust value. So if you get reported often or have a history of bad behavior, you're more likely to be put in games with other bad actors, and vice versa. Idk how effective it is though.
Honestly there isn't a great solution, which is kind of why I avoid competitive multiplayer games. Even kernel level anticheats can be circumvented.
The nice thing about vac is that theres pretty much no false positives. And valve will occasionally update it, catching a ton of cheaters off guard and getting them banned.