Miesiące błędów Apex Legends były spowodowane jedną linijką kodu
Deweloper Apex Legends, Respawn Entertainment, ujawnił, że pojedyncza linia błędnego kodu powiązana z karabinem szturmowym była odpowiedzialna za mnóstwo błędów dźwiękowych i graficznych, które nękały graczy podczas 16. sezonu gry Battle Royale. Gracze zaczęli zgłaszać błędy wkrótce po rozpoczęciu sezonu 16, po zauważeniu brakujących dźwięków karabinów, widmowych efektów cząsteczkowych i znikających granatów, które nie eksplodowały, […]
Autor: Tomasz RadosAktualizacja: 23 sierpnia, 2023
Deweloper Apex Legends, Respawn Entertainment, ujawnił, że pojedyncza linia błędnego kodu powiązana z karabinem szturmowym była odpowiedzialna za mnóstwo błędów dźwiękowych i graficznych, które nękały graczy podczas 16. sezonu gry Battle Royale.
Gracze zaczęli zgłaszać błędy wkrótce po rozpoczęciu sezonu 16, po zauważeniu brakujących dźwięków karabinów, widmowych efektów cząsteczkowych i znikających granatów, które nie eksplodowały, ale zadawały odpowiednią ilość obrażeń pobliskim wrogom. Błędy nie pojawiły się podczas testów gry, ale po wstępnym dochodzeniu najbardziej prawdopodobną przyczynę brakujących efektów zawęziono do ograniczenia w sposobie analizowania efektów przez serwery gry.
Zgodnie z postem Reddit opisującym polowanie na błędy, serwery Apex Legends są w stanie wysłać do 128 „wpisów” efektów dla każdej klatki rozgrywki. Wpisy te mogą zawierać polecenia zatrzymania/uruchomienia dla wszystkiego, od efektów dźwiękowych specyficznych dla broni, po uderzenia fizyczne, ślady pocisków i wiele innych. Wszelkie żądania efektów otrzymane przez serwer po osiągnięciu limitu 128 klatek wejściowych zostałyby odrzucone, co mogłoby tłumaczyć brakujące dźwięki i efekty zgłaszane przez graczy.
To pozostawiło nas ze złożonym problemem, który, jak wiedzieliśmy, miał wpływ na naszą społeczność, ale pomimo szczegółowych raportów był trudny do odtworzenia
Następnie zespół pracował nad wykryciem, który wadliwy proces lub zasób powodował przeciążenie efektu. Jednak, jak zauważono w aktualizacji Reddit, w każdym nowym sezonie Apex Legends wprowadzane są tysiące poprawek zasobów i poprawek kodu. Znalezienie przyczyny problemu przypominałoby szukanie „igły w stogu siana”.
„To pozostawiło nas ze złożonym problemem, o którym wiedzieliśmy, że ma wpływ na naszą społeczność, ale był trudny do odtworzenia pomimo szczegółowych raportów, miał minimalne wewnętrzne wskazówki i nie było wskaźników, które ostatecznie udowodniłyby, że ten limit w ogóle został osiągnięty” – post Czytać.
W końcu zespół znalazł swoją igłę — pojedynczą linię kodu dołączoną do karabinu Nemesis, który został wprowadzony w sezonie 16. Nemezis został stworzony ze specjalnym efektem cząsteczkowym, którego intensywność wzrastała w miarę wielokrotnego strzelania z broni.
Zespół odkrył, że każdy gracz korzystający z nemezis wysyłał do serwera żądanie efektu „zatrzymaj cząsteczkę” po każdej klatce, w której nie strzelał z broni, nawet jeśli była schowana. Jeśli wystarczająca liczba graczy biegała z nienaładowanymi karabinami Nemezis, to atak komend zatrzymania cząstek wystarczył, by przytłoczyć serwer, powodując odrzucenie efektów.
Na szczęście zespół był w stanie wypchnąć poprawkę tego problemu w zeszły wtorek, chociaż twórcy ostrzegają, że aktualizacja mogła nie naprawić wszystkich problemów z efektami, których gracze doświadczyli w trakcie sezonu 16.
Tomasz Rados
Redaktor Naczelny GamesZoneLouis Ferguson is a senior editor for the blogzine and also reports on breaking news based in London. He has written about government, criminal justice, and the role of money in politics since 2015.
Warning: Undefined variable $required_indicator in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 72
Warning: Undefined variable $required_attribute in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 77
Warning: Undefined variable $required_indicator in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 85
Warning: Undefined variable $html5 in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 89
Warning: Undefined variable $required_attribute in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 91
Warning: Undefined variable $required_indicator in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 135
Warning: Undefined variable $required_attribute in /home/klient.dhosting.pl/tomekrados/gameszone.app/public_html/wp-content/themes/gameszone/comments.php on line 137