Web · Realtime · Zespoły zdalne

Jak zbudowaliśmy LocoStory: grę geolokalizacyjną, która naprawdę zbliża ludzi

LocoStory powstało po to, żeby wieczór spędzony razem zostawiał po sobie coś więcej niż wynik na tablicy: gra geolokalizacyjna dla zespołów zdalnych. Popularne gry w zgadywanie miejsc dają dobrą zabawę i nic poza nią. Zamiast losowych punktów na mapie każdy gracz wybiera miejsce, które coś dla niego znaczy, a pozostali szukają go w Street View. Całość - od projektu po premierę - powstała u nas, razem z tym, co przesądza o grywalności: synchronizacją stanu w czasie rzeczywistym dla dwóch do ośmiu graczy. Projekty klientów prowadzimy dokładnie tak samo.

Platforma
Web
Gracze
2-8 w pokoju
Rozgrywka
Czas rzeczywisty
Wejście
Gość bez konta
Rozgrywka w LocoStory - odgadywanie miejsca po Street View
LocoStory: zamiast losowego punktu na mapie, gracz odgaduje miejsce, którym ktoś chciał się podzielić.
Problem
Popularne gry w zgadywanie miejsc są zabawne, ale społecznie puste - wspólny czas, po którym zdalny zespół nie zna się ani trochę lepiej.
Co zbudowaliśmy
Grę geolokalizacyjną, w której każdy gracz dzieli się miejscem, które coś dla niego znaczy, opartą na rozgrywce w czasie rzeczywistym dla 2-8 osób, uczciwej niezależnie od łącza.
Efekt
Gra w przeglądarce z wejściem jako gość (bez konta, bez instalacji), prywatnymi pokojami na kod oraz Mapami i Street View wplecionymi w spójny, odporny na opóźnienia stan gry.

Co znajdziesz w tym case study

  1. Produkt, który postanowiliśmy zbudować
  2. Czym jest gra w zgadywanie lokalizacji
  3. Wspólny czas powinien zbliżać
  4. Tryb, który buduje relacje: podziel się swoim miejscem
  5. Pozostałe tryby gry
  6. Jak podeszliśmy do budowy
  7. Stan gry w czasie rzeczywistym dla 2-8 graczy
  8. Uczciwość: opóźnienia i spójność
  9. Poruszanie się po świecie: mapy i Street View
  10. Prywatne pokoje na kod
  11. Gra bez zakładania konta
  12. Dostępne dla każdego przez przeglądarkę
  13. Co ten projekt mówi o tym, jak pracujemy
  14. Co powiedzielibyśmy innemu zespołowi
  15. Najczęstsze pytania klientów

Produkt, który postanowiliśmy zbudować

LocoStory powstał po wielu rozgrywkach w popularną grę w zgadywanie miejsc. Graliśmy w nią dużo, z zespołem i ze znajomymi - i doszliśmy do wniosku, który stał się fundamentem całego produktu: że grając w nią razem, wcale nie poznajemy się bliżej. Bawiliśmy się dobrze, ale wstawaliśmy od gry, wiedząc o sobie nawzajem dokładnie tyle samo, co przed nią.

Naszym zdaniem to marnotrawstwo. Wspólnie spędzony czas powinien zbliżać ludzi, budować zespół - a w pracy zdalnej, gdzie luźne relacje nie powstają same przy ekspresie do kawy, taka okazja jest szczególnie cenna. Zadaliśmy sobie proste pytanie: co wspólnego z budowaniem zespołu ma odgadywanie przypadkowego punktu na drugim końcu świata? Odpowiedź brzmiała: nic.

Dlatego postanowiliśmy stworzyć grę, która naprawdę buduje relacje, zamiast tylko zabijać czas. Sama mechanika zgadywania miejsc jest świetna - wciąga i daje frajdę. Zmarnowany jest tylko jej potencjał społeczny. Wystarczyło odwrócić jedno założenie, żeby ten sam wspólny czas zaczął ludzi zbliżać, a nie tylko ich zabawiać.

Wspólnie spędzony czas powinien zbliżać ludzi. Zgadywanie przypadkowego punktu na drugim końcu świata tego nie robi - więc zbudowaliśmy grę, która to robi.

Poniżej: jak ta obserwacja zamieniła się w grę - tryb, w którym gracze ukrywają własne miejsca, i maszyneria pod nim: synchronizacja w czasie rzeczywistym, uczciwa wobec każdego w pokoju niezależnie od tego, co wyprawia jego łącze.

