Friday, October 13th 2023
Enabling AMD Anti-Lag+ in Counter Strike 2 Will Get You Banned
With the release of AMD Software Adrenalin drivers version 23.10.1 WHQL, AMD has added Anti-Lag+ support for Counter Strike 2, but it appears that this will only result in a VAC (Valve Anti-Cheat) ban. Apparently, the Anti-Lag+ feature is implemented by detouring engine dll functions, and any tampering with CS code will result in a VAC ban.
Valve was keen to note that once AMD ships an update, it will work on identifying affected users and reversing the ban. Luckily, the Anti-Lag+ technology only works on Radeon RX 7000 series RDNA 3 graphics cards, so it could be a limited number of Counter Strike 2 players. The issue comes as a surprise considering that Anti-Lag+ has already been implemented in various games, including competitive ones like Apex Legends, PUBG: Battlegrounds, Fortnite, and others, and only has issues with Counter Strike 2 and its VAC system. Hopefully, AMD will fix the issue pretty soon and we will keep an eye out for an update.
Source:
Counter Strike 2 Twitter
Valve was keen to note that once AMD ships an update, it will work on identifying affected users and reversing the ban. Luckily, the Anti-Lag+ technology only works on Radeon RX 7000 series RDNA 3 graphics cards, so it could be a limited number of Counter Strike 2 players. The issue comes as a surprise considering that Anti-Lag+ has already been implemented in various games, including competitive ones like Apex Legends, PUBG: Battlegrounds, Fortnite, and others, and only has issues with Counter Strike 2 and its VAC system. Hopefully, AMD will fix the issue pretty soon and we will keep an eye out for an update.
102 Comments on Enabling AMD Anti-Lag+ in Counter Strike 2 Will Get You Banned
Valve exclusively using dedicated servers with a server authoritative model for ranked matches really helps mitigate that. AMD is exclusively at fault here for their poor and unsafe software implementation, as well as their lack of communication with game developers.
I'd rather have as many features as possible on the driver side than have to wait on developer support, we all know how that goes, there will always be problems with shitty anticheat software and false positives. No, valve should change their crappy anti cheat, there are ways to detect cheaters without having to play this stupid game of cat and mouse to detect which problematic software runs locally which simply just doesn't work that well, valve games have all been plagued by hackers at all times and I am sure this one isn't going to be any different.
No one said that dll injection COULD be bad in competitive online shooters ? Seriously...
A big mistake, the issue is that it will require them to change the whole source code of the anti-lag and make it implementable by the developers rather than the driver enforcing it.
It's pretty sad that Valve just don't kick people for having the option on with a pop up or what ever error message why. Just out right banning people is bollocks.
Sure, I acknowledge that there is no bad faith from either party involved, but accountability for what software is executed on each client's computer is still exclusively pertaining to the account holder, which is why IMHO - anyone who used Anti-Lag+ with their AMD graphics card should get banned, with a reversal in place once Valve and AMD come to an agreement and an official implementation is vetted, done in a manner that both sanitary and safe. Live code injection is a huge no-no, and I fully expect Valve to tell AMD to go pound sand with this approach as it can and will result in crashes, security holes or game exploits over time. Sure it sucks to be unfairly banned, but since this is a competitive eSport, I do not think it's too unreasonable to ask players to educate themselves about the technical aspects of the software, and the title's viability as an eSport relies on an absolute zero tolerance towards any sort of unsanctioned modification. I can say that I personally trust CS2 more as a competitive title over such a decision.
The true problem here is the blatant technical incompetence from AMD developers implementing this feature in the shoddiest way possible (this is indefensible, they are taking every single shortcut they can, there is a reason Nvidia developed an SDK and documentation, as well as lots of engine- and driver-side maintenance to support Reflex), their horrible to non-existent communication... some brief, unhelpful tweet on Radeon account is all that they have done.
Don't need to argue anymore, I've created another Steam account and quit Counter Strike for good, there are many other games with more modern graphics, responsive movement and more challenging modes. You don't have to read or reply my comment though.
So basically anti lag is at its best when pushing GPU to max (uncapped FPS), kind of trying to resolve a problem gamers pushed on to themselves with this uncapped frame rate nonsense. :)
Just cap your games to 60 fps or anything significantly below what the GPU can handle, and be done with it. :)
The optimum setting, accounting for the highest degree of frametime stability and maximal reduction of latency is to use just in time rendering (without a CPU frame queue) at 6.8% below target refresh rate and keeping GPU load below 95%.
As Radeon Antilag Plus offers no SDK, receives no hardware feedback or otherwise, and was implemented haphazardly, and since AMD has not publicly released any document that describes how it works, I just assume the driver injects its code in the game, starts reordering frames at the engine level while processing the entire input data stack on its own, introducing start of frame latency markers and this is what caught VAC's attention.
This is pertinent reading:
www.nvidia.com/en-us/geforce/news/reflex-latency-analyzer-360hz-g-sync-monitors/
developer.nvidia.com/blog/understanding-and-measuring-pc-latency/
I apologise I am not convinced by this stuff, I am just a simple gamer playing games I enjoy, things like stutters bother me a lot, but not if I see something happen 10ms later than it happens.
But I did also say for those who believe they need these super high frame rates, just set it to something significantly below what the GPU can handle, so if its maxing out at 300fps, set it to say 200fps, you still have these super fast frames, but now your GPU actually has a buffer to handle stuff, depending how the cap is set it should also cap the CPU frame processing as well so its in sync with the GPU, simple solution that doesnt get you banned or cause other oddities. Ultimately the problem is a side effect of allowing all your components independently to process everything as fast as possible and the GPU running at maximum load.
I'm actually trying to understand more about the in depths of this but AMD as usual refers to it as a special algorithm and refused to elaborate further, haven't found any public documentation on it. I actually agree with your practical take on it, that's why I consider myself too old for competitive gaming, someone is always quicker than you and now has faster hardware too :P
It behaves similarly to the render queue size control back in DX9 days.
Special K is capable of injecting Nvidia Reflex support onto any game in a similar manner that AMD's been doing with Antilag+, but even then, SK is to be considered unsafe as far as anti-cheat software goes, and has very strict injection requirements for it to work correctly, it must be loaded before the D3D context is created for its graphics toolkit to work.
www.amd.com/en/support/kb/release-notes/rn-rad-win-23-10-2