Treści na tej stronie zostały przetłumaczone przy użyciu sztucznej inteligencji (AI) lub technologii tłumaczenia maszynowego i mogą zawierać błędy.

Skip to content

Tworzenie responsywnych, odpornych na oszustwa gier z wykorzystaniem uprawnień serwera

Jak Server Authority wyrównuje szanse

Wprowadzamy w serwisie Roblox funkcję Server Authority z przewidywaniem po stronie klienta i możliwością przywracania stanu poprzedniego, aby zapewnić twórcom nowe, potężne narzędzie do tworzenia od razu gotowych do użycia, niezwykle responsywnych i bezpiecznych gier. Roblox z natury jest platformą wieloosobową i obsługującą wiele urządzeń. Server Authority pomaga zapewnić płynność działania i sprawiedliwość w grach na wszystkich urządzeniach, gwarantując, że wszelkie zmiany stanu gry następują szybko i spójnie.

Funkcja „Server Authority” niesie ze sobą ogromne korzyści zarówno dla gier rywalizacyjnych, jak i społecznościowych na platformie Roblox, jednak tworzenie tej technologii od podstaw jest skomplikowane i często zbyt czasochłonne. Rozwiązanie „Server Authority” firmy Roblox zapewnia najnowocześniejsze podstawy dla realistycznych interakcji fizycznych, solidną infrastrukturę sieciową oraz systemy przeciwdziałające oszustwom, które zapobiegają wykorzystywaniu luk po stronie klienta, dzięki czemu twórcy mogą skupić się na dopracowywaniu rozgrywki i tworzeniu treści, zamiast na budowaniu niestandardowych rozwiązań.

Korzyści płynące z Server Authority 

Server Authority sprawia, że serwer staje się źródłem prawdy dla logiki gry i symulacji, dzięki czemu żaden pojedynczy klient nie może zmienić wyniku dla innych graczy, dopóki nie zostanie to zweryfikowane. Server Authority ma zasadnicze znaczenie dla gier rywalizacyjnych, ale poprawia również interakcje fizyczne, takie jak zderzenia pojazdów czy fizykę piłki, a także chroni przed oszustwami po stronie klienta, takimi jak flingi, przechodzenie przez ściany czy hacki prędkości, dzięki czemu jest przydatne nawet poza środowiskami wieloosobowymi. 

Ponieważ przekazanie danych z klienta na serwer zajmuje trochę czasu, sama funkcja „Server Authority” mogłaby prowadzić do spowolnienia działania po stronie klienta, ponieważ każdy klient czeka na zatwierdzenie przed wykonaniem akcji. Ograniczamy ten efekt dzięki przewidywaniu i cofaniu działań po stronie klienta. Klient każdego gracza natychmiast reaguje na jego działania, aby zapewnić płynność rozgrywki, a działania te są traktowane jako przewidywania do momentu ich zatwierdzenia przez serwer. W przypadkach, gdy stan klienta i serwera nie są zgodne, klient płynnie cofa się do ostatniego znanego prawidłowego stanu serwera i ponownie symuluje przebieg wydarzeń, aby nadrobić zaległości. Dowiedz się więcej o tym, jak działa mechanizm „Server Authority”, z naszego wpisu na DevForum.

Server Authority w akcji – z udziałem ThoughtSpinnr 

Twórca Roblox, ThoughtSpinnr, wykorzystuje Server Authority do tworzenia prototypów wielu gier, w tym gry kosmicznej, która przesuwa granice silnika fizycznego Roblox: 

„Dzięki Server Authority zyskuję znacznie większą kontrolę i swobodę nad moimi grami” – powiedział ThoughtSpinnr. „Podnosi to poprzeczkę jakości i stanowi ogromny skok generacyjny w zakresie możliwości twórców”.

Kosmiczna gra ThoughtSpinnr oferuje system walki akcji w czasie rzeczywistym oraz system niestandardowych postaci oparty na modułowych kontrolerach postaci Roblox. „System walki w czasie rzeczywistym nie miałby szans na sukces bez Server Authority” – powiedział ThoughtSpinnr. „W systemie walki wieloosobowej wrogowie i ich stan muszą być zarządzani przez serwer i replikowane na klientach, aby zapewnić spójność. Jeśli gra będzie czekać na odpowiedź z serwera w celu zatwierdzenia akcji bojowych, będzie działać bardzo opieszale. Jeśli gra będzie wprowadzać zmiany lokalnie, wersja stanu wroga na moim kliencie powoli, ale nieuchronnie zacznie się rozchodzić w stosunku do stanu wroga na serwerze. Żadna z tych opcji nie jest dobra”. 

Wprowadzenie dodatkowych graczy i mechanik, takich jak umiejętności, może pogłębić te problemy. Funkcja „Server Authority” wraz z cofaniem zmian i ponowną symulacją pozwala jednocześnie osiągnąć responsywność i spójność. „Dzięki funkcji Server Authority, cofaniu zmian i ponownej symulacji problemy te są o wiele, wiele łatwiejsze do rozwiązania” – powiedział ThoughtSpinnr. „Walka może być w całości symulowana na kliencie, przy czym każdy klient natychmiast uruchamia logikę trafień, ogłuszeń i umiejętności, a następnie, w razie wystąpienia błędnych przewidywań, stan klienta może zostać cofnięty i ponownie zasymulowany”.

ThoughtSpinnr ma już mnóstwo innych pomysłów dotyczących Server Authority. „Pomyśl o najbardziej irytującym problemie, z jakim borykasz się w związku z postaciami w swojej grze. A teraz wyobraź sobie, że znika on jednym kliknięciem” – powiedział ThoughtSpinnr. „Oszukiwanie? Praktycznie nie ma go. Opóźnienia? Znacznie zredukowane. Reakcja? Natychmiastowa. Dlaczego miałbyś tego nie włączyć?” 

Server Authority otwiera nowe wymiary rozgrywki w Roblox, zapewniając twórcom najnowocześniejszą platformę do tworzenia responsywnej, spójnej i bezpiecznej rozgrywki. Server Authority odzwierciedla nasze zaangażowanie w dostarczanie twórcom zaawansowanych, nowoczesnych narzędzi do tworzenia gier nowej generacji w Roblox.