Rozgrywka Bad Goons działająca na autorytatywnych serwerach dedykowanych Linux
Bad Goons · Konteneryzowane serwery dedykowane Linux · Unity 6 + FishNet

BACKEND DO GIER

Backend do gier online.

Sourcegarden Studio projektuje, integruje i wdraża usługi online wokół gry: obsługę sesji i lobby, wdrażanie serwerów dedykowanych, kontrakty między klientem a backendem, trwałość danych oraz monitoring, którego zespół potrzebuje do obsługi meczów na żywo. Netcode czasu rzeczywistego opisujemy na stronie o multiplayerze; ta usługa obejmuje systemy, dzięki którym mecze pozostają dostępne, obserwowalne i łatwe w utrzymaniu.

Porozmawiajmy o backendzie Twojej gry

JAK WYGLĄDA WSPÓŁPRACA

Zakres, rezultaty i odpowiedzialność – zanim zaczniemy pracę.

01

Gdzie zaczyna się backend, a kończy serwer gry

Większość gier online składa się z kilku warstw o różnych odpowiedzialnościach: klienta gry, serwera gry czasu rzeczywistego symulującego mecz, usług aplikacyjnych obsługujących sesje, graczy i dane trwałe, bazy danych oraz narzędzi obserwowalności, które pokazują operatorom, co się dzieje. Problemy pojawiają się, gdy te granice są niejawne, a każda warstwa zależy od wewnętrznych szczegółów pozostałych.

Zaczynamy od wyznaczenia tych granic dla Twojej gry: który stan jest autorytatywny w meczu, które dane muszą przetrwać jego koniec, jakie wywołania wykonuje klient i jakie operacje zespół musi móc przeprowadzić bez obecności programisty. Efektem jest dokument architektury z jawnymi kontraktami, a nie diagram, który rozumie tylko jego autor.

  • Granice klienta, serwera gry i usług
  • Stan autorytatywny a stan trwały
  • Wersjonowane kontrakty klient–backend
  • Dokument architektury, który Twój zespół może utrzymywać
02

Sesje, lobby i przepływ połączeń

Gracze stykają się z backendem najpierw jako drogą do meczu: znalezienie lub utworzenie sesji, dołączenie do drużyny lub lobby, otrzymanie adresu serwera i połączenie z właściwą wersją buildu. Integrujemy te przepływy z klientem gry i serwerem dedykowanym tak, aby stany błędów – pełne serwery, niezgodne wersje czy zerwane połączenia – miały zdefiniowane zachowanie.

Tam, gdzie sprawdzona usługa platformowa już obejmuje część tego przepływu, integrujemy ją zamiast budować od nowa. Tam, gdzie własne usługi są uzasadnione, utrzymujemy je małe, udokumentowane i testowalne. W obu przypadkach cykl życia sesji jest modelowany jawnie, dzięki czemu można go zdiagnozować, gdy gracze zgłaszają problemy.

  • Integracja sesji i lobby
  • Przydział serwera i przekazanie połączenia
  • Kontrola zgodności wersji
  • Zdefiniowane zachowanie przy awariach i ponownym łączeniu
03

Wdrażanie i utrzymanie serwerów dedykowanych

Serwer dedykowany działający na komputerze programisty nie jest jeszcze usługą gotową do utrzymania. Potrzebuje powtarzalnego buildu, kontenera lub obrazu, konfiguracji dla każdego środowiska, health checków, kontrolowanego wyłączania, zbierania logów i bezpiecznego sposobu wdrażania nowej wersji, gdy mecze wciąż trwają.

Bad Goons uruchamia buildy headless Unity na autorytatywnych serwerach Linux z konteneryzowanymi wdrożeniami. Tę samą dyscyplinę stosujemy w projektach klientów: automatyzujemy build serwera, zapewniamy powtarzalność wdrożeń i rzetelnie dokumentujemy założenia dotyczące pojemności, koszty i ograniczenia, zamiast podawać nieprzetestowane liczby jednoczesnych graczy.

  • Buildy serwerów headless na Linuksie
  • Konteneryzowane, powtarzalne wdrożenia
  • Health checki i kontrolowane wyłączanie
  • Wdrażanie i wycofywanie wersji
04

Monitoring, debugowanie i przekazanie

Problemy online są kosztowne, gdy nikt ich nie widzi. Dodajemy ustrukturyzowane logi, metryki i sygnały kondycji wokół sesji, procesów serwera i wywołań usług, a następnie łączymy je z dashboardami i alertami odpowiadającymi temu, jak Twój zespół będzie faktycznie utrzymywał grę.

