7 szczegółów World of Warcraft Classic, które poznaliśmy na BlizzConie

Artykuł/Gry 09.11.2018
7 szczegółów World of Warcraft Classic, które poznaliśmy na BlizzConie

7 szczegółów World of Warcraft Classic, które poznaliśmy na BlizzConie

W trakcie zakończonego w ostatni weekend BlizzConu było kilka okazji, aby dowiedzieć się czegoś więcej na temat nostalgicznej wersji World Of Warcraft, czyli Classic.

Informacje na temat Classica były rozrzucone po kilku panelach: część przekazano już w trakcie ceremonii otwarcia, dużo szczegółów technicznych zdradzono w drugim dniu w trakcie panelu Restoring History, a część w trakcie wywiadów z programistami i producentami gry. Oto, co udało nam się zebrać na temat waniliowej wersji WoW.

Data premiery

W Classica zagramy już latem 2019 r., co oznacza, że najpóźniejsza data premiery to ok. 20 września, kiedy kończy się kalendarzowe lato.

Do tego wiemy już, że za granie na klasycznych serwerach nie trzeba będzie uiszczać dodatkowej opłaty. Rozgrywka będzie objęta tą samą subskrypcją, co normalne serwery World of Warcraft.

Nie przeniesiemy nic z Classica do normalnej gry.

Nie będzie możliwości przenieść postaci z i do serwerów klasycznych. Nie będzie również możliwości wysłania sobie żadnego sprzętu, broni, zbroi lub złota na serwery normalne. Serwery Classic będą oddzielone.

Jest to rozczarowaniem dla tych wszystkich, którym marzył się Classic właśnie po to, by skompletować stroje to transmogryfikacji.

Bazą klienta 1.13 będzie najnowsza wersja kodu.

W trakcie prezentacji Restoring History twórcy gry opowiedzieli, że mieli dylemat, czy bazować na wersji kodu historycznej (1.12), czy też na najnowszej. Najnowsza wymagałaby wielu przeróbek, ale działałaby z aktualną wersją infrastruktury sieciowej.

W końcu zdecydowano się na zbudowanie hybrydy. Podstawą kodu ma być współczesny klient gry, ponieważ oferuje:

  • Kompatybilność z infrastrukturą Battle.Net, taką jak serwery logowania czy raportowania błędów.
  • Bezpieczeństwo – poprawione są wszystkie błędy i możliwe hacki, które były znane w wersji 1.12.
  • Lepszą interaktywność – klient i serwer nie muszą oszczędzać na komunikacji między sobą, jak to miało miejsce w początkach gry, kiedy internet działał wolniej.

Pociągnęło to za sobą konieczność przenoszenia fragmentów gry ze starszej wersji, tak aby odzwierciedlić sytuację z klasycznej gry. Te fragmenty to szczegóły takie jak nieistniejące już drzewka talentów czy interfejs umiejętności.

Pierwszy commit w bazie kontroli wersji kodu jest stary. Bardzo stary.

Pierwszy commit w bazie kontroli wersji, w której przechowywany jest kod źródłowy World Of Warcraft, pochodzi z 1997 r. To właśnie wtedy zaczęły powstawać pierwsze biblioteki i silnik gry, który następnie przerodził się w Warcraft III, by później zostać użytym do pierwszych wersji World of Warcraft.

Z nazw ścieżek kodu, jakie można było podejrzeć w trakcie prezentacji, wynika, że kodowa wersja silnika Warcrafta mogła nazywać się Storm.

Odbudowanie doświadczenia z 2006 r. wymagało odnalezienia trzech kluczowych komponentów.

Trzy kluczowe komponenty, które były wymagane, aby można było odtworzyć klienta i serwer z 2006 r., kiedy to ukazała się wzorcowa dla Classica wersja 1.12 to:

  • Baza danych – baza informacji współpracująca z tamtą wersją, zawierająca wszystkie elementy gry, przedmioty, ścieżki poruszania się potworów, ceny towarów w sklepach, teksty misji, opisy przedmiotów.
  • Zasoby artystyczne – kolory, tekstury, modele postaci, oświetlenie, animacje oraz dźwięki i muzyka.
  • Kod źródłowy – repozytorium kodu źródłowego serwera oraz klienta.

Nie wszystko udało się odnaleźć tak łatwo jak repozytorium z kodem źródłowym. Na przykład zasoby artystyczne musiały być wyszukane na jednym z zapomnianych backupów.

Przygotowanie prototypu Classica pozwoliło znaleźć błędy w bieżącym kodzie

Po uruchomieniu prawie-współczesnego klienta na starych danych, twórcy gry zmodyfikowali go tak, aby wyświetlał brakujące dane na temat tekstur lub oświetlenia na fioletowo, aby łatwo było zauważyć to w trakcie testowego uruchomienia gry. Okazało się, że wiele lamp w świecie gry zaczęło świecić na fioletowo – nie miały ustawionych wszystkich danych. Błąd pozostał niezauważony przez wiele lat, ponieważ produkcyjny klient gry wyświetla brakujące elementy… na biało.

W razie wątpliwości – niech decyduje element społeczny.

Gdy twórcy Classica mieli wątpliwości, czy jakiś element gry dodany później niż w wersji 1.12 powinien się znaleźć w wersji Classic, pozwalali decydować aspektowi społecznemu.

Przykład? Czy dodać wyszukiwarkę grup? Nie, ludzie dogadujący się na czacie budują społeczność. Czy dodać wysyłanie poczty w grze natychmiastowo, a nie po godzinie, jak w wanilii? Nie, bo wtedy bardziej opłaca się podejść do kogoś osobiście i wymienić się, czyli znów: nawiązać więź społeczną.

Jeśli pracujący nad Classikiem programiści mieli nadal wątpliwości, kierowali się zasadą: dane z 1.12 są święte. Przykład? Pozostawiono limit de-buffów w trakcie walk z bossami – było to niewygodne, ale zmiana tego mogła naruszyć równowagę gry.

Stworzenie Classica to większe wyzwanie, niż Blizzard zakładał.

Miałem wrażenie, że odtworzenie nie tylko technicznie i graficznie starego klienta gry, ale i odtworzenie całego doświadczenia tak, aby było znów autentyczne, okazało się trudne. Mimo to z wypowiedzi zebranych w trakcie prezentacji z BlizzConu wnioskuję, że studio zabrało się do tego w dobry sposób: faktycznie możemy otrzymać unikalne doświadczenie zagrania w Vanillę, której wielu graczy nie miało okazji poznać.

Dołącz do dyskusji