Praca zdalna zaostrza ten problem. W biurze relacje budują się mimochodem - przy kawie, w kuchni, podczas przerwy - a zdalnie te okazje po prostu znikają. Zespoły próbują je odtworzyć wspólnymi grami i spotkaniami integracyjnymi, ale większość z nich albo jest sztywno wymuszona, albo zabawna, lecz pusta. Gra w zgadywanie losowych miejsc trafia w tę drugą kategorię: dobrze się przy niej bawić, tylko nic z tej zabawy nie zostaje w relacjach.

Zobaczyliśmy w tym realną potrzebę, nie tylko własną frustrację. Rozproszone zespoły szukają sposobów na budowanie więzi, a rynek oferuje im głównie sztuczne integracje albo zwykłą rozrywkę bez głębszego efektu. Miejsce na coś pomiędzy - zabawę, która przy okazji naprawdę zbliża - było puste. To ono stało się okazją.

Czym jest gra w zgadywanie lokalizacji

Dla porządku warto wyjaśnić samą mechanikę, bo na niej wszystko się opiera. W grze w zgadywanie lokalizacji gracz zostaje przeniesiony w losowe miejsce na świecie i widzi je z poziomu ulicy, w panoramie Street View. Może się rozglądać i przemieszczać, a z dostępnych wskazówek - znaków drogowych, języka napisów, architektury, roślinności, ustawienia słońca, marek samochodów - próbuje ustalić, gdzie właściwie się znajduje.

Gdy jest gotów, stawia pinezkę na mapie świata w miejscu, które jego zdaniem odpowiada temu, co widzi. Im bliżej prawdziwej lokalizacji trafi, tym więcej punktów zdobywa. To pozornie prosta pętla, która potrafi wciągnąć na godziny: łączy detektywistyczną satysfakcję z odczytywania śladów z realną wiedzą o świecie, a każda runda to mała zagadka rozgrywająca się w prawdziwym miejscu.

To właśnie na tej mechanice - obserwuj, poruszaj się, zgaduj, dostań punkty za trafność - LocoStory buduje i którą przewartościowuje. Zostawiliśmy to, co w niej dobre, a zmieniliśmy jedną rzecz, która decyduje o tym, czy wspólna gra cokolwiek po sobie zostawia.

To, co czyni tę mechanikę wciągającą, to połączenie dwóch przyjemności naraz. Jedna to detektywistyczna satysfakcja z odczytywania świata - z drobnych śladów układa się hipotezę i sprawdza, jak blisko się trafiło. Druga to nauka mimochodem: po kilku rozgrywkach człowiek zaczyna rozpoznawać kraje po roślinności czy stylu znaków i sam jest zdziwiony, ile o świecie wie. To dobra, wartościowa pętla - szkoda było zostawiać jej potencjał społeczny niewykorzystany.

Warto podkreślić niski próg wejścia w samą mechanikę. Żeby zacząć, nie trzeba niczego umieć - wystarczy się rozglądać i próbować. A jednocześnie sufit umiejętności jest wysoki: im więcej się gra, tym subtelniejsze ślady się dostrzega. To rzadka cecha dobrej zabawy: łatwo zacząć, trudno przestać, i zawsze jest w czym się poprawiać.

Popularność tego gatunku nie jest przypadkowa. Ludzie lubią czuć, że rozumieją świat, a ta gra daje im małe, natychmiastowe potwierdzenie tego za każdym razem, gdy trafią blisko. To właśnie ten dreszcz „wiedziałem!" sprawia, że jedna runda zamienia się w dziesięć - i to jego chcieliśmy zachować, dokładając do niego to, czego brakowało.

Co ciekawe, w tę grę można grać na bardzo różnych poziomach zaangażowania. Jeden gracz traktuje ją jak swobodną rozrywkę na kilka minut, inny jak sport, w którym liczy się każdy punkt. LocoStory zostawia miejsce na oba podejścia, bo dobra zabawa to taka, przy której każdy sam ustala, jak bardzo chce się starać.

Wspólny czas powinien zbliżać

Sednem LocoStory jest przekonanie, że czas spędzony razem powinien budować relację, a nie tylko mijać. Klasyczna gra w zgadywanie losowych miejsc jest przyjemna, ale społecznie pusta: po godzinie wspólnej zabawy nie wiesz o współgraczach nic więcej niż wcześniej. Rywalizacja jest, śmiechu też trochę, ale nie zostaje żaden ślad na tym, jak dobrze się znacie.

Zapytaliśmy więc: co sprawiłoby, że dokładnie ten sam wspólny czas zacząłby ludzi łączyć? Odpowiedź okazała się prosta - trzeba uczynić treść osobistą. Jeśli miejsca w grze nie są przypadkowe, tylko należą do konkretnych ludzi i coś o nich mówią, każda runda przestaje być anonimową zagadką, a staje się małym oknem na czyjeś życie.

