So I am commenting on this as a Cheat developer.... a long time well known developer. I have basically bypassed every single anticheat ever created. This is what I do for a living and sometimes it works out well.
I was alerted to this thread about Valorant as many people in the recent days have been asking me to take a look at this game and its anticheat. While I still haven't decided if this game is worth my time (no offense to anyone developing the game but games are dime a dozen these days and most shooters die in a few months) or not. I don't even have an account for this game and while I do have a league account... I never made cheats for LoL either and actually don't cheat while playing games myself.
After reading through this thread extensively.... the presence of a boot-time driver is a useless and invasive technique. Many people give it pause because of what can be added to that driver in the future and because of the corruption that has happened in the anticheat world in the last years. Everything from password theft, to account theft to bitcoin miners to corporate espionage.... anti-cheats are not cast in any better light than cheats themselves are.
Any boot time driver will be defeated, and by creating a huge wall that prevents cheats; the only thing you serve to do is push up the price of cheats. You also just result in more people (players) getting scammed by fake cheat developers or by cheats that get their accounts banned (although this doesn't stop cheating as people who want to cheat just obtain more accounts, and for any game that is cheap or free this is an even bigger problem).
I have thought for many years about developing my own anticheat to show all these "anticheat devs" how to actually build an anticheat. The goal of any anticheat should be to prevent game-disruption level cheats and to make the playing field as fair as possible. However when you look at clients like EAC, BattleEye, ESEA, Esportal, and others they are all inherent failures. Even FaceIT client is a failure in that regard (despite their big money contracts and specialized privileges for windows through MS partnerships) there are still cheats and ways to cheat on FaceIT.
It seems so far in reading this that the goal of Valorant is to "prevent" cheaters. By creating a secure wall for the game and its user-mode/runtime client to detect cheats. However that is only following what the rest of these failure clients have done. Let me elaborate on what I mean by that:
You will never defeat all cheats, and you will never make it impossible to cheat. You will only increase the cost of entry to cheat. Allowing those with the deepest pockets to win everything with the most complex of cheats while everyone else will lose. Those who rise to the top will be exempt from these rules (just as it is in other esports games like CS) and as such nothing will change.
In my observation; only FaceIT SERVERSIDE client has been close to what I would consider a "success" by anticheat standards. This is a heavily modified version of SMAC for CSGO with some AI aimbot detections and a few other timer based detections.
The reason I consider this "serverside" anticheat such a success is because it blocks most all cheats while also blocking no cheat at all. This is such an effective method because it effectively creates an "even" playing field for all players. Nobody is able to do anything outrageous no matter what kind of cheat they have so everyone (even cheaters) have to play by the rules. With this being said; certain types of cheats do give people an edge... and that is not something you will ever be able to prevent. However the edge given is much smaller and while taking this approach would mean that there are plenty of "cheats available" for the game the cheats won't do very much and many people won't bother. Infact cheaters in these scenarios often get bored of using the cheats because of their lack of any real advantage.... those who need a little bit of an edge but are generally worse players will play at the same level as better players who are legit.
So how do you achieve such a thing? You prevent the fundamentals of cheats at a server level. Measuring reaction time for corner peaking (prevents aggressive triggerbots, which are highly disruptive), measuring angles for invalid angles (preventing spinbots and 3d perfect-accuracy aimbots), using PVS (possible visible scenario) technology to prevent the sending of data to players clients before they should be able to start to see a player (might be similar to this fog of war I see you talk about), and measuring player input speeds for preventing things like perfect bhop and perfect autoshoot. If you measure the angles of players aiming also; you will prevent auto headshot aimbots that aim at the centers of your players hitboxes or bones (there are ways around this, but randomizing where you aim makes the aimbot in general much less effective especially at a distance). You also want to monitor the movements of players on the map and account for lag but measure player travel speeds to prevent any type of speedhacks. Lastly you want to monitor the order in which commands are sent and what is possible through interpolation to prevent rewind hacks like "backtrack" which exist in CSGO. Combine the above techniques with a final skill based matchmaking system like "FairFight" and you will essentially pit the "cheaters" with other "cheaters" and people who have the same skill to play with those cheaters and avoid any game-disrupting scenarios that cause people to quit.
If you truly care about cheating in the game then you would want to implement what I wrote above and ignore this boot-driver garbage that will just be bypassed by cheat devs with private cheats sold to the highest bidders. Even combining the above technique with your boot driver technique is less effective.... this is because the smaller edges that cheats give are more valuable in a game where cheats are blocked for "the masses". Instead if people who "want to cheat" and "can afford it" just purchase these "legit cheats" that will pop up on the market... you only have to deal with cheats that get very popular (through some type of in-game / runtime anti-cheat that deals with signatures and the such). VAC had quite a bit of success with this throughout the years as cheaters were very discouraged after getting banned, despite having a "cheating streak" before that. Delayed bans are definitely useful in this regard.
I remember years ago playing planetside 2 which had an "aggressive anticheat" that used some sort of a driver (I never bothered to look at it) and after dealing with players who teleported through the map stabbing everyone in the back a few times I just simply quit the game. My entire group of friends also quit the game due to these game-disrupting cheats and this is essentially what people are fed up with in CSGO. I saw the same thing in League of Legends years ago with these "crit hacks" that I was on the receiving end of and combined with people botting; ultimately made me and my friends quit LoL also.
VACNet and VAC in general (combined with casual SMAC anticheats) have curbed cheating to some extent that cheaters are often matched with cheaters and people who disrupt games have to go through a great deal of hoops to get back into the game. Forcing them to change their ways or keep purchasing hardware.
So in summary, its best to "allow" some form of cheats to be sold to the public by various developers but curb what is possible with cheats from the get-go. By having a range of "accessable" cheats on the market, it makes for a much easier crack down on popular cheats that may get out of hand. It also saves tons of money on the anti-cheat side because you don't get into this never ending cat-mouse war that has been going on for decades now.
You can choose to listen to me and re-think your strategy or you can choose to go down the route you have already chosen. Just understand that I have more experience in this industry than almost anyone else at this point and I have seen both sides arguments forever. There is no way to "win" as an anticheat dev, just as there is no way to "win" as a cheat developer. Both sides are paid for their respective jobs and honestly cheaters are typically pretty content playing with other cheaters, and regular players are also content with playing with cheaters that they don't know are cheating. The main thing that makes a game "fun" is competitiveness / competition. When you are winning too easily or losing too harshly you tend to get bored and move on.
If you would like to contact me directly you can add me on Telegram or something as my details are pretty public on the internet. I would be more than glad to help to guide you in understanding what the best path to take is to make this game truly a long standing successful game that everyone enjoys playing.