![]() |
|
[PORADNIK] System banów dla CS2 (CS2-SimpleAdmin + baza + lista WWW) krok po kroku - Wersja do druku +- Blap.pl - Forum (https://forum.blap.pl) +-- Dział: Counter-Strike 2 (https://forum.blap.pl/forumdisplay.php?fid=36) +--- Dział: Poradniki i taktyki (https://forum.blap.pl/forumdisplay.php?fid=37) +--- Wątek: [PORADNIK] System banów dla CS2 (CS2-SimpleAdmin + baza + lista WWW) krok po kroku (/showthread.php?tid=109) |
[PORADNIK] System banów dla CS2 (CS2-SimpleAdmin + baza + lista WWW) krok po kroku - tunestay - 07-10-2026 Hejka! Skoro był poradnik o banach na 1.6, to czas na Counter-Strike 2. W CS2 robi się to inaczej — przez CounterStrikeSharp i plugin CS2-SimpleAdmin, a bany lądują w bazie MySQL, którą potem można pokazać na stronie. Co potrzebne
1. Zależności (o tym się zapomina!) CS2-SimpleAdmin nie chodzi sam — potrzebuje kilku bibliotek. Kolejność zależności:
2. Baza danych Kod: CREATE DATABASE cs2bans CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'cs2bans'@'localhost' IDENTIFIED BY 'twoje_haslo';
GRANT ALL PRIVILEGES ON cs2bans.* TO 'cs2bans'@'localhost';
FLUSH PRIVILEGES;3. Pierwszy start = generacja configu Po wrzuceniu pluginów restartujecie serwer. CS2-SimpleAdmin sam wygeneruje plik konfiguracyjny: addons/counterstrikesharp/configs/plugins/CS2-SimpleAdmin/CS2-SimpleAdmin.json 4. Wpisujecie dane bazy W wygenerowanym JSON-ie zmieniacie DatabaseType na MySQL i uzupełniacie host/user/password/name (= cs2bans), potem restart. Przy dobrym połączeniu plugin sam zakłada tabele (sa_bans, sa_admins, sa_mutes, sa_servers...) — u mnie przeszło 16 migracji bez błędu. 5. Nadanie sobie admina Admina dodaje się po SteamID64. Jeśli macie już wpis @css/root w configs/admins.json CounterStrikeSharp, to macie wszystkie komendy od ręki. Można też z konsoli serwera: Kod: css_addadmin "STEAM_ID64" "TwojNick" "@css/root"6. Banowanie i publiczna lista Banujecie w grze (css_ban albo z menu) — ban trafia do tabeli sa_bans. Teraz zostaje pokazać to na stronie. Dwie drogi:
Wskazówka: status bana w sa_bans jest w kolumnie status (ACTIVE / EXPIRED / UNBANNED), a czas w duration/ends (0 = permanentny). Filtrujecie po status = 'ACTIVE' i macie aktualną listę. ⬇ Do pobrania
Tyle! Jak coś się sypie na starcie — zwykle to albo zła wersja zależności, albo literówka w danych bazy. Powodzenia!
|