To niewielkie przesunięcie założenia, a zmienia wszystko. Ta sama mechanika, ten sam czas, ta sama frajda ze zgadywania - ale zupełnie inny efekt społeczny. Zamiast rozejść się po grze z tym samym dystansem co przedtem, ludzie wychodzą z niej, wiedząc o sobie coś nowego. O to od początku chodziło.

Widać to najlepiej po kontraście z klasycznymi integracjami. Wymuszone team-buildingi często zawodzą, bo próbują zbliżyć ludzi na komendę - „a teraz powiedzcie o sobie coś ciekawego". LocoStory idzie odwrotną drogą: nie każe się otwierać, tylko tworzy sytuację, w której podzielenie się czymś osobistym jest naturalną częścią zabawy. Otwarcie przychodzi samo, bo jest wpisane w grę, a nie doklejone obok niej.

Działa tu najstarszy mechanizm zbliżania ludzi, jaki znamy: opowieść. Ludzie zżywają się przez historie, które sobie nawzajem opowiadają, a nie przez punkty na tablicy wyników. LocoStory po prostu opakowuje tę prawdę w grę - zamiast prosić kogoś, żeby opowiedział o sobie, daje mu miejsce, które za niego zaczyna opowieść, i zabawę, która sprawia, że reszta chce jej wysłuchać.

Tryb, który buduje relacje: podziel się swoim miejscem

Flagowy tryb LocoStory odwraca klasyczną grę w jednym punkcie: zamiast losować miejsce, robi to człowiek. Każdy gracz wybiera miejsce, które coś dla niego znaczy i którym chce się podzielić - podwórko z dzieciństwa, punkt z ważnej podróży, ulubioną kawiarnię, miejsce pierwszej randki. Pozostali gracze, poruszając się po Street View, próbują odgadnąć, gdzie ono jest.

Odgadywanie wciąż jest grą - to ono daje napięcie i frajdę. Ale prawdziwym sensem jest to, co dzieje się wokół niego: gdy miejsce zostaje odkryte, jego autor opowiada, dlaczego akurat to. I nagle runda gry zamienia się w historię, a współgracze dowiadują się o sobie rzeczy, których nie wyciągnęłaby z nich żadna rozmowa na siłę o „ciekawych faktach o sobie".

Każda godzina takiej gry naprawdę zbliża, bo jest utkana z małych, osobistych opowieści. To jest dokładnie ta różnica, o którą chodziło: ta sama pętla zgadywania, ale z treścią, która należy do ludzi przy stole. Gra staje się pretekstem do poznawania się, a poznawanie się dzieje się mimochodem, przy dobrej zabawie - czyli tak, jak działa najlepiej.

W praktyce wygląda to tak: przed rundą jeden z graczy w tajemnicy wybiera swoje miejsce, a pozostali zostają w nie przeniesieni i szukają go po Street View. Napięcie rośnie, bo każdy chce trafić najbliżej - a gdy runda się kończy i miejsce zostaje ujawnione, jego autor mówi, czym ono jest. To właśnie ten moment, powtarzany runda po rundzie, robi całą różnicę.

Co ważne, dzielenie się jest tu bezpieczne, bo dzieje się na własnych warunkach. Nikt nie musi opowiadać niczego, czego nie chce - każdy sam decyduje, ile o danym miejscu zdradza. Jeden powie tylko „to podwórko z dzieciństwa", inny opowie całą historię. Ta dobrowolność sprawia, że gra działa dla zespołu, który dopiero się poznaje, tak samo jak dla grupy bliskich znajomych.

Efekt bywa zaskakująco silny. Zdarza się, że po jednej wieczornej rozgrywce ludzie z zespołu wiedzą o sobie więcej niż po miesiącach wspólnych spotkań o pracy. Nie dlatego, że gra ich do czegoś zmusza, ale dlatego, że daje naturalny pretekst do pokazania kawałka siebie - a druga strona nie przepytuje, tylko szuka i zgaduje. To rzadka kombinacja: głębsze poznanie bez niezręczności, która zwykle mu towarzyszy.

Pozostałe tryby gry

Wokół tego pomysłu zbudowaliśmy też tryby, które dają radość klasycznej gry, bo nie każda chwila musi być głębokim team-buildingiem - czasem chodzi po prostu o dobrą rywalizację. Dlatego LocoStory obejmuje kilka sposobów gry, opartych na tym samym silniku.

Jest tryb solo, czyli klasyczne zgadywanie losowych lokalizacji w pojedynkę, dla kogoś, kto chce po prostu poćwiczyć oko i sprawdzić swoją wiedzę o świecie. Jest live clash - tradycyjna rozgrywka ze znajomymi w czasie rzeczywistym, gdzie wspólnie zgadujecie losowe miejsca i rywalizujecie o punkty. To znany, sprawdzony format, tyle że rozegrany w gronie, na które macie ochotę.