Każda współpraca kończy się udokumentowanym przekazaniem: architektura, kroki wdrożenia, runbooki dla typowych incydentów, znane ograniczenia i czynniki kosztowe infrastruktury. Jeśli potrzebujesz dalszego wsparcia, jego zakres i oczekiwany czas reakcji uzgadniamy jawnie, a nie zakładamy domyślnie.

  • Ustrukturyzowane logi i metryki
  • Dashboardy i alerty
  • Runbooki incydentów
  • Udokumentowane przekazanie i opcjonalne wsparcie
05

Dane graczy, progresja i usługi ekonomii

Konta, progresja, ekwipunek, ekonomia, analityka i narzędzia LiveOps są często zamawiane i wiążą się z realną odpowiedzialnością za bezpieczeństwo, ochronę danych i balans. Nie traktujemy ich jak pozycji do odhaczenia. Dla każdej gry najpierw oceniamy, czy pasuje istniejąca usługa platformowa, a następnie osobno wyceniamy integrację lub prace własne.

Mówimy otwarcie o naszym dorobku: udokumentowane prace produkcyjne są najmocniejsze w obszarze serwerów dedykowanych, wdrożeń, przepływu sesji i integracji multiplayer. Jeśli Twój projekt wymaga typu usługi, którego wcześniej nie wdrażaliśmy, mówimy o tym w ofercie i odpowiednio planujemy prace walidacyjne.

  • Najpierw ocena usług platformowych
  • Osobno wyceniane prace nad trwałością danych
  • Przegląd ochrony danych i bezpieczeństwa
  • Rzetelny dorobek w każdej ofercie

CZĘSTE PYTANIA

O co pytają zespoły, zanim zaczniemy.

Czym różnią się wasze usługi multiplayer i backendowe?

Tworzenie multiplayera obejmuje symulację czasu rzeczywistego w meczu: autorytet, predykcję, rekoncyliację i replikację. Tworzenie backendu obejmuje usługi wokół niej: sesje i lobby, wdrażanie serwerów, kontrakty klient–backend, trwałość danych, monitoring i przekazanie. Wiele projektów potrzebuje obu, a my wyceniamy je osobno.

Czy możecie zintegrować istniejącą platformę backendową zamiast budować własne usługi?

Tak – i zwykle rekomendujemy, by najpierw to ocenić. Sprawdzamy, czy usługa platformowa pasuje do modelu sesji, danych i ograniczeń kosztowych, a następnie integrujemy ją z klientem i serwerami dedykowanymi. Własne usługi proponujemy tylko tam, gdzie są uzasadnione.

Czy wdrażacie i utrzymujecie serwery dedykowane?

Budujemy, konteneryzujemy i wdrażamy serwery dedykowane oraz konfigurujemy health checki, logi i proces wdrażania wersji potrzebne do ich utrzymania. Bieżąca obsługa po przekazaniu jest opcjonalna i uzgadniana osobno, łącznie z oczekiwanym czasem reakcji.

Czy możecie zagwarantować określoną liczbę jednoczesnych graczy?

Nie. Pojemność zależy od symulacji gry, sprzętu serwerowego, modelu hostingu i zachowania graczy. Definiujemy scenariusze obciążenia dla Twojej gry, mierzymy je i rzetelnie raportujemy wyniki oraz ograniczenia, zamiast obiecywać nieprzetestowane liczby.

Czego potrzebujecie, aby wycenić projekt backendu do gry?

Typu gry i modelu sesji, przewidywanego zakresu liczby jednoczesnych graczy, obecnego silnika i stosu serwerowego, ewentualnej używanej już platformy backendowej, potrzebnych usług i harmonogramu. Na tej podstawie możemy zaproponować ocenę lub wydzielony zakres implementacji.

Co otrzymujemy przy przekazaniu?

Dokumentację architektury i kontraktów, zautomatyzowane kroki budowania i wdrażania, dashboardy monitoringu, runbooki dla typowych incydentów, znane ograniczenia oraz przegląd czynników kosztowych infrastruktury.

ZACZNIJMY ROZMOWĘ

Potrzebujesz partnera do tworzenia gry?

Przyjdź do Sourcegarden Studio z pomysłem, prototypem albo trwającą już produkcją. Pomożemy określić właściwy zakres prac.

Porozmawiajmy o Twojej grze