Kontynuujemy cykl faktoidalnych tytułów, bo jak widzę tylko wtedy do mnie linkują (nie wszyscy, szczegóły w komentkach do wpisu LEM is down). Od paru dni moje dziecko męczy mnie, żebyśmy kupili nowe SimCity, bo ładnie pan w reklamie śpiewa i miasteczko się fajnie buduje. Prawie to SimCity kupiłem, ale coś mnie tknęło, żeby sobie poczytać o grze w internecie.

I okazało się, że SimCity to casus Diablo III, tylko że EA to nie Blizzard. Gra wymaga wiecznego połączenia z internetem. Fakt, przemknęły mi przez walla jakieś screeny growych znajomych, na których to screenach widać, że nie da się załadować miasta, że wszystkie serwery zajęte, że nie da się zagrać – generalnie masakra.

Wielkie firmy bardzo starają się nas przekonać, że przyszłość leży w chmurze, czyli usługach świadczonych nie na naszych komputerach, tylko gdzieś w gąszczu serwerów, a do nas dociera tylko obraz, na który możemy wpływać. W porządku, kupuję tę wizję i nawet sam jestem jej orędownikiem, bo wszystko w tym kierunku zmierza. Ale na razie mamy epickie failstarty (literówka celowa), udowadniające, że nawet najwięksi nie są gotowi na tę epokę. Dlaczego? Proste: bo oszczędzają hajs. Czy raczej nie chcą nim (całkiem racjonalnie) palić w piecu.

Na swoim wallu widzę wpis gościa z branży, dziwiącego się, że EA nie robiła żadnych estymacji obciążeń serwerów. W odpowiedzi pani z EA Polska pisze o ciemnogrodzie i gratuluje zdolności estymowania ruchu na podstawie zamówień na Originie (cyfrowy sklep EA)… Puściły pani nerwy, zupełnie niepotrzebnie. Bo moim zdaniem EA zrobiło estymację, tylko zawiodły cyferki. Owszem, była zamknięta beta i ta zamknięta beta pięknie działała, bo była w niej ograniczona liczba ludności. Ale nikt normalny nie stawia serwerów do gry z założeniem, że mają wytrzymać maksymalne potencjalne obciążenie. Nie mają. Nikt nie wytrzyma finansowo takiego założenia. I prawdopodobieństwo takiego obciążenia jest bliskie zeru.

Przyjęto więc zapewne za wyznacznik preordery prawdziwe i cyfrowe, policzono ile jest sell-inu (czyli ile poszło kopii do sklepów), policzono procentowo potencjalny sell-through (ile kopii trafi do rąk ludzi), policzono na tej podstawie maksymalne CCU (concurrent users, użytkownicy będący jednocześnie online) i do tej liczby dostosowano serwery.

Tylko że to wszystko jest zawsze pisanie patykiem po wodzie, zwłaszcza przy takiej skali. Popatrzcie na przykładowe wyliczenia (moje, a więc wzięte z kosmosu, ale chcę uzmysłowić wpływ drobnych zmian na efekt końcowy). Założenia mam takie:

1) Origin = 10% sprzedaży tytułu EA = 300 tysięcy (bo założyłem sobie sell-in na poziomie 3 milionów, to ta skala mniej albo więcej. Wszystko jedno, czy sell-in wynosi milion czy siedem milionów)
2) Sell-in (zamówienia sklepów) = 3 miliony
3) Sell-through = 10% w pierwszym dniu
4) userzy kupujący grę uruchamiają ją tego samego dnia w 70% przypadków

Liczymy sobie maksymalne CCU. 300.000 razy 70% plus 3.000.000 razy 10% razy 70%. 210.000 plus 210.000 równa się 420.000. Na tyle ustawiam swoje serwery i idę spać.

Ponieważ jednak dane są z okolic Jowisza, może się wydarzyć wszystko. Powiedzmy, że ludzie kupili grę i jednak 80% z nich postanowiło ją włączyć tego samego dnia (czemu nie, liczba jak każda inna). 300.000*0,8+3.000.000*0,1*0,8=480.000. To o 60.000 CCU więcej niż przy pierwszych założeniach, niby nic, ale to aż o 14,3% więcej ludzi niż nam się początkowo wydawało. To wystarczy, żeby SimCity się nie odpalało znaczącej liczbie ludzi, którzy hejtują potem na Amazonie (aktualnie gra ma ocenę userów 1.2/5.0) i wszystkich porównywarkach ocen.

Jeden głupi parametr (wyssany z palca) wpływa na stabilność całego produktu. Owszem, a przesunąłem tylko jeden suwak z kilku (które też się mogą dość dowolnie zmieniać). Oczywiście najbezpieczniej byłoby założyć wszystko na poziomie stuprocentowym, ale to całkowicie niemożliwe, żeby sprzedać wszystkie sztuki gry pierwszego dnia (jeśli tak by się stało, oznaczałoby to monstrualne niedoszacowanie potencjału rynkowego). Coś trzeba założyć.

Z mojego punktu widzenia jako klienta maksymalne obciążenie serwerów SimCity powinno wynosić 300.000+3.000.000 CCU, bo co mnie to wszystko obchodzi. Ale to się nie spina ani logicznie, ani biznesowo. Więc… no właśnie, jakie CCU mam zakładać jako wiceprezes Electronic Arts?

Udzielę wymijającej odpowiedzi: trzy razy większe niż przy premierze SimCity.

[EDIT]Słusznie zwrócono mi uwagę (thx Radek Z. z cdp.pl), że niedomaganie serwerów to tylko część problemu. Maxis twierdzi, że musi w locie poprawiać engine odpowiedzialny za zarządzanie danymi w ich bazach. Wspominam o tym, bo to kolejna rzecz, którą można było przewidzieć lub nie przewidzieć.