Zauważyliśmy też, że czasem ludzie chcą konkurować o znajomość konkretnego miejsca albo miasta. Powiedzmy, że byliście razem w Nowym Jorku i chcecie sprawdzić, kto lepiej odnajdzie się na Manhattanie. W LocoStory można postawić pinezkę w Central Parku, ustawić promień, a w tym okręgu gra będzie losować miejsca do odgadnięcia. Lokalna wiedza - której nikt nie ma powodu się uczyć poza tym, że gdzieś był - zamienia się w przyjacielską rywalizację i kolejny pretekst do wspólnej zabawy.

Różne tryby to świadoma decyzja, żeby produkt pasował do różnych chwil, a nie tylko do jednej okazji raz na kwartał. Czasem grupa chce się zżyć, a czasem po prostu powygłupiać przy rywalizacji po pracy - i dobrze, żeby to samo narzędzie obsłużyło jedno i drugie. Wspólny silnik pod wszystkimi trybami sprawia, że przejście między nimi jest płynne, a gracze uczą się gry raz, a nie od nowa przy każdym pomyśle na zabawę.

Tryb z pinezką i promieniem okazał się przy tym zaskakująco elastyczny. Można zawęzić okrąg do jednej dzielnicy albo objąć nim całe miasto, można sprawdzać znajomość rodzinnej okolicy albo miejsca, w którym byliście razem na wyjeździe. Za każdym razem gra dopasowuje losowane miejsca do obszaru, który gracze sami wskazali - i znów to, co osobiste, staje się treścią zabawy.

W sumie te tryby układają się w spektrum: od czysto towarzyskiego dzielenia się miejscami, przez klasyczną rywalizację, po sprawdzian lokalnej wiedzy. Grupa może zacząć od luźnej zabawy, a skończyć na zaciętym pojedynku o to, kto lepiej zna swoje miasto - bez wychodzenia z jednej gry. Ta rozpiętość sprawia, że LocoStory pasuje i do pierwszego wspólnego wieczoru zespołu, i do setnego.

Wspólnym mianownikiem wszystkich trybów pozostaje to samo: prawdziwy świat jako plansza i ludzie, którzy grają razem. Zmienia się tylko to, czyje miejsca się odgaduje i jak ostro toczy się rywalizacja - a to wystarcza, żeby jedna gra obsłużyła bardzo różne nastroje jednej grupy.

Jak podeszliśmy do budowy

Ta budowa zaczęła się od decyzji produktowej, nie technicznej: od ustalenia, co sprawi, że wspólny czas będzie cokolwiek wart. To była decyzja produktowa, nie techniczna, ale bez niej cała reszta byłaby tylko kolejnym klonem znanej gry.

Dopiero mając ten fundament, wzięliśmy się za twardy rdzeń techniczny: rozgrywkę w czasie rzeczywistym, która pozostaje spójna i uczciwa dla wszystkich graczy, oraz wejście na tyle proste, żeby ktoś mógł zagrać zaraz po kliknięciu linku, bez zakładania konta. Te dwie rzeczy przesądzały o tym, czy z gry da się realnie korzystać w grupie, więc rozstrzygnęliśmy je najpierw.

Stąd opis podąża za budową: po co ludzie w ogóle grają razem, potem twardy rdzeń rozgrywki w czasie rzeczywistym, a na końcu praca nad zbiciem progu wejścia do zera.

Wzięcie ryzyka na pierwszy ogień daje też szybką odpowiedź, czy sam pomysł się broni. Gdyby uczciwa, spójna rozgrywka w czasie rzeczywistym okazała się nieopłacalna, znacznie lepiej dowiedzieć się tego w pierwszym tygodniu niż po dobudowaniu wszystkich trybów. Uprzątnięcie tego, co może wywrócić projekt, czyni obiecany termin możliwym do dotrzymania.

Stan gry w czasie rzeczywistym dla 2-8 graczy

Twardym rdzeniem technicznym LocoStory jest rozgrywka w czasie rzeczywistym. Wszyscy gracze w pokoju - od dwóch do ośmiu - muszą widzieć ten sam stan gry w tym samym momencie: tę samą rundę, to samo odgadywane miejsce, ten sam czas na zegarze, te same wyniki. Gra, w której każdy widzi nieco inną wersję rzeczywistości, po prostu się rozpada.

Trudność bierze się z tego, że wielu graczy działa jednocześnie. Ktoś stawia pinezkę, ktoś inny wciąż się rozgląda, komuś kończy się czas - a stan gry musi pozostać spójny u wszystkich naraz, bez sytuacji, w której dwie osoby widzą sprzeczne wyniki albo różny etap rundy. Utrzymanie jednej, wspólnej prawdy o rozgrywce, aktualizowanej na bieżąco u każdego, jest sednem tej części pracy.

