Siedmiosekundowe sektory: jak TUNL wyznacza tempo przelotu
Krzywa trudności mówi ci, jak trudna jest gra w danym momencie. Nie mówi ci, jak odczuwany jest ten przelot. To historia zastąpienia stosu niezależnych krzywych planem i zmierzenia, czy to zadziałało.
Przez pierwszy tuzin wersji trudność TUNL była zbiorem oddzielnych krzywych. Odstęp stalaktytów miał swoją krzywą, odstęp min miał swoją krzywą, odstęp monet miał swoją krzywą, a każda z nich była funkcją tego, jak głęboko w jaskini się znajdowałeś. Każda krzywa miała sens sama w sobie. Razem tworzyły przelot, który odczuwany był jako nierówny, a gdy w końcu to zmierzyłem, liczby mówiły to samo, co odczucie.
Co wykazał audyt
Odtworzyłem prawdziwe generatory i prawdziwą fizykę za pomocą botów na czterech poziomach umiejętności, po sto przelotów każdy, na 24 różnych dziennych ziarnach. Potem sprawdziłem, kiedy działy się nowe rzeczy i gdzie umierały boty. Wyróżniły się cztery problemy:
- Tempo było nierówne. Siedem nowych elementów pojawiało się w pierwszych dziewięciu sekundach. Potem nic nowego przez trzynaście sekund. Potem pięć w kolejnych czternastu. Potem już nigdy nic nowego przez resztę przelotu.
- Pierwszy błąd był śmiertelny dla początkujących. 41% przelotów najsłabszego bota kończyło się w granicach ośmiu punktów od momentu, gdy ściany stawały się śmiertelne, a 91% śmierci tego bota było spowodowane ścianami. Otwarta bezpieczna strefa na początku tylko odbijała cię z powrotem, więc nie mogła nauczyć jedynej rzeczy, której początkujący musieli się nauczyć.
- Środek był urwiskiem. Gęstość stalaktytów podwajała się dwukrotnie między wynikiem 300 a 1150, co kończyło każdy przelot bota eksperckiego gdzieś w przedziale 500-900.
- Miny potroiły się przez przypadek. Rzadsze stalaktyty uniemożliwiły regule rozmieszczenia odrzucanie min i monet, więc liczba min potroiła się, choć nikt o to nie prosił. To sprzężenie ma znaczenie później.
Pomysł: przelot to sekwencja sektorów
Zamiast oddzielnych krzywych napisałem plan. Przelot to sekwencja sektorów, każdy trwający siedem sekund przy stałej prędkości referencyjnej. Sektor 0 to bezpieczny lot otwierający. Każdy kolejny sektor albo wprowadza dokładnie jedną nową rzecz, albo nasila coś, co już znasz. Powiadomienie "SEKTOR n" pojawia się na każdej granicy od trzeciej wzwyż, żeby gracz mógł poczuć strukturę.
Długość jest celowo mierzona w sekundach, nie w pikselach. Jaskinia wciąż przyspiesza, więc stała liczba pikseli świata oznacza coraz mniej czasu w miarę trwania przelotu. Sektor zdefiniowany w pikselach stawałby się coraz krótszy. Zdefiniowany w sekundach referencyjnych i przeliczony z powrotem na pozycję w świecie poprzez całkowanie trendu prędkości referencyjnej, granica sektora pozostaje czystą funkcją pozycji. Ma to znaczenie, ponieważ cała gra musi pozostać identyczna dla każdego gracza: napisałem dlaczego we wpisie o codziennej jaskini.
| Sektor | Wynik | Co nowego |
|---|---|---|
| 0 | 0 - 50 | Otwarty korytarz. Złote monety i klepsydry. |
| 1 | 50 - 110 | Pierwsze stalaktyty, moneta tarczy |
| 2 | 110 - 180 | Amunicja, magnes |
| 3 | 180 - 250 | Pierwsza mina (samotna, wyśrodkowana), moneta bomby |
| 4 | 250 - 330 | Głazy |
| 5 | 330 - 410 | Zwężenia, stopniowo pojawiające się |
| 6 | 410 - 490 | Działa |
| 7 | 490 - 580 | Spadające stalaktyty |
| 8 | 580 - 680 | Moneta trucizny |
| 9 | 680 - 770 | Moneta drenażu |
| 10+ | 770 i więcej | Nic nowego. Tempo wciąż rośnie. |
Dwie reguły decydują o kolejności. Narzędzia pojawiają się przed zagrożeniem, na które odpowiadają. Moneta tarczy pojawia się jeden sektor przed pierwszą miną, żeby gracz miał coś do wydania. A narzędzia nie mogą pojawić się zbyt późno, ponieważ codzienne misje ("zbierz pięć naboi", "zdobądź dwa magnesy", "użyj trzech bomb") są kumulatywne na dany dzień i muszą pozostać osiągalne dla graczy okazjonalnych, których przeloty kończą się mniej więcej w drugim lub trzecim sektorze. Zanim przesunąłem jakąkolwiek bramkę monety, sprawdziłem listę misji.
Gęstości to tempo, nie odstępy
Wewnątrz sektora gęstość zagrożenia to tempo na sekundę referencyjną: sloty stalaktytów to dwa na sekundę w sektorze 1, rosnące o 14% na sektor, łagodniejąc do 8% na sektor od sektora 8 wzwyż. Miny zaczynają się od 0,28 na sekundę w sektorze 3, rosnąc o 20% na sektor, a potem o 10%. Odstęp w pikselach jest wyprowadzany z tempa i utrzymuje sztywny dolny próg, więc tempo może rosnąć bez ograniczeń, a każdy przelot i tak się kończy. To mina to gwarantuje, ponieważ mina może znaleźć się w dowolnym miejscu korytarza, więc żadna szerokość korytarza nie sprawia, że wystarczająco szybka jaskinia jest do przetrwania.
Każdy sektor to również ząb piły. Jego pierwsza jedna piąta działa na 55% docelowej gęstości, z dodatkowymi kandydatami na monety jako nagrodą, a potem narasta od 80% do 115% w stronę kolejnej granicy. Więc gracz dostaje wytchnienie na początku każdego sektora, potem rosnącą presję, potem nowy pomysł. Stały wzrost jest wyczerpujący. Wzrost z przerwami to coś, co ludzie nazywają sprawiedliwym.
Strojenie według zmierzonego tempa, nigdy według liczby odstępu. Reguły rozmieszczenia odrzucają obiekty, które wylądowałyby w niesprawiedliwym miejscu, a frakcja, którą odrzucają, zmienia się wraz z gęstością. Zmniejszenie wartości odstępu o połowę nie podwaja zagrożeń, i to sprzężenie jest dokładnie tym, jak liczba min potroiła się za pierwszym razem. Więc każde przejście strojenia kończy się powtórką, która liczy obiekty faktycznie rozmieszczone na rzeczywistą sekundę.
Zadrapania kadłuba: wybaczanie ściany, nie kolca
Druga duża zmiana dotyczyła początkujących, którzy umierali przy pierwszej ścianie. Statek ma teraz dwa zadrapania kadłuba. Kontakt ze ścianą zużywa jedno, odbija statek z powrotem do środka i mówi "ZADRAPANIE!". Gdy żadne nie zostanie, następny kontakt kończy przelot.
Zaczęły jako tymczasowa pomoc, która wygasała w sektorze 3. Gdy każdy przelot zaczął się od wlatywania w wylot tunelu ze śmiertelnymi ścianami od samego początku, sensowne stało się, żeby trwały cały przelot, i tak jest teraz. Okres łaski po zadrapaniu chroni tylko przed ścianą. Stalaktyty, miny, głazy i strzały pozostają śmiertelne, a statek nie miga. Gdyby łaska obejmowała wszystko, dobry gracz mógłby celowo otrzeć się o ścianę, żeby przelecieć przez pole stalaktytów, więc reguła jest taka, że zadrapania wybaczają błędy ze ścianą, a bezpośrednie trafienia to zadanie tarczy.
Wypróbowałem też oczywistą alternatywę, darmową tarczę w tym samym momencie. Pomogło to głównie silnemu poziomowi, który wykorzystywał ją do przeżycia stalaktytu później, i podniosło ich medianowy przelot o około 72%. Nagradzało umiejętność, która nie potrzebowała pomocy, więc z tego zrezygnowałem.
Czy zadziałało?
Te same boty, na tych samych ziarnach, przed i po. "Średni" to poziom, którego zachowanie najlepiej pasowało do prawdziwych graczy w poprzedniej wersji.
| Poziom bota | Mediana wyniku | Osiąga 100 | Umiera w granicach 8 punktów od momentu, gdy ściany stają się śmiertelne |
|---|---|---|---|
| Początkujący | 65 → 95 | 4% → 39% | 41% → 3% |
| Średni | 107 → 155 | 32% → 70% | 16% → 2% |
| Dobry | 205 → 401 | 80% → 91% | 1% → 1% |
| Ekspert | 715 → 928 | 100% | 0% |
Wskaźnik śmierci na sektor dla średniego poziomu stał się rampą (38%, potem 60%, potem 68% w pierwszych trzech sektorach zagrożenia) zamiast urwiskiem. To kształt, jakiego chciałem: przelot powinien kończyć się stopniowo coraz bardziej prawdopodobnie, a nie nagle na pewno.
Czego to nie naprawiło
Eksperci wciąż uderzają w ścianę czasu reakcji w okolicach sektorów 10 i 11, gdzie kończy się 63%, a potem 77% eksperckich przelotów. Przed planem było to 100% w sektorach 7 i 8, więc to prawdziwa poprawa, ale nie jest to gładka rampa, jaką mają wcześniejsze sektory. Wypróbowałem dwie oczywiste poprawki: wolniejszy wzrost długości stalaktytów i wolniejszą rampę prawdopodobieństwa zwężeń. Obie okazały się bez efektu. Pozostałą dźwignią jest sama prędkość, i zostawiłem ją w spokoju, ponieważ prędkość celowo nigdy nie osiąga plateau, a jaskinia, która przestaje przyspieszać, to jaskinia, która przestała wymagać czegoś nowego od bardzo dobrego gracza.
Co bym zachował
Dwa nawyki. Po pierwsze, zaplanuj sekwencję tego, co gracz napotyka, nie tylko jak trudna jest każda rzecz: jeden nowy pomysł na raz czyta się jako gra, która cię uczy, podczas gdy pięć naraz czyta się jako gra, która cię zasypuje. Po drugie, nigdy nie ufaj zmianie trudności, dopóki symulacja nie powie ci, gdzie umiera każdy typ gracza. Obie największe niespodzianki tutaj, liczba min i śmierci przy pierwszej ścianie, były niewidoczne podczas grania i oczywiste z tabeli.
Możesz przeczytać wersję tego samego planu skierowaną do gracza w poradniku jak grać.