Twoje serwery w jednym miejscu
Dodaj każdy serwer WARDOGS, który prowadzisz, każdy z własnym zaszyfrowanym hasłem RCON. Pilnuje ich proces w tle (worker), a otwarte strony aktualizują się na żywo.
Warcon to panel do samodzielnego hostowania dla serwerów dedykowanych WARDOGS. Zarządzaj swoimi serwerami z jednego miejsca, daj każdemu adminowi własny login i rolę, i miej zapis tego, co się dzieje. Hasło RCON pozostaje zaszyfrowane na serwerze, więc twoi admini nigdy nie muszą go widzieć.
Korzystaj z console.warcon.app albo uruchom własną kopię poleceniem docker compose up. W obu przypadkach to ten sam otwartoźródłowy panel.
Oficjalna konsola webowa łączy się z serwerem gry prosto z przeglądarki przez nieszyfrowany HTTP. Przez to nie da się jej serwować przez HTTPS, a każdy admin potrzebuje hasła RCON.
Warcon wykonuje te wywołania po stronie serwera. Hasło jest przechowywane w postaci zaszyfrowanej AES-GCM, admini logują się na własne konta, a każda akcja jest najpierw sprawdzana względem ich roli.
Wpis audytu jest zapisywany, zanim odpowiedź wróci: kto co zrobił, na którym serwerze, komu i czy gra to przyjęła.
Dodaj każdy serwer WARDOGS, który prowadzisz, każdy z własnym zaszyfrowanym hasłem RCON. Pilnuje ich proces w tle (worker), a otwarte strony aktualizują się na żywo.
Każdy klan lub społeczność to organizacja z własnymi serwerami i członkami. Przez linki z zaproszeniem ludzie logują się kontem Discord lub Steam, a obsługiwane są też passkeye i aplikacje uwierzytelniające. Role są przypisane do serwera i możesz je edytować albo dodać własne.
Logowania, zmiany użytkowników i serwerów oraz komendy do gry, z informacją, kto to zrobił, celem, wynikiem i czasem trwania. Filtruj, eksportuj do CSV lub JSON i czytaj obok własny log serwera gry.
Gra przechowuje niewiele historii, więc zapisuje ją worker: gracze online w czasie, dostępność, czas na mapę, godziny największego ruchu, sesje i czas gry oraz każdy mecz z tablicą wyników. Rankingi można upublicznić osobno dla każdego serwera.
Otwórz gracza, żeby zobaczyć jego sesje, nicki, których używał, i akcje podjęte wobec niego na twoich serwerach, ze wspólnymi notatkami i listą obserwowanych. Opcjonalna ocena ryzyka to tylko wskazówka: RCON nie pokazuje celowania, pozycji ani sterowania, więc nie wykryje cheatów.
Powitalne szepty, zaplanowane komunikaty, reset mapy, gdy serwer opustoszeje, reguły kicka przy dołączeniu i filtr nicków. Każdą regułę możesz przetestować na ostatnich 24 godzinach, zanim ją włączysz, a wszystko, co robi, trafia do logu.
Prowadź jedną listę banów i jedną listę zarezerwowanych slotów dla organizacji, z powodami i datami wygaśnięcia, a worker stosuje je na każdym z twoich serwerów.
Wysyłaj wybrane zdarzenia audytu na kanał, dostawaj powiadomienie, gdy dołączy obserwowany gracz, albo trzymaj dla każdego serwera kartę statusu na żywo, aktualizowaną w tej samej wiadomości.
Status i tablica wyników, kick, ban, kill, szept, zmiana drużyny, komunikaty, sterowanie mapą i meczem, edycja rotacji, zarezerwowane sloty, score tick, obraz sponsora i ServerSettings.ini z walidacją i zastosowaniem.
Aplikacja webowa serwuje strony i trzyma sesje. Osobny proces w tle (worker) wykonuje wywołania do listenera RCON każdego serwera gry, sprawdza każdy serwer co sekundę lub dwie, gdy jest ruch, i rzadziej, gdy jest pusty, oraz zapisuje to, czego gra nie przechowuje. Wszystko trafia do Postgresa; na TimescaleDB starsze próbki są kompresowane.
Uruchom go obok serwera gry, na VPS albo na hoście kontenerów. Musi tylko dosięgnąć portu RCON: bezpośrednio, przez sieć prywatną albo przez proxy TLS na maszynie z grą.
Protokół został odtworzony z oficjalnej konsoli i jest udokumentowany w repozytorium. Aktualizacja gry może go zmienić, więc coś może przestać działać, dopóki Warcon się nie dostosuje.
Docker Compose uruchamia aplikację webową, workera i bazę TimescaleDB, a najpierw wykonuje migracje. Otwórz adres, utwórz konto właściciela, dodaj serwer i wyślij adminom link z zaproszeniem. Na wbudowanym serwerze demo możesz się rozejrzeć, zanim wpiszesz prawdziwe hasło.
git clone https://github.com/warcon-app/warcon.git warcon && cd warcon
cp .env.example .env
# ustaw BETTER_AUTH_SECRET, ENCRYPTION_KEY i RELAY_SECRET na wartości z `openssl rand -base64 32`,
# POSTGRES_PASSWORD oraz ORIGIN na adres, który będą otwierać ludzie
docker compose up -dRole są przypisane do serwera, więc członek może być adminem na jednym serwerze i viewerem na innym. Każda organizacja zaczyna z trzema rolami poniżej. Jej właściciele mogą zmienić, na co pozwala każda z nich, albo dodać własne, na przykład rolę próbną, która może kickować, ale nie banować.
| Akcje | viewer | operator | admin | org owner |
|---|---|---|---|---|
| Status, gracze, zabójstwa, rotacja, bany i zarezerwowane sloty, statystyki, rankingi, statystyki graczy | ✓ | ✓ | ✓ | ✓ |
| Komunikat, szept, kick, kill, zmiana drużyny, sterowanie meczem i mapą, zmiany rotacji na żywo, notatki o graczach i lista obserwowanych | · | ✓ | ✓ | ✓ |
| Bany, zarezerwowane sloty, listy banów i zarezerwowanych slotów organizacji, zapis rotacji, konfiguracja i ustawienia, automatyzacja, dziennik audytu wszystkich użytkowników i log serwera, surowy RCON | · | · | ✓ | ✓ |
| Serwery, członkowie, role, linki z zaproszeniem i webhooki Discorda; dziennik audytu organizacji | · | · | · | ✓ |
Licencja MIT. Zgłoszenia i pull requesty mile widziane. Zgłoszenia bezpieczeństwa przechodzą przez prywatne zgłaszanie podatności na GitHubie.
Zadawaj pytania, zgłaszaj problemy i rozmawiaj z ludźmi, którzy tworzą i używają Warcona.
Endpointy używane przez oficjalną konsolę, na tyle, na ile udało nam się je rozpracować, spisane, żebyś też mógł budować własne narzędzia.
Społecznościowa lista serwerów, żeby gracze mogli znaleźć twój serwer.