Zaprojektowanie tego tak, żeby sprawiało wrażenie natychmiastowego i nigdy się nie rozjeżdżało, jest znacznie trudniejsze, niż wygląda. To dokładnie ten rodzaj inżynierii, którego gracz nie zauważa, gdy działa - po prostu gra się płynnie i wszyscy są na tej samej stronie - a który boleśnie rzuca się w oczy w chwili, gdy stan się rozsynchronizuje.

Warto powiedzieć konkretnie, czym jest ten stan. To nie jedna liczba - to bieżąca runda, aktualnie odgadywane miejsce, upływający czas, pinezki już postawione przez poszczególnych graczy, punkty, a w trybach turowych także kolejność. Każdy z tych elementów może się zmienić w dowolnym momencie u dowolnego gracza, a wszyscy pozostali muszą tę zmianę zobaczyć spójnie i od razu.

Do tego dochodzą zdarzenia, które muszą być rozstrzygnięte jednoznacznie, choć przychodzą jednocześnie. Dwóch graczy stawia pinezkę w tej samej chwili; komuś kończy się czas dokładnie wtedy, gdy zatwierdza odpowiedź. Gra musi mieć jedno, spójne rozumienie tego, co się stało i w jakiej kolejności, żeby wynik był ten sam dla wszystkich, a nie zależał od tego, czyj klik dotarł pierwszy dzięki szybszemu łączu.

Do tego dochodzi rzeczywistość niedoskonałych połączeń. Ktoś na chwilę wypada z gry i wraca, komuś zawiesza się przeglądarka w środku rundy. Wspólny stan musi to znieść: gracz, który wraca, powinien natychmiast zobaczyć aktualną sytuację, a nie tę sprzed rozłączenia. Zaprojektowanie rozgrywki tak, żeby przetrwała takie drobne awarie bez psucia zabawy reszcie, odróżnia grę, w którą da się grać, od demonstracji technicznej.

Zakres od dwóch do ośmiu graczy ma znaczenie także technicznie. To rozmiar, przy którym każdy uczestnik jest aktywny i widoczny, a liczba jednoczesnych działań, które trzeba pogodzić, jest realna, ale opanowana. Zaprojektowanie spójnego stanu dla takiej grupy to inne zadanie niż dla tłumu obserwatorów - tu każdy jest graczem, którego ruchy natychmiast zmieniają obraz gry dla pozostałych.

Uczciwość: opóźnienia i spójność

W grze rywalizacyjnej w czasie rzeczywistym uczciwość jest wszystkim. Nikt nie może mieć przewagi ani straty tylko dlatego, że ma szybsze albo wolniejsze łącze. O wyniku ma decydować trafność zgadywania, a nie prędkość łącza.

To znaczy, że zegar, moment odsłonięcia odpowiedzi i naliczanie punktów muszą być spójne dla wszystkich, niezależnie od tego, gdzie kto siedzi i jak dobre ma łącze. Pogodzenie tego z naturą sieci, w której dane docierają do różnych osób w nieco różnym czasie, wymaga świadomych decyzji o tym, co i kiedy jest rozstrzygane - tak, żeby wynik był sprawiedliwy, a nie zależny od pingu.

Obsługa opóźnień w sposób, który utrzymuje grę uczciwą, to duża i mało widoczna część projektu. Gdy jest zrobiona dobrze, nikt o niej nie myśli - po prostu wygrywa ten, kto lepiej zgadywał. Gdy jest zrobiona źle, każda przegrana zamienia się w podejrzenie, że zawiniło łącze, a nie umiejętności, i cała rywalizacja traci sens.

Dobrze oddaje to prosty przykład. Zegar odlicza do końca rundy, a dwóch graczy zatwierdza odpowiedź tuż przed czasem - jeden z szybkim łączem, drugi z wolnym. Jeśli o tym, czyja pinezka zdążyła, zdecyduje samo opóźnienie sieci, gracz z wolniejszym łączem przegrywa nie dlatego, że gorzej zgadywał, tylko dlatego, że jego odpowiedź dotarła później. To dokładnie ta niesprawiedliwość, którą trzeba wyeliminować.

Rozwiązanie polega na tym, żeby to jedno, wspólne miejsce rozstrzygało, co się liczy, a nie przeglądarka najszybszego gracza. Kiedy runda się kończy, kiedy odpowiedź jest zatwierdzona, jak liczą się punkty - te decyzje muszą zapadać spójnie dla całego pokoju, na podstawie reguł, które są takie same dla każdego. Dopiero wtedy rywalizacja mierzy umiejętności, a nie jakość łącza.

