A Counter-Strike: Global Offensive nagyon népszerű kis lövölde lett (de már a béta idején is az volt). Az ilyen felkapott játékoknál a csalók / csalások száma is igen magas. A Valve Anti Cheat sajnos elég butuska és könnyen kijátszható, aminek orvoslására természetesen több third-party megoldás is elérhető (EAC, ESEA, stb) illetve rengeteg közösségi adatbázis is folyamatosan épül és kvázi szabadon hozzáférhető, amelyeken egy adott Steam azonosítóról kaphatunk információkat, pl.: godmin.de.
A probléma csak az, hogy játék közben, legyen az akár sima match-making, vagy akár valamilyen verseny, eléggé nehéz 9 másik játékosnak utánanézni és közben a játékra is figyelni.
Arra gondoltam, ha már a VAC működésén nem változtathatok, sem a Valve üzletpolitikáján (ez utóbbit inkább hagyjuk ), akkor összerakok egy olyan, a tisztességesen játszani szándékozó játékost támogató kis applikációt, ami a háttérben futva elvégzi ezt a kutatómunkát helyettünk.
A program alapesetben a tálcán, pontosabban mondva az értesítési területen csücsül, és várja, hogy a játékosok Steam azonosítója a vágólapra kerüljön. Ezt legegyszerűbben a játék konzoljába írt status paranccsal kérdezhetjük le.
A parancs által visszaadott szöveget ezután egyszerűen másoljuk a vágólapra.
A program ezután szépen kimazsolázza a számára szükséges SteamID-ket, majd a hozzákapcsolt szolgáltatásokon keresztül megkezdi a keresgélést. Utánanéz a delikvensnek magán a Steam-en, betölti a felhasználó profilképét (a könnyebb beazonosíthatóság érdekében), ellenőrzi a korábbi VAC kitiltásokat.
Emellett 4 különböző szolgáltatástól gyűjt be adatokat (új szolgáltatásokat könnyen hozzá lehet adni), ezek a következők:
- SteamRep
- Godmin
- EAC
- ESEA
Az adatok lekérdezésének végeztével készít egy jelentést, HTML formátumban, amit (jelenleg) egy FTP szerverre továbbít, és a hozzá tartozó linket pedig beteszi a vágólapra. Így a többi játékossal könnyen meg lehet osztani, elég a chat ablakban Ctrl+V billentyűkombinációt nyomni, és máris bárki megnézheti a jelentést.
A programnak van egy másik érdekes funkciója is. Azon játékosok esetében, akik még nem állították be a Steam profiljukat, vagy egyszerűen csak privát profilt használnak, azoknál nem lehet látni a regisztráció dátumát sem. Ez pedig nem elhanyagolható adat. Az elv valami olyasmi, hogy ha egyszer semmit nem tudunk egy adott játékosról, mert semmit nem hajlandó megosztani másokkal, akkor legalább azt jó lenne tudni, hogy mikor regisztrálta az adott Steam accountot. Ez is több, mint a semmi. Ha például valaki feltűnően ügyesen játszik, de 3 napja regisztrált, már lehet gyanakodni.
A privát profil regisztrációjának dátumát a program nagyon egyszerűen úgy közelíti meg, hogy elindul a kérdéses steam kulcstól lefelé és felfelé is (párhuzamosan), olyan publikus steam profilokat keresve, ahol ismert a regisztráció napja. Így egy elég pontos becslést lehet kapni. A HTML jelentésben ezt a Join Date után egy zárójelbe tett E jelzi (estimated).
Egy HTML jelentés valahogy így néz ki (a képre kattintva az aktuális HTML fájl nyílik meg):
És ha ezeket az alapvető információkat mindenki megismeri már a játék elején, akkor ott csak az adott kis közösségen múlik, hogy azt hogyan kezeli.
Vélemény? Ötlet?