in astrafixes
- modificat timer-ul pentru remove lock la client connect din round preserve in full preserve, adica se va rula si daca se schimba harta.
- la client disconnect , numar player fara boti, astfel cand iese ultimul jucator sa stearga lista de lock, se poate intampla sa "iasa toti" si sa nu se schimbe harta.
- cand incepe o harta noua golesc lista de lock pt. siguranta in caz ca esuat numararea la disconnect si nu a fost golita
adaugat cmd-uri de consola la srv
- c_clearlocks - forteaza golirea listei
pentru teste
 - c_locksteam [name] si e pus la 30 sec., nu tin cont de cvar-ul din cfg
 - c_unlocksteam [steamid64]

facut un modul separat pentru testele de offset-uri si "curatat interfata" cs2astra, astfel ca in cs2astra sunt doar functii de "redirect" in module
check_offsets va incarca fisierul offsets.cfg automat la cs2astra->Load(), daca fisierul nu exista il va genera.
in el toate offset-urile au enable = 0 , valid = 1 si toate conter-ele = 0 ca si valori initiale
numele si valoarea offset-ului sunt culese din cs2fixes.games.txt
daca cs2a_offsets_check e 0 si toate counterele din fisier sunt 0 cand porneste srv-ul (level =1) va fi fortat cs2a_offsets_check in 1 si se vor executa testele iar counterele vor fi != 0
astfel ca la urmatoare repornire nu vor mai teste de offset
cand check_offsets face load (adica doar la pornirea srv-ului) se verifica cateva semnaturi si detoru-ul IsHearingClient (folosit la mute) si sunt setate bool-uri de valid

In functie de aceste bool-uri cat si de valid-ul din offsets.cfg limitez/blochez cmd-uri cat si parte din module.
De ex. daca offset-ul CBasePlayerPawn_CommitSuicide va avea valid = 0 , blochez c_slay, c_kill, modulul slay_looser, si partial c_spec (cand esti in viata si vrei sa fii spec pe altcineva, cmd-ul iti face kill si apoi te muta spec pe acel jucator )

Adaugat cmd-ul de rcon c_checkoff cu argumentele start stop reset, fara argument afiseaza un status al offset-urilor
Cand se executa teste sunt resetate contoarele per offset mai putin Starts, il folosesc ca "safe var" impreuna cu enable, cat si ramane ca un istoric al testelor.
Secventa de testare e ChangeTeam la ClientActive si apoi la OnRoundStart level1 si round1 (warmup) Teleport -> DropWeapon -> CommitSuicide -> Respawn
Asfel ca atunci cand se testeaza un offset mai intai sunt resetate try check si checkOk.
Daca offset-ul are enable 0 si starts > 0 nu se face testul, presupun ca acel offset face crash la srv.
Inainte de a folosi o functie ce utilizeaza offset-ul respectiv incrementez start-ul, try-ul si salvez in offsets.cfg
Dupa executarea functiei fac enable 1 si salvez in fisier, daca functia a dat crash o sa am start > 0 try = 1 si posibil enable 1
La repornirea srv-ului la OnLevelInit si iLevelNr = 1 verific lista de offset-uri si daca am enable 1 start > 0 try = 1 si check = 0 fac enable 0 si salvez in fisier.
Tot aici daca am un offset cu enable 0 dar valoare lui e diferita fata de cea din games.txt, ii fac enable 1 pentru retest.
Daca srv-ul nu a dat crash verific rezultatul functiei si incrementez check, daca rezultatul e bun incrementez checkOK.
Daca checkOk > 0 si check > 0 fac valid = 1, astfel valid = 0 si salvez, poate va fi crash la urmatorul test.

c_checkoff reset va reseta fisierul offsets.cfg ca atunci cand e generat, enable 0 start 0 try 0 ... valid 1
c_checkoff start va face testele pe acel admin, trebuie sa fie spec si cel putin level(harta) 2, nu poti selecta spec in level 1
c_checkoff start force va face testele cu enable 1 chiar daca ele sunt 0 in offsets.cfg, adica srv-ul poate da crash din nou daca offset-ul e prea mare

Offset-uriel dau crash daca au valori mai mari decat trebuie in engine, daca sunt mai mici nu e problema
Pe linux singurul offset care da crash e Respawn
Pe windows singurul care NU da crash e Teleport
 