Ostatecznie chodzi o zaufanie do wyniku. Gracze zaakceptują porażkę, jeśli wierzą, że przegrali uczciwie - ale jedno podejrzenie, że zdecydowało łącze, a nie umiejętności, potrafi zepsuć całą rywalizację. Rozstrzygnięcia musiały więc przeskoczyć poprzeczkę wyższą niż spójność: miały być odczuwalnie sprawiedliwe dla każdego przy stole, a to zajęło znacznie więcej czasu.

Poruszanie się po świecie: mapy i Street View

Światem gry w LocoStory jest prawdziwy świat, dostępny przez mapy i Street View. Gracze poruszają się po panoramach, rozglądają, podążają za wskazówkami i wracają na mapę, żeby postawić pinezkę. To integracja, która musi być płynna, bo cała rozgrywka opiera się na swobodnym, natychmiastowym poruszaniu się po realnych miejscach.

Wpięcie tego gładko w grę - tak, żeby było szybkie, responsywne i nie przerywało rytmu rozgrywki - było osobnym wyzwaniem. Płynność ma tu bezpośrednie przełożenie na frajdę: gra, w której świat ładuje się z zacięciami albo poruszanie się jest ociężałe, przestaje wciągać, niezależnie od tego, jak dobry jest pomysł na tryby.

Oparcie świata gry na zewnętrznej usłudze map to też decyzja z konsekwencjami. Trzeba wpiąć ją tak, żeby działała szybko i przewidywalnie, a jednocześnie zaprojektować rozgrywkę z myślą o jej ograniczeniach - bo to, co pokazuje panorama, i to, gdzie da się przejść, wyznacza granice tego, co gra może zaproponować. Płynne pogodzenie własnej logiki gry z zachowaniem zewnętrznej usługi jest częścią tej pracy, której gracz nigdy nie widzi.

Jest w tym też szczególny urok: całą planszą gry jest prawdziwy świat. Każde miejsce, w którym ktoś kiedyś był, może stać się rundą - od zaułka rodzinnego miasteczka po plażę z wakacji na drugim końcu globu. Ta nieograniczona plansza sprawia, że gra się nie wyczerpuje, bo miejsc, którymi warto się podzielić, jest tyle, ilu jest grających.

Świat jako plansza ma też swój koszt: prawdziwe miejsca bywają nierówne. Nie wszędzie da się przejść, nie wszystko jest jednakowo pokryte panoramami, a niektóre zakątki wyglądają myląco podobnie. Zaprojektowanie rozgrywki tak, żeby te nierówności realnego świata nie psuły zabawy, tylko stawały się częścią wyzwania, było jednym z drobniejszych, lecz ważnych elementów tej pracy.

Ta nieprzewidywalność ma zresztą swój plus. Skoro planszą jest prawdziwy świat, a miejsca wybierają sami gracze, żadne dwie rozgrywki nie są takie same, a treść gry odnawia się sama, bo powstaje z doświadczeń ludzi, którzy przy niej siedzą. To jeden z powodów, dla których taka gra nie nudzi się tak szybko jak zamknięty zestaw poziomów: dopóki są nowi ludzie i nowe miejsca, którymi chcą się podzielić, dopóty jest w co grać. Dla produktu oznacza to zdrową dynamikę - im więcej ludzi gra, tym bogatsza staje się gra dla kolejnych.

Prywatne pokoje na kod

LocoStory gra się w prywatnych pokojach chronionych kodem, a nie z przypadkowymi ludźmi z internetu. To świadomy wybór wynikający z celu gry: skoro chodzi o zbliżanie konkretnych osób - zespołu, grupy znajomych - rozgrywka musi toczyć się w gronie, które samo się zaprasza.

Tworzenie i dołączanie do pokoju jest proste: ktoś zakłada pokój, dzieli się kodem, reszta wchodzi. Ta prostota nie jest przypadkowa - im mniej kroków między pomysłem „zagrajmy" a momentem, w którym wszyscy są w środku, tym większa szansa, że gra faktycznie się odbędzie, a nie utknie na organizacji.

Zrezygnowaliśmy świadomie z dobierania graczy z całego internetu. W grze, której celem jest zbliżanie konkretnych osób, granie z obcymi mijałoby się z sensem - a przy okazji otwierałoby drzwi do wszystkich problemów, jakie niesie anonimowa rozgrywka z nieznajomymi. Prywatny pokój na kod utrzymuje zabawę tam, gdzie ma wartość: wśród ludzi, którzy sami się na nią umówili.

