sapphonie / StAC-tf2

steph's anticheat (StAC). a built-from-scratch sourcemod based solution to cheating in Team Fortress 2.
https://sappho.io
GNU General Public License v3.0
118 stars 21 forks source link

[Feature Req] API #112

Open MAGNAT2645 opened 2 years ago

MAGNAT2645 commented 2 years ago

StAC should have its own API (even if it's very basic) for other plugins to use. For example, there is rage_matrix_attack ability for FF2 which changes sv_cheats for all clients during slowmo and StAC can ban all these clients.

So it would be really useful if StAC had StAC_OnCheatDetected forward (just like in SMAC) and probably other forwards & natives to control through the code.

sapphonie commented 2 years ago

good idea, will implement

leighmacdonald commented 1 year ago

@sapphonie Any expected ETA on this?

sapphonie commented 1 year ago

@sapphonie Any expected ETA on this?

Depends, what do you need it for? Would like some more use cases so I can know what exactly to do, here, or if a solution already exists (e.g. toggling cvars, etc)

sapphonie commented 1 year ago

There's also the fact that StAC hasn't... really been designed with Funny Gamemodes:tm: in mind, so... errrr. I dunno. I don't know if I want to open the door to having to write a bunch of workarounds for silly plugins doing things to clients that StAC picks up as cheating, though I guess an API would let plugins themselves work around it...

leighmacdonald commented 1 year ago

Essentially i just want to be able to filter & log and/or act on events in my own external system without having to parse logs.

sapphonie commented 1 year ago

Essentially i just want to be able to filter & log and/or act on events in my own external system without having to parse logs.

Would firing off something based off StacLog work? Do you need the additional data e.g. StacLogNetData etc?

sapphonie commented 1 year ago

Essentially i just want to be able to filter & log and/or act on events in my own external system without having to parse logs.

Would firing off something based off StacLog work? Do you need the additional data e.g. StacLogNetData etc?

In the works