(TF)T minus osiemnaście tygodni: historia TFT (część 1)
Co powstanie, gdy dodamy do siebie 12 deweloperów, 8 tygodni i League of Legends? Oczywiście TFT.
Nota redakcyjna: Cześć! Zamiast zalewać was całym oceanem tekstu, postanowiliśmy podzielić tę historię na dwie części. Druga część będzie dostępna jutro, 3 kwietnia, o 19:00 CEST.
— Hej, graliście już w Auto Chess? — Podczas pierwszych miesięcy 2019 roku w Riot nie dało się uciec przed tym pytaniem. Albo rozmawiałeś o Auto Chess, albo zespół uznawał, że jesteś odklejonym od rzeczywistości zgredem.
Nie minęło wiele czasu, gdy ewoluowało ono do wersji: „Zaraz, a dlaczego my nie robimy czegoś takiego?”. Pomyśleliśmy, że warto spróbować i że musi się to stać szybko, ponieważ bez wątpienia nie tylko my dostrzegliśmy potencjał tego gatunku. Jednak oderwanie grupy deweloperów League od bieżących projektów, aby pracowali nad czymś, czego nie jesteśmy w 100% pewni, nie wydawało się sensownym posunięciem. Dlatego stworzyliśmy mały zespół. Mały dwunastoosobowy zespół.
A ponieważ nie chcieliśmy dać się nikomu wyprzedzić, narzuciliśmy sobie dość... agresywne tempo. Osiemnaście tygodni. Osiem, żeby sprawdzić, czy możemy zrobić coś fajnego, i dziesięć, żeby to zrobić. To pociągnęło za sobą konieczność znalezienia odpowiedzi na dwa pytania: Jak w ogóle się do tego zabrać? I kto jest dość zakręcony, żeby spróbować?
Oto deweloperzy, którzy będą wypowiadać się w tym artykule (reprezentują tylko mały ułamek pierwotnego zespołu TFT):
18 tygodni do premiery: zaczynamy odliczanie
— Przeanalizowaliśmy wszystkie uwarunkowania związane z wprowadzeniem automatycznej gry bitewnej w League i stworzyliśmy bardzo ogólną koncepcję — mówi Meddler.
Mieliśmy trzy cele: udoskonalenie samego projektu (lepsze sterowanie i interfejs, szybsze rundy itd.), wykorzystanie 200 lat naszego wspólnego doświadczenia (czytaj: wyważanie i dodawanie funkcji) oraz — co być może najważniejsze — stworzenie czegoś tak fajnego, że nawet o d k l e j o n y o d r z e c z y w i s t o ś c i z g r e d, który nie grał w Auto Chess, chciałby spróbować w to zagrać.
— Gdy podstawowy zespół już powstał, mieliśmy osiem tygodni, aby ustalić, czy zrealizowanie tego pomysłu jest w ogóle możliwe — wspomina Riot Wrekz. — Musieliśmy też określić, jakie ma szanse powodzenia. Chcieliśmy stworzyć rzecz wyjątkową i fajną, a jednocześnie zachować to coś, co nas w tym gatunku zafascynowało.
![01_Doomsday_Clock.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/66eb73511aeb618d51af860990c55d304083ddb7-4032x3024.jpg)
— Pierwszego dnia umieściłem na ścianie wielki czerwony zegar odliczający czas do katastrofy — śmieje się Riot Wittrock. — Czuliśmy się z nim trochę nieswojo, ale zachowaliśmy go, aby stale nam przypominał, że musimy być skoncentrowani.
17 tygodni do premiery: prototypy z League
![pl_pl_17-Weeks-PDF.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/0d258b904396a81bad3d6916c869fbc448593c55-540x140.jpg)
— W ciągu pierwszych kilku tygodni spędziliśmy wiele czasu, próbując opracować sposób działania prototypu. A to... było wyzwanie — mówi Riot Wittrock.
Zespół zaczął pracę, wykorzystując materiały z League — nie zawsze przebiegało to bez zgrzytów.
![03_Darius_AFK.png](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/412d877f369eb31b658a248b1ebdf3a9b37c95b8-950x619.png)
Silnik League zosta�� stworzony specjalnie na potrzeby jednej gry: League of Legends. I chociaż niektóre rzeczy się zmieniały (na przykład mapy, bohaterowie i smoki), to liczba graczy (w zasadzie) pozostawała taka sama.
— Ponieważ działanie League jest nastawione na obsługę rozgrywki z udziałem 10 graczy, a wymyślona przez nas wersja TFT dla 8 graczy powodowała ładowanie znacznie większej ilości zasobów, musielibyśmy w efekcie ustawić więcej serwerów, aby obsługiwać taką samą liczbę graczy — wyjaśnia Riot Nullarbor. — Było to również dość obciążające dla klienta gry.
Dodatkowo chcieliśmy, żeby gracze mogli werbować jednostki (czyli bohaterów), strategicznie ich rozmieszczać i obserwować toczącą się bitwę — to właśnie poczucie bycia dowódcą armii było jednym z elementów, które wydały się nam tak atrakcyjne w Auto Chess. Ale stworzenie poczucia dowodzenia armią wymagało, aby każdy gracz miał możliwość wystawienia więcej niż jednego bohatera naraz. Nasze serwery nie zostały zaprojektowane do obsługi czegoś takiego.
To oznaczało, że prawie każda rozgrywka w TFT na wczesnym etapie kończyła się z powodu lagów. Nie dochodziło do zakończenia. Do zwycięstwa. Tylko do lagu.
![04_Rakan_Bug_TFT.gif](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/21c208b7ae8303d7b5dbccba48c56ca0ad81a658-600x375.gif)
Nawet w późnych wersjach prototypu lag nie był jedynym błędem, z którym zespół musiał walczyć. Jak sobie poradzić z tymi wszystkimi Rakanami?
— Dziewięć jednostek walczących z innymi dziewięcioma jednostkami plus nawet 10 bohaterów siedzących na ławce każdego z graczy — mówi Riot Nullarbor. — W grze jednocześnie mogło być przeszło 100 bohaterów i stale odbywały się szalone potyczki drużynowe. Musieliśmy usunąć masę rzeczy, które nie były niezbędne, a następnie zoptymalizować kod. Na przykład League ma o wiele za dużą mapę jak na nasze potrzeby, więc mogliśmy bardzo ją okroić, żeby reszta mogła działać.
15 –12 tygodni do premiery: rozgrywka
![pl_pl_15-Weeks-PDF.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/34ceada35a11b031dec461b5d3e1c0aad11be552-540x140.jpg)
Praktykowana w Riot filozofia pracy w otwartej przestrzeni oznacza, że ludzie mogą wszędzie wchodzić, oglądać ściany zapełnione grafikami, w krępujący sposób wpatrywać się w plakietki imienne, aby sprawdzić, kto używa zdjęcia psa jako swojej ikony na Slacku, i zatrzymywać się na pogawędki przy swoich biurkach. Zachęca to do współpracy i dzielenia się pomysłami, ale czasem jest kontrproduktywne, szczególnie gdy biegniesz do mety, a nie wiesz, gdzie ona jest.
— Większą część czasu podczas pierwszych ośmiu tygodni, gdy tworzyliśmy prototyp, spędziliśmy odizolowani od reszty firmy. — Posunęliśmy się do tego, żeby schować się w kącie i otoczyć ścianami, tak aby nikt nie mógł do nas podejść i rozmawiać — mówi Riot Nullarbor.
— Tak, Andrei wysłał nawet kilka e-maili, w których prosił innych pracowników zainteresowanych tym, co robimy, żeby nie przychodzili dzielić się swoimi pomysłami — dodaje Riot Wrekz. — To było niezwykłe w Riot i wywoływało poczucie pewnego wyłączenia, ale było konieczne ze względu na wydajność.
— I wpływ — dorzuca Kilmourz. — Kierownictwo chciało, żebyśmy pracowali nad własnymi koncepcjami i nie sugerowali się nadmiernie innymi grami z tego gatunku.
Dlatego zespół siedział w małym kątku i starał się wykoncypować, jak u licha ma zrobić TFT.
Tydzień 14: pociągi, miasta i interfejs
![pl_pl_14-Weeks-PDF.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/b259eef29547f7c267a727d8d215df75bd0fc832-540x140.jpg)
— Jak kupuje się jednostki w sklepie? Są częścią interfejsu, czy też pojawiają się jako modele? Masz awatar do poruszania się, czy wszystko odbywa się metodą kliknij i przeciągnij? — mówi Riot Wrekz. — Już na wczesnym etapie musieliśmy podjąć decyzje dotyczące całego podstawowego schematu sterowania.
Początkowo w zasadzie nie było prawdziwego interfejsu, ponieważ wszystkie nasze wysiłki na wczesnym etapie skupiały się na uruchomieniu prototypu.
— Na początku staraliśmy się definiować grę poprzez serie wiadomości debugowych wyświetlanych na czacie — mówi Riot Nullarbor.
— Po prostu odrzucaliśmy elementy, które nie miały pojawić się w ostatecznej wersji TFT — wyjaśnia Riot Wrekz. — Więc gdy robiliśmy zmiany w interfejsie... W zasadzie w fazie prototypu nie robiliśmy zmian w interfejsie. Zwyczajnie zdemolowaliśmy interfejs League of Legends i na jeszcze dymiących zgliszczach zbudowaliśmy to, czego potrzebowaliśmy.
Starszy specjalista ds. kontroli jakości Alex „Riot Ranger XIV” Sherrell pokazuje niektóre bardzo ciekawe elementy nowego interfejsu TFT.
Praca nad podstawowym interfejsem TFT zmusiła zespół do przemyślenia nawet tego, jak bohaterowie mają pojawiać się na planszach graczy. Niektóre z tych pomysłów były całkiem... interesujące.
— Na pewnym etapie wyobrażaliśmy sobie, że bohaterowie przyjeżdżają pociągami — wspomina Riot Nullarbor. — Był mały dworzec, na który podjeżdżały pociągi z bohaterami do kupienia.
Mimo że obraz Garena, Dariusa i Warwicka grzecznie siedzących obok siebie i czekających na nabywcę wydawał się perwersyjnie uroczy, pomysł został szybko porzucony. Funkcja ponownego losowania wymagałaby szybkiego podjeżdżania i odjeżdżania pociągów, tak aby gry nie trwały zbyt długo. I chociaż ponaddźwiękowe pociągi wjeżdżające na planszę i opuszczające ją byłyby zabawnym przegięciem, to ilość zasobów, które trzeba by wprowadzić i animować, byłaby zbyt obciążająca.
— Zastanawialiśmy się też nad miastem, które otaczałoby planszę i rozrastałoby się wraz z postępami w grze — mówi Riot Wittrock. — Bohaterowie znajdowaliby się z lewej strony planszy w małym sklepie, a kupowanie polegałoby na podnoszeniu ich i rzucaniu na pole walki.
Niestety zespół w końcu wybrał inne rozwiązanie z powodów czysto praktycznych...
— League wymaga, aby wejść do gry w jakieś formie — mówi Riot Wittrock. — Na wczesnym etapie używaliśmy kraba, ponieważ był naturalną częścią League.
Krab na początku był nieco szalony. W pewnym momencie można było swoim krabem-szefem podnosić inne kraby i rzucać nimi wokół. Albo łapać bohaterów ze swojej ławki w środku gry i wrzucać ich do śmietnika w kształcie Tahma Kencha, pokazując przeciwnikowi, co dokładnie sądzisz o jego kompozycji zabójców.
![10_Baron_for_Scale_Shareable.png](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/121dc0019fc1ffd925ae7907cf4f9f010ad0ed88-1915x1170.png)
Jeden z błędów powodował, że krab był nieproporcjonalnie duży, przesłaniając sobą nawet Barona.
Chociaż walka na kraby wymknęła się nieco spod kontroli, zapewniała warstwę rozrywkową oraz interakcję, która bardzo spodobała się zespołowi i tak (ostatecznie) narodziły się Małe Legendy.
Tydzień 13: skład
![pl_pl_13-Weeks-PDF.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/f5e8a9438a62fd6009d7105fdcceefff62e4acfc-540x140.jpg)
— Bohaterów w TFT postrzegaliśmy jako wyidealizowane miniaturki ich odpowiedników z League — mówi Riot Wrekz. — Chcieliśmy znaleźć sposób, aby główny motyw każdego bohatera wyróżniał się, mimo że nie mogliśmy wykorzystać wszystkich jego umiejętności.
![12_TFT_Combat.gif](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/4043d5afdce1ab1baf775b368b9c3d696fe2cf52-600x338.gif)
— Nie chcieliśmy ograniczać się tylko do superumejętności każdego bohatera — dodaje Kilmourz. — Weźmy na przykład Brauma. Spodziewacie się, że użyje swojej superumiejętności, ale jego najbardziej charakterystyczną cechą jest jednak tarcza.
Zespół generalnie nie miał specjalnych problemów z uproszczeniem każdego bohatera, co czasem wiązało się z użyciem wielu umiejętności, jak na przykład doskok i podwójny strzał Luciana. Natomiast dzielenie bohaterów na kategorie pod względem cech było już nieco trudniejsze.
— Przez wiele lat staraliśmy się, aby każdy bohater był zupełnie wyjątkowy — wyjaśnia Riot Wittrock. — To jest wspaniałe w przypadku League of Legends! Ale powodowało problemy, gdy staraliśmy się pogrupować ich pod kątem TFT.
Frakcje i pochodzenia były naturalnymi kategoriami.
— Gdy zaczęliśmy dzielić bohaterów na frakcje, zdaliśmy sobie sprawę, że nie zawsze ma to sens — przyznaje Riot Wrekz. — Garen jest z Demacii, Darius z Noxusu, to oczywiste. Ale są też bohaterowie tacy jak Janna... Nie jest zupełnie oczywiste, że pochodzi z Zaun. Zaczęliśmy odkrywać bardzo dużo przypadków z „pogranicza”, które nie miały wiele sensu.
Bohaterowie, synergie i pochodzenia codziennie nieco się zmieniały, aby całość była bardziej spójna.
— Ważnym punktem zwrotnym był moment, gdy zdaliśmy sobie sprawę, że możemy sięgnąć do alternatywnych światów League — mówi Riot Wittrock. — Koniec końców udało się nam stworzyć dosyć subtelne podejście do tego tematu, ale badanie światów alternatywnych pomogło nam stworzyć schemat grupowania, który miał więcej sensu i wydawał się zgodny tematycznie.
Tydzień 12: WALKA!
![pl_pl_12-Weeks-PDF.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/33a84f17e0c352079391dfd4a25271d1f82f785c-540x140.jpg)
— Bardzo podobają się nam fazy kupowania i planowania w automatycznych grach bitewnych — wyjaśnia Riot Wittrock. — Natomiast walka zwykle pokazywana jest po oddaleniu widoku, a na ekranie pojawiają się efekty działania wielu zaklęć, co sprawia, że obraz jest trudny do rozszyfrowania. Bardzo chcieliśmy to udoskonalić.
Plan? Walka miała być jak najbardziej ekscytująca, ale nie kosztem przejrzystości.
— Chcieliśmy, żeby wyglądało to jak walka drużynowa na poziomie Brązu — ujawnia Riot Wittrock. — Jak zaklęcia rzucane przez grupę graczy w dosyć zorganizowany sposób, ale nie jak rozgrywka na poziomie Diamentu. Powinna przypominać walkę drużynową w League, tylko... trochę „nie taką”.
— Chcieliśmy uniknąć chmury efektów wizualnych i cząsteczkowych, którą obserwujemy w innych grach — mówi Riot MapleNectar. — Na początku trudno było dostrzec, co się dzieje, gdy 18 bohaterów uruchamiało swoje umiejętności, więc przeznaczyliśmy nieco czasu na uporządkowanie tego obrazu.
Poza usunięciem niektórych efektów wizualnych, zespół znalazł inne wyjątkowe metody podniesienia przejrzystości wizualnej.
![19_Initial_Speeds_TFT.gif](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/c30377f86dcfb9decf7690fae85dff0d22b40a3a-600x422.gif)
Początkowa szybkość animacji była nieco zbyt duża.
![20_Proposed_Speeds_TFT.gif](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/fddc12c2363c245bade6b744827add44b1983659-600x422.gif)
Spowolniona animacja.
— Wiele animacji w League jest odtwarzana superszybko — wyjaśnia Kilmourz. — Rzucanie zaklęć ma przede wszystkim dawać poczucie sprawczości i satysfakcji. Ale przez to trudno jest dostrzec, co dzieje się podczas walki, w której po każdej stronie walczy po 9 jednostek. Dlatego musieliśmy wszystko zdecydowanie spowolnić.
11 tygodni do premiery: zielone światło
![pl_pl_11-Weeks-PDF.jpg](https://cmsassets.rgpub.io/sanity/images/dsfx7636/news_live/b680541d642eb08d73c8dcecb08e6325f64a35c7-540x140.jpg)
Po ośmiu tygodniach testów, optymalizacji i lagów zespół miał swój prototyp. Może nie był specjalnie ładny, ale na pewno zajefajny.
— Na początku całego procesu, obiecywaliśmy, że prototyp będzie dobry — wspomina Riot Wrekz. — I gdy ludzie mogli wreszcie w niego zagrać, okazało się, że taki jest.
Co oznaczało, że faza pierwsza — stworzenie czegoś fajnego — była zakończona. Co dalej? Wyrzucamy prototyp i robimy całą grę w 10 tygodni.
Nota redakcyjna: koniecznie zajrzyjcie tu jutro, 3 kwietnia, o 19.00 CEST, aby poznać dalszą historię TFT.