Rozmiar pokoju - od dwóch do ośmiu osób - też nie jest przypadkowy. To zakres, w którym każdy zdąży się wypowiedzieć i pokazać swoje miejsce, a rozgrywka nie rozmywa się w tłumie. Mniejsza grupa sprzyja rozmowie, którą gra ma wywołać, a górna granica pilnuje, żeby każdy pozostał uczestnikiem, a nie widzem.

Gra bez zakładania konta

Do pokoju można wejść jako gość, bez rejestracji - wystarczy kliknąć link. To pozornie drobiazg, a w grze społecznościowej decyduje o wszystkim. Jeśli żeby zagrać, każdy musi najpierw założyć konto, potwierdzić e-mail i wymyślić hasło, połowa grupy nigdy nie dołączy - odpadnie na pierwszym ekranie rejestracji.

Zdjęcie tej bariery jest różnicą między grą, w którą ludzie faktycznie grają razem, a taką, w którą tylko zamierzają zagrać „kiedyś". Wejście gościa sprawia, że od kliknięcia linku do bycia w grze dzielą sekundy, a nie formularz. Dla produktu, którego cała wartość powstaje wtedy, gdy zbierze się grupa, to jedna z najważniejszych decyzji, jakie podjęliśmy.

Zbudowanie tego dobrze nie jest przy tym tak proste, jak brzmi. Gość musi móc w pełni uczestniczyć w rozgrywce w czasie rzeczywistym, mieć swoją tożsamość na czas gry i swój wynik, a wszystko to bez trwałego konta pod spodem. Pogodzenie zerowego progu wejścia z pełnoprawnym udziałem w grze wymagało przemyślenia, kto jest kim w pokoju, gdy formalnie nie jest nikim.

Wejście bez konta nie zamyka przy tym drogi tym, którzy chcą zostać na dłużej. Gość, któremu gra się spodoba, może później założyć konto i zachować swoją historię - ale to jego wybór, zrobiony po tym, jak produkt już go przekonał, a nie warunek postawiony przed pierwszą rundą. Kolejność ma znaczenie: najpierw wartość, potem ewentualne zobowiązanie.

W tle tego wszystkiego stoi jedna zasada, którą kierowaliśmy się przy każdej decyzji: nic nie może stać między grupą a początkiem zabawy. Konto, instalacja, konfiguracja - każda taka przeszkoda to moment, w którym ktoś odpada, a wraz z nim rozpada się grupa, dla której cała gra ma sens. Dlatego tak wiele pracy poszło w rzeczy, których celem jest po prostu zejść graczom z drogi.

Dostępne dla każdego przez przeglądarkę

LocoStory działa w przeglądarce, więc każdy może dołączyć z dowolnego urządzenia, niczego nie instalując. Dla spontanicznej gry społecznościowej to warunek konieczny: moment, w którym grupa ma ochotę zagrać, jest ulotny, a każda przeszkoda - pobieranie aplikacji, instalacja, zgody - to szansa, że zapał zdąży opaść, zanim wszyscy będą gotowi.

Web sprawia, że próg „zagrajmy teraz" jest tak niski, jak to możliwe: link, kliknięcie, gra. Ta dostępność, połączona z wejściem gościa, to dwie strony tej samej decyzji - by pomiędzy ochotą na wspólną zabawę a jej początkiem nie stało zupełnie nic. W produkcie, który żyje z tego, że ludzie zbierają się razem, obniżanie tego progu jest funkcją równie ważną jak same tryby gry.

Przeglądarka niesie też własne wyzwania. Płynna rozgrywka w czasie rzeczywistym, z mapami i panoramami, musi działać na różnych urządzeniach i przy różnej mocy sprzętu, od mocnego laptopa po telefon. Utrzymanie tego samego, dobrego wrażenia w tak szerokim zakresie warunków jest częścią tego, co sprawia, że „po prostu kliknij i graj" faktycznie działa dla każdego, a nie tylko dla najlepiej wyposażonych.

Co ten projekt mówi o tym, jak pracujemy

Sklonowanie gry w zgadywanie miejsc to praca prosta do wykonania. Utrzymać osiem osób przy jednej spójnej prawdzie, rozstrzygnąć dwa kliknięcia, które przyszły w tej samej chwili, i sprawić, żeby nikt nie mógł zrzucić przegranej na swoje łącze - to tam siedzi właściwa inżynieria, i nic z niej nie widać na zrzucie ekranu.

Osiem osób i jeden wspólny zegar to nie jest coś, co ktokolwiek zweryfikuje sam przy biurku. Synchronizację trzeba było męczyć prawdziwymi przeglądarkami na prawdziwych łączach, celowo psutych, bo wyścig wymagający dwóch ludzi klikających w tej samej chwili nigdy nie pojawi się w teście jednostkowym. To także powód, dla którego testy trafiły do kogoś, kto ich nie pisał: odtworzenie takiej usterki wymaga więcej rąk, niż ma autor.

