Skip to main content

Miesiące problemów w Apex Legends powodowała jedna linijka kodu

„Jak szukanie igły w stogu siana”.

Tworzenie gier nie jest łatwe. Jak się okazuje, za kilkoma miesiącami problemów w grze Apex Legends odpowiadała jedna źle napisana linijka kodu. Deweloperzy ze studia Respawn opisali cały proces poszukiwania usterki oraz przyznali, że przy tak ogromnej grze było to jak „szukanie igły w stogu siana”. Twórcy musieli przeprowadzić szereg testów i sprawdzić różne teorie, żeby znaleźć, wydawałoby się, drobny błąd.

Jak wyjaśnił w długim poście na oficjalnym Reddicie Apex Legends pracownik Respawn, problemy zaczęły się w lutym, po wprowadzeniu sezonu 16. Z powodu błędu gra miała problem z poprawnym odtwarzaniem efektów dźwiękowych - w tym tak kluczowych dla gier Battle Royale, jak dźwięki wystrzałów, kroki czy wybuchy granatów. „Każda aktualizacja sezonowa wprowadza tysiące zmian do treści, kodu, skryptów i poziomów. To było jak szukanie igły w stogu siana”.

Ponieważ z powtórek i gameplayów podesłanych przez graczy, którzy doświadczyli błędu, ciężko było wywnioskować przyczynę, początkowo sądzono, że usterkę wywołuje system zmiennych „start/stop”, kiedy liczba odtwarzanych na raz na serwerze efektów dźwiękowych została przeciążona. Aby to sprawdzić, na serwerze testowym zespawnowano 50 postaci, które ciągle strzelały i używały swoich zdolności.

W końcu faktycznie zarejestrowano problemy z dźwiękiem. Problem polegał na tym, że do ich wywołania konieczne było zasymulowanie sytuacji, która w normalnej grze teoretycznie bardzo rzadko powinna mieć miejsce, a jednak gracze ją zgłaszali. Zamiast tego znowu przyjrzano się podesłanym nagraniom i zauważono, że problemy najczęściej pojawiają się w rozgrywkach wysokopoziomowych graczy. Postanowiono wdrożyć aktualizację serwera pod kątem zbierania dodatkowych danych telemetrycznych i przebadać kilka rozgrywek zaawansowanych graczy - w końcu znaleziono przyczynę.

Okazało się, że problemy u wszystkich graczy powodowała nowa broń wprowadzona w sezonie 16 - Nemezis. Karabin ma specjalny efekt wizualny, który narasta, gdy broń jest używana i powinien być przerywany, gdy nie strzelamy. Problem polegał na tym, że drobna funkcja odpowiadająca za jego zatrzymanie przypadkowo zakłócała też odtwarzanie innych efektów u pozostałych graczy na serwerze.

Ponieważ efekt synchronizowany jest na bazie framerate’u graczy, wystarczyło by na jednym serwerze przebywało przynajmniej 14 użytkowników z bronią Nemezis i których gra działa w co najmniej 180 klatkach na sekundę, by problemy zaczęły się rozprzestrzeniać także na innych uczestników meczu. Ostatecznie problem został naprawiony, a deweloper ze studia Respawn przyznał, minuta zabawy graczy pozwala znaleźć usterki, których wykrycie zespołowi dziesięciu wewnętrznych testerów zajęłoby rok.


Dlaczego warto sięgnąć po „Legendy gier wideo”?

Dzięki książce poznasz największych twórców gier wideo w historii, a przy okazji dowiesz się, jak wielki był ich wpływ na wszystkie kolejne gry, również dzisiejsze hity, w które grasz na co dzień.

Pobierz darmowy fragment i zamów książkę „Legendy gier wideo” w przedsprzedaży »

Kto pierwszy poruszył postacią na ekranie, jak narodziły się komputerowe RPG-i, dlaczego grom tak blisko do filmów, kto wymyślił otwarte światy, jak narodziły się strzelanki czy wreszcie, który znany twórca poleciał w kosmos jako drugi cywil w historii.

Dowiedz się więcej teraz »

Zobacz także