Sama gra jest tu drugorzędna wobec tego, co ten projekt pokazuje. Przenosi się z niego wspólny stan pozostający spójnym, gdy działa na nim naraz cała grupa, wynik, którego nikt nie może przypisać opóźnieniom łącza, i sesja przeżywająca wypadnięcie przeglądarki w środku rundy. Edytory współdzielone, dashboardy na żywo i ekrany transakcyjne potrzebują dokładnie tego samego.

Warto zauważyć, jak niewiele z najtrudniejszej inżynierii tutaj widać. Gracz ma przed sobą płynną, wciągającą zabawę; nie ma przed sobą wspólnego stanu rozstrzyganego dla ośmiu osób naraz ani opóźnień obsłużonych tak, by nikt nie przegrał przez ping. Od tych niewidocznych rzeczy zależy jednak, czy wieloosobowa gra się broni, czy rozpada przy pierwszej rozjechanej rundzie.

Gry wieloosobowe mają reputację jednych z trudniejszych rzeczy do zrobienia dobrze, właśnie dlatego, że łączą wszystko naraz: czas rzeczywisty, wielu użytkowników, niedoskonałą sieć oraz wysokie oczekiwania co do płynności. To, że LocoStory po prostu działa - że ośmioro ludzi klika naraz, a gra pozostaje spójna i wciągająca - jest samo w sobie dowodem, że ten rodzaj inżynierii mamy przećwiczony.

Klientowi z pomysłem na produkt wieloosobowy albo społecznościowy daje to coś namacalnego: zespół, który najpierw zapyta, po co ludzie mają z tego korzystać razem, a potem zbuduje pod spodem coś, co wytrzyma, gdy zaczną korzystać naprawdę - w tej samej chwili, z różnych miejsc i różnych łączy.

Co powiedzielibyśmy innemu zespołowi

Jeśli myślisz o zbudowaniu produktu, w którym ludzie działają wspólnie w czasie rzeczywistym - gry, narzędzia do współpracy, czegokolwiek dla grupy - pięć spraw warto przesądzić wcześnie.

Żadnej z tych rzeczy nie da się dołożyć później i właśnie dlatego warto rozstrzygnąć je przed pierwszym sprintem. Zwłaszcza spójny wspólny stan nie jest funkcją dodawaną po fakcie - to założenie wbudowane w sposób, w jaki pisze się każdą pozostałą część systemu.

Najczęstsze pytania klientów

Czy LocoStory to Wasz własny produkt, czy zbudowaliście go dla klienta?

To nasz własny. Sami go wymyśliliśmy, zaprojektowaliśmy, zbudowaliśmy i wydaliśmy. Pokazujemy go, bo to dowód tego, co dowozimy, a dla klientów budujemy tak samo.

Czy zbudowalibyście produkt multiplayer działający w czasie rzeczywistym?

Tak. LocoStory synchronizuje stan rozgrywki w czasie rzeczywistym dla wielu graczy naraz, a to samo podejście działa dla dowolnego produktu, w którym ludzie działają wspólnie w tym samym momencie.

Jak utrzymujecie synchronizację i uczciwość rozgrywki przy różnych opóźnieniach?

Projektujemy stan tak, by wszyscy gracze widzieli tę samą rozgrywkę w tym samym momencie, a wynik nie zależał od tego, kto ma szybsze łącze. W grze rywalizacyjnej uczciwość wobec opóźnień jest wymogiem, nie detalem.

Czy produkt może działać bez zakładania konta?

Tak. W LocoStory można wejść do gry jako gość, bez rejestracji - wystarczy kliknąć link. Przy produkcie społecznościowym zdjęcie bariery konta jest różnicą między grą, w którą ludzie faktycznie grają razem, a taką, w którą tylko zamierzają.

Czy potraficie zintegrować mapy i Street View albo podobną usługę?

Tak. Świat gry to prawdziwy świat, po którym gracze poruszają się w panoramach Street View. Płynne wpięcie takiej integracji w rozgrywkę było częścią projektu.

Czy to my jesteśmy właścicielem kodu i kont?

Tak. Wy jesteście właścicielem kodu, repozytoriów i kont. Możemy przekazać wszystko Waszemu wewnętrznemu zespołowi, kiedy tylko zajdzie potrzeba, bez uzależniania od nas.

Masz produkt, w którym ludzie działają razem w czasie rzeczywistym?

Budujemy produkty wieloosobowe i realtime - od pomysłu na to, po co ludzie ich używają, po spójny, uczciwy stan pod obciążeniem. 30 minut rozmowy wystarczy, żebyśmy powiedzieli, ile realnie zajmie Twój.

Umów rozmowę
← Wróć do wszystkich realizacji