21 maja–1 sierpnia 2026, ze szczególnym uwzględnieniem prac wykonanych w lipcu
To wydanie przynosi dużą rozbudowę miejskiej części gry, nowy system ruchu ulicznego i przechodniów, pełne oświetlenie oraz cienie kierunkowe, start rakiet z proceduralnym ogniem i dymem, nową oprawę radiacji i śmierci, rozwiniętą prezentację robotów oraz szeroki pakiet poprawek silnika, fizyki, kolizji, uzbrojenia i zapisów gry.
Najważniejsze zmiany
- Znacząco rozbudowano pierwszy poziom: dodano miejską ulicę, wieloplanowe budynki, drzewa, chodniki oraz nowe elementy otoczenia.
- Ożywiono miasto dużą liczbą przechodniów oraz samochodów i autobusów w wielu wariantach.
- Dodano pełny system ruchu ulicznego: hamowanie przed postaciami i przeszkodami, bezpieczne odstępy, ponowny wjazd na mapę oraz zapis stanu pojazdów.
- Znacząco poprawiono efekty świetlne oraz dodano rozbudowany system dynamicznych cieni dla budynków, postaci, broni, pojazdów i obiektów świata.
- Dodano kierunkowe światło słoneczne oraz spójne cienie reagujące na pozycję, ruch i wysokość obiektów względem podłoża.
- Dodano selektywne poświaty emisyjne i metaliczne refleksy widoczne także w ciemności, m.in. na laserach, beczkach, panelach, lustrach i metalowych skrzynkach.
- Dodano sekwencję startu rakiet wraz z proceduralnym, generowanym bez sprite'ów ogniem, dymem, iskrami i falą startową.
- Dodano nową postać Sally oraz nowe zestawy wyglądu przechodniów.
- Dodano ekranowy efekt radiacji oraz całkowicie nową prezentację śmierci gracza.
- Mocno przebudowano fizykę obiektów ruchomych, windy, drabiny, skosy i kolizje w przestrzeni 2.5D; obiekty mogą teraz naturalnie znajdować się przed sobą lub za sobą.
- Rozbudowano zachowanie wszystkich latających broni oraz ich omijanie ruchomych przeszkód i pojazdów.
- Rozszerzono i ustabilizowano system save/load, w tym zapis rakiet, ruchu ulicznego i dokładnego położenia gracza w windzie.
- Dopracowano tło menu oraz wygląd, HUD i prezentacje robotów.
- Przeprowadzono dużą rozbudowę i stabilizację warstwy silnikowej, w szczególności konfiguracji grafiki, renderowania, wysokich częstotliwości odświeżania i zarządzania zasobami GPU.
Nowa zawartość i świat gry
- Przebudowano pierwszy poziom w rozległą miejską scenę z ulicą, chodnikami, wieloplanową zabudową, drzewami, ruchem oraz nowymi elementami interaktywnymi.
- Dodano
oBoy01— nowy system przechodniów z trybem bezczynności i chodzenia. - Dodano pięć wariantów chłopców oraz wariant dorosłego mężczyzny, każdy z dopasowanymi animacjami Idle/Walk.
- Rozbudowano
oGirl01o nowe warianty dziewczyn i dorosłej kobiety oraz osobne tryby Idle/Walk/Run. - Dodano Sally jako oddzielną postać z własnymi animacjami Idle/Run, trasami ruchu, przystankami, oczekiwaniem na gracza, krokami i płynnym znikaniem po zakończeniu sceny.
- Rozbudowano obsadę
rLevelOne: dodano dziesiątki nowych pieszych, dodatkowe gołębie, elementy ulicy i monety. - Dodano samochody osobowe i autobusy z oddzielnymi, animowanymi kołami.
- Dodano kilka wariantów nadwozi samochodów i autobusów.
- Dodano specjalne warianty pojazdów miejskich: taksówki, radiowozy i śmieciarkę.
- Przebudowano fragmenty Training Room związane z antygrawitacją, windami, drabinami, ActionBoxami i przyciskami.
- Dodano przedmiot Geigera do przebiegu treningu.
- Dodano nowe obiekty i grafiki rakiet oraz niewidzialny wariant ściany pomocniczej.
Ruch uliczny
- Każdy pojazd otrzymuje własną, lekko zróżnicowaną prędkość przejazdu.
- Dodano płynne przyspieszanie i hamowanie.
- Pojazdy wykrywają gracza, NPC, przeciwników, inne pojazdy oraz ruchome przedmioty na swoim pasie.
- Wykrywanie przeszkód opiera się na linii podstawy/„stóp”, dzięki czemu wysoki sprite autobusu nie reaguje błędnie na postać stojącą na chodniku za nim.
- Samochody i autobusy zachowują bezpieczny odstęp i nie przejeżdżają przez wolniejsze pojazdy.
- Po zwolnieniu drogi pojazd odczekuje chwilę przed ponownym ruszeniem, co daje bardziej naturalny efekt.
- Dodano bezpieczny system ponownego wjazdu pojazdu na mapę po opuszczeniu poziomu.
- Kilka pojazdów nie może już pojawić się jednocześnie w tym samym punkcie odrodzenia.
- Dodano naprawę starych zapisów, w których samochody mogły zostać odtworzone jeden na drugim.
- Pojazdy nie są już przesuwane przez skrzynie lub obiekty trzymane magnesem; nieprawidłowo nałożony przedmiot jest bezpiecznie wypychany.
- Koła są przypisywane do właściwego nadwozia, nie dublują się i pozostają zsynchronizowane po save/load.
- Obrót kół odpowiada rzeczywiście przebytej odległości.
- Nadwozie, koła, kolizja, perspektywa i cień korzystają ze wspólnej skali.
- Ruch uliczny zostaje poprawnie zatrzymany podczas prezentacji, tutoriali, pauzy interfejsu i innych zamrożeń świata.
Przechodnie i NPC
- Usprawniono zachowanie
oGirl01, Sally i pozostałych NPC-ów w przestrzeniach 2.5D, na ulicach oraz na powierzchniach typuFloorRoom. - Zsynchronizowano ich kolizje, skalę perspektywiczną i głębokość z graczem, pojazdami, bronią oraz elementami otoczenia.
- Przechodnie mają stabilną maskę kolizji niezależną od aktualnej animacji.
- Animacja chodzenia lub biegu jest odtwarzana tylko wtedy, gdy postać faktycznie się porusza.
- Postać zatrzymana przez gracza lub przeszkodę przechodzi do animacji Idle.
- Po zejściu gracza z drogi przechodzień czeka losowo od jednej do trzech sekund przed ruszeniem.
- Dodano osobistą przestrzeń przed pieszym, aby postacie nie wchodziły bezpośrednio w gracza.
- Ruch jest wykonywany w małych krokach, co zapobiega przechodzeniu przez cienkie przeszkody przy spadku liczby FPS.
- Przechodnie poprawnie omijają lub respektują samochody, autobusy, śmieci, skrzynie i pozostałe przeszkody uliczne.
- Piesi mogą przechodzić przed lub za wysokimi sprite'ami wtedy, gdy ich linie stóp znajdują się na różnych głębokościach.
- Postacie zapętlone na krawędziach miasta wracają z przeciwnej strony bez widocznego pojawienia się w środku ekranu.
- Naprawiono nagłe przenoszenie NPC pomiędzy oddzielnymi fragmentami ulicy podczas kontaktu z pojazdem.
- Naprawiono błąd
STRING argument is unsetw logice kolizjioBoy01i analogicznie zabezpieczonooGirl01.
Kot
- Rozbudowano zachowanie kota podążającego za graczem oraz jego poruszanie się po poziomach platformowych,
FloorRoomi ulicach. - Kot potrafi planować przejścia przez drabiny, schodzić z ich szczytów, przeskakiwać pomiędzy poziomami i wracać do bezpośredniego śledzenia gracza.
- Dodano współpracę z windami i ruchomymi platformami, w tym stabilne przewożenie niezależne od kolejności zdarzeń Step.
- Rozbudowano omijanie ścian, skrzyń, samochodów, autobusów i pozostałych dynamicznych przeszkód.
- Dodano wykrywanie utknięcia oraz awaryjne, bezpieczne odtworzenie kota w pobliżu gracza, używane tylko wtedy, gdy zwykła nawigacja nie może odzyskać postępu.
- Kot jest bezpiecznie przenoszony poza strefę śmierci; punkt powrotu jest sprawdzany pod kątem kolizji i podłoża.
- Ustabilizowano stany dołączenia do gracza, ukrycia, znikania i ponownego pojawiania się.
- Save/load zachowuje pozycję kota, jego warstwę, kierunek, stan animacji, dołączenie do gracza, ukrycie oraz położenie względem właściwej windy.
Gołębie
- Usunięto możliwość nagłych skoków pozycji o około 150–200 pikseli.
- Dodano zabezpieczenie odrzucające wyłącznie rzeczywisty teleport stanu, bez ograniczania prawidłowej prędkości lotu.
- Przywrócono wcześniejszą szybkość animacji, prędkość lotu i docelowy dystans ucieczki.
- Gołąb startujący z
oStreetzawsze nabiera wysokości i nigdy nie odlatuje w dół. - Start odbywa się pod naturalnie zmiennym kątem, a nie pionowo.
- Lądowanie także odbywa się po skosie, z bocznym podejściem i płynnym szybowaniem.
- Poprawiono planowanie punktu podejścia, aby ptak nie kończył powrotu pionowym opadaniem nad miejscem startowym.
- Poprawiono zachowanie przy
oBlackBarrel01; gołąb wybiera kierunek od beczki i zdobywa poziomy odstęp podczas wznoszenia. - Rozbudowano omijanie ścian, narożników i ciasnych tuneli oraz wykrywanie braku postępu.
- Dodano stabilne trasy powrotu do punktu startowego bez odbijania się i kręcenia w kółko.
- Gołąb zachowuje rzeczywiste miejsce lądowania na tymczasowej grzędzie zamiast teleportować się na wysokość domu.
- Poprawiono chodzenie po dachach — ptak nie może już wyjść poza podporę i iść w powietrzu.
- Poprawiono kolejność rysowania gołębi względem gracza, pojazdów i elementów ulicznych.
- Gołębie mogą zostać trafione laserem
oGun2, plazmą oraz wiązką elektrycznąoGun5. - Dodano pióra, odrzut, fizykę upadku i stan martwego gołębia.
- Dodano rozbudowany efekt porażenia prądem: rozświetlenie sylwetki, impulsy i proceduralne wyładowania.
- Stan, punkt startowy i położenie gołębia są stabilniej odtwarzane po wczytaniu gry, również dla starszych zapisów.
Rakiety i efekt startu
- Dodano niewidzialny, jednorazowy
oRocketTrigger, aktywowany przez wejście gracza w jego obszar. - Trigger może uruchamiać całą grupę przypisanych rakiet.
- Dodano
oRocket02, który po aktywacji płynnie przyspiesza w górę i jest usuwany dopiero po całkowitym opuszczeniu mapy. - Dodano wspólny
oRocketExhaustFX, który obsługuje wiele rakiet i utrzymuje ich ślad po zniknięciu źródła. - Cały efekt wydechu jest generowany proceduralnie — bez dodatkowych sprite'ów.
- Dodano długi, intensywny biało-żółto-pomarańczowy ogień z jasnym rdzeniem i gorącą obwódką.
- Dodano kilka warstw płomienia, dynamiczne falowanie, rozżarzone fragmenty, iskry i diamenty ciśnieniowe.
- Zmniejszono i wydłużono poświatę silnika, aby nie tworzyła dużych okręgów szerszych od rakiety.
- Płomień jest wystarczająco długi, aby wizualnie łączyć silnik z początkiem smugi dymu.
- Dodano gęstą, ciągłą smugę biało-popielatego dymu zamiast oddzielnych, widocznych kół cząsteczek.
- Ślad pozostaje w przestrzeni świata i nie podąża w górę za rakietą.
- Dym rozszerza się płynnie przez cały czas życia, osiągając około trzykrotnie większą szerokość niż pierwotna wersja efektu.
- Wraz z rozszerzaniem dym stopniowo się przerzedza i zanika.
- Usunięto drganie krawędzi smugi; organiczne nierówności są teraz stabilne w czasie.
- Wydłużono czas życia dymu i wygładzono fade-out, aby fragmenty nie znikały skokowo.
- Końcowy odcinek śladu jest dorysowywany poza rzeczywistą krawędź kamery, dzięki czemu dym nie urywa się przed końcem ekranu.
- Dodano chmurę startową rozchodzącą się przy ziemi, gorącą parę, pył, iskry i lekkie drżenie kamery.
- Rakieta wznowiona z zapisu nie odtwarza ponownie uderzenia startowego ani drżenia kamery.
Dynamiczne cienie i głębia sceny
- Dodano
oSunjako wspólne, kierunkowe źródło światła dla całej sceny. - Dodano kierunkowe cienie rzucane przez budynki pierwszego planu.
- Dodano cienie postaci gracza, kota, obcych, przechodniów, Sally, gołębi i martwych postaci.
- Dodano cienie wszystkich pięciu typów broni — zarówno przyczepionych do gracza, jak i sterowanych zdalnie.
- Dodano cienie skrzyń, ActionBoxów, beczek, kontenerów, toreb ze śmieciami, luster, apteczek, monet oraz innych obiektów świata.
- Dodano kompletne cienie samochodów, autobusów i ich kół.
- Cień zachowuje rzeczywisty kształt sylwetki obiektu zamiast korzystać wyłącznie z prostej elipsy.
- Kierunek wszystkich cieni jest stabilny i wspólny dla całej sceny; nie obraca się przypadkowo podczas ruchu gracza.
- Cienie poruszają się wraz z rzucającymi je obiektami, a ich długość uwzględnia fizyczną wysokość sylwetki i ustawienia światła.
- Nakładające się cienie są łączone bez wielokrotnego przyciemniania tego samego miejsca.
- Cienie budynków poprawnie padają na postacie i obiekty znajdujące się przed fasadami.
- Dodano maskowanie zasłoniętych fragmentów, dzięki czemu cień ukrytej postaci nie prześwituje przez samochód lub budynek.
- Naprawiono cień gracza w czasie skoku, wspinania po drabinie i noszenia broni.
- Naprawiono cień martwego gracza oraz jego kolejność rysowania.
- Cienie zachowują prawidłową perspektywę i sortowanie po linii stóp.
- Bufory cieni są renderowane w obniżonej rozdzielczości zależnej od częstotliwości odświeżania, aby ograniczyć koszt GPU.
- Dodano awaryjne przejście na prostsze cienie po nieudanej alokacji powierzchni oraz ograniczone czasowo ponawianie próby.
- Dodano osobną opcję Shadows w ustawieniach grafiki; stan opcji jest zapisywany i wczytywany.
Perspektywa 2.5D i kolejność rysowania
- Wdrożono system wzajemnego zasłaniania oparty na pozycji stóp: przedmiot lub postać może znaleźć się przed innym obiektem albo za nim bez ręcznego przełączania warstw.
- Ujednolicono skalowanie postaci, NPC i pojazdów na
oStreet— obiekty płynnie rosną w kierunku dolnej części ulicy. - Skala jest zakotwiczona w stopach, więc postać lub pojazd nie „podskakuje” przy zmianie rozmiaru.
- Ujednolicono sortowanie po linii stóp dla gracza, NPC, przeciwników, gołębi, broni, pojazdów i ruchomych przedmiotów.
- W pomieszczeniach platformowych gracz i martwa postać pozostają na warstwie
Player; uliczne głębokości nie przenikają już do Training Room. - Naprawiono przechodzenie przed i za śmieciami, kontenerami, pojazdami i innymi wysokimi sprite'ami.
- Obiekt wizualnie zachodzący na inny obiekt nie jest już automatycznie uznawany za kolizję, jeżeli ich podstawy znajdują się na różnych liniach głębokości.
- Podświetlenia ruchomych przedmiotów są rysowane w świecie i mogą zostać naturalnie zasłonięte przez pojazdy lub elementy pierwszego planu.
Gracz, windy, drabiny i skosy
- Poprawiono działanie kabin wind, ich drzwi, paneli wewnętrznych i zewnętrznych oraz synchronizację przejazdu pomiędzy piętrami.
- Poprawiono przenoszenie gracza przez poruszającą się windę oraz ponowne przyłączanie do jej podłogi.
- Gracz znajdujący się wewnątrz kabiny jest przesuwany razem z windą również w trudnych stanach brzegowych.
- Skok z windy odłącza gracza od kabiny bez natychmiastowego ponownego „przyklejenia”.
- Lądowanie z powrotem na windzie poprawnie przywraca stan podłoża i możliwość skoku.
- Po wczytaniu gry zachowywana jest dokładna pozycja i offset gracza względem windy.
- Save/load rozróżnia stanie na podłodze windy, przebywanie wewnątrz kabiny i lot w jej pobliżu.
- Ruch gracza może natychmiast anulować krótką kotwicę bezpieczeństwa po wczytaniu.
- Wydłużono automatyczny unik przed zjeżdżającą windą do bezpiecznego odstępu 30 px i utrzymano go przez cały manewr.
- Unik nie uruchamia się, gdy gracz prawidłowo jedzie wewnątrz kabiny lub stoi na jej podłodze.
- Poprawiono warstwy windy: korpus i wnętrze pozostają za graczem, a tylko drzwi mogą go zasłonić.
- Poprawiono zejście z drabiny na górną powierzchnię ActionBoxa lub skrzyni.
- Dodano jednokierunkowe przejście przez ActionBox przy wyskoku z drabiny; podczas opadania jego górna krawędź znów staje się solidna.
- Naprawiono zakleszczanie gracza między drabiną, ActionBoxem i jego proxy kolizyjnym.
- Poprawiono ręczne wyjście z kolizji ActionBoxa przy wciśniętym CTRL.
- Przebudowano zachowanie na obiektach
oMirror02: ślizg, przejścia przez wierzchołki, doliny między skosami i bezpieczne wychodzenie na podłoże. - Poprawiono łączenie lewego i prawego wariantu lustra: gracz płynnie pokonuje styk dwóch skosów bez zatrzymania, zakleszczenia lub błędnej zmiany kierunku.
- Usunięto migotanie kierunku oraz przełączanie animacji biegu w dolinie między dwoma skosami.
- Pionowy ruch gracza jest sprawdzany w krokach do 1 px, co zapobiega przeskakiwaniu przez cienkie ściany przy dłuższej klatce.
- Efekt kurzu jest teraz powiązany z rzeczywistym biegiem, a nie jedynie z używanym sprite'em.
Skrzynie, beczki i pozostałe obiekty ruchome
- Wprowadzono wspólne reguły fizyki i kolizji dla CrateBoxa, ActionBoxa, luster, czarnych beczek i apteczek.
- Dodano ograniczony ruch krokowy, który zapobiega tunelowaniu przez cienkie przeszkody.
- Usunięto nieograniczone pętle rozwiązywania kolizji przy prędkościach ułamkowych lub uszkodzonych danych.
- Dodano zabezpieczenia przed wartościami
NaNi nienaturalnie dużymi skokami prędkości. - CTRL sam ustanawia chwyt i nie przesuwa już obiektu ani jego niewidzialnego proxy.
- Pchanie i ciągnięcie korzystają ze spójnej prędkości i zachowują prawdziwy odstęp złapania.
- Ruchome obiekty respektują pojazdy, przeciwników, gracza, inne obiekty ruchome, śmieci, bramy i blokery windy.
- Kolizja z postacią w przestrzeni 2.5D zależy od zgodności linii stóp; pozwala to przechodzić wizualnie przed lub za obiektem bez fałszywej blokady.
- Obiekt już osadzony w przeszkodzie może poruszać się wyłącznie w kierunku zmniejszającym penetrację.
- Naprawiono stare zapisy z obiektami osadzonymi w kontenerach, pojazdach lub innych przeszkodach.
- Dodano stabilny system podpór: przedmioty mogą stać na windzie lub innym ruchomym obiekcie i są przenoszone bez zależności od kolejności Stepów.
- Dodano wykrywanie cyklicznych stosów i uszkodzonych łańcuchów podpór.
- Upuszczona apteczka prawidłowo odzyskuje grawitację, ląduje i podąża za ruchomym podłożem.
- Obiekty trzymane magnesem mają bezpieczne wartości celu, nie wpadają w nieskończoną korektę i zatrzymują się przy blokadzie.
- Po wczytaniu usuwane są stare stany magnetycznego chwytu i rzutu, które mogły powodować samoczynny ruch.
- Kolizja rzuconego przedmiotu z przeciwnikiem korzysta z ostatniego poprawnego wektora lotu i zadaje obrażenia bez konieczności wejścia w maskę przeciwnika.
- Symulacja obiektów ruchomych jest poprawnie zamrażana podczas prezentacji i tutoriali.
Broń i walka
- Rozbudowano reakcje obiektów na trafienia, m.in. skrzyń, ActionBoxów, beczek, kontenerów, worków ze śmieciami, apteczek i przedmiotów do podniesienia.
- Dodano i dopracowano efekty trafień: iskry, błyski paneli, ślady wypalenia, trafienia lasera, ślady plazmy i krótkie poświaty uderzenia.
- Wszystkie latające bronie korzystają teraz z jednego systemu ruchu, nawigacji i kolizji.
- Broń podążająca za graczem omija ściany, skrzynie, beczki, śmieci, samochody i autobusy.
- Dynamiczne przeszkody nie są zapisywane na stałe w siatce nawigacyjnej; ich bieżąca pozycja jest sprawdzana na żywo.
- Omijanie pojazdów korzysta z precyzyjnej maski, dzięki czemu przezroczyste narożniki sprite'a nie tworzą prostokątnej niewidzialnej ściany.
- Dodano przewidywanie ruchu pojazdu, aby broń mogła wcześniej rozpocząć płynny łuk omijania.
- Ruch przy przeszkodzie zachowuje składową styczną i ślizga się wzdłuż krawędzi zamiast wielokrotnie odbijać.
- Ograniczono całkowitą korektę pozycji na klatkę, usuwając schodkowe teleporty broni.
- Dodano stabilne punkty obejścia, ponowne planowanie po rzeczywistym utknięciu oraz awaryjny cel styczny.
- Usunięto zygzakowanie pomiędzy dwiema stronami pojazdu i oscylowanie na końcu ścieżki.
- Sterowanie zdalne zachowuje precyzyjną kolizję bez dodatkowej niewidzialnej strefy przewidywania.
- Dodano czytelny, niebieski efekt granicy maksymalnego zasięgu zdalnego sterowania bronią.
- Przebudowano przemianę broni po klawiszu Q: rozpad na cząsteczki, fale iskier, odbudowa i obsługa zmiany decyzji w trakcie animacji.
- Powiększono i urozmaicono iskry przemiany; trajektorie nie tworzą już jednej regularnej spirali.
- Broń pozostaje nieaktywna i nietrafialna do czasu pełnego zakończenia przemiany.
- Broń przyczepiona do gracza dziedziczy jego głębokość, więc pojazd nie zasłania samej broni, pozostawiając widocznego gracza.
- Dodano pełne cienie latających broni.
oGun2korzysta z miękkiego, akcelerowanego przez GPU renderowania wiązki i poświaty zgodnego z laserami świata.- Wiązka
oGun2jest blokowana przez pojazdy i może trafiać gołębie. - Zabezpieczono tworzenie pomocniczej tekstury wiązki przed błędami powierzchni i niezrównoważonym stosem render targetów.
- Zwiększono zasięg krótkiej poświaty latarki
oGun4i ujednolicono jej wygląd między Training Room a właściwym poziomem. oGun5może zadawać obrażenia różnym typom celów, w tym gołębiom.- Krótkie, ciągłe trafienie
oGun5zabija gołębia bez zmiany balansu obrażeń przeciw obcym. - Podczas prezentacji/tutorialu wiązka pozostaje widoczna, ale zamrożony świat nie otrzymuje obrażeń ani reakcji trafienia.
- Pociski obcych korzystają z pełnego przemiatania od poprzedniej do nowej pozycji i wybierają najbliższy fizyczny kontakt w danej klatce.
- Usunięto zależność wyniku pocisku od kolejności klas obiektów oraz tunelowanie przez cienkie przeszkody.
- Pociski prawidłowo współpracują z tarczą
oGun1, graczem, bramami, skrzyniami i pozostałymi przeszkodami. - Dodano ograniczony czas życia pocisku obcego, aby chybione strzały nie pozostawały na dużej mapie.
- Poprawiono poruszanie i zmianę kierunku obcych przy pojazdach, śmieciach i ruchomych przeszkodach.
Oświetlenie, lasery i radiacja
- Znacząco rozbudowano warstwę oświetlenia dynamicznego, poświat emisyjnych i refleksów materiałowych.
- Lasery, bramy energetyczne, panele, sensory, beczki, lustra, metalowe skrzynki, broń i wybrane elementy otoczenia otrzymały poświaty lub refleksy widoczne również w ciemności.
- Intensywność i liczba metalicznych refleksów są skalowane ustawieniami jakości, aby zachować efekt bez niekontrolowanego wzrostu kosztu renderowania.
- Ujednolicono profil oświetlenia pomiędzy
rLevelOnei Training Room. - Training Room korzysta teraz z tej samej polityki jakości efektów i rozdzielczości lightmapy co główny poziom.
- Dedykowany przebieg RTX-like w Training Room renderuje wyłącznie lasery, bez przypadkowego przejmowania szerokich pól sensorów.
- Ujednolicono grubość, rdzeń, poświatę, rozbłysk emitera i reakcję ścian dla laserów treningowych i laserów świata.
- Efekty laserów są skalowane dla bardzo szerokiego widoku, aby ograniczyć koszt renderowania bez gwałtownej zmiany wyglądu.
- Oświetlenie, lasery i latarka pozostają widoczne również wtedy, gdy pomocnicza powierzchnia ciemności chwilowo nie może zostać utworzona.
- Dodano kontrolowane ponawianie alokacji powierzchni po utracie urządzenia lub braku pamięci VRAM.
- Dodano ekranowy efekt napromieniowania zależny od odległości od najbliższej strefy radiacji.
- Efekt radiacji łączy stopniowe odbarwienie obrazu, ziarno, scanline, migotanie oraz poziome zakłócenia.
- Wejście i wyjście ze strefy korzysta z płynnego narastania i wygaszania efektu.
- Radiacja wpływa na świat gry przed narysowaniem HUD-u, więc interfejs pozostaje czytelny.
- Efekt jest poprawnie zachowywany na zamrożonym obrazie pauzy i ekranu śmierci.
- Pętla Geigera zmienia głośność wraz z odległością, zatrzymuje się bez gracza i jest poprawnie czyszczona przy opuszczaniu pokoju.
Ekran śmierci
- Dodano czterosekundowe, liniowe spowolnienie czasu po śmierci gracza.
- Kamera płynnie powiększa scenę w tym samym czasie, w którym zatrzymuje się rozgrywka.
- Obraz stopniowo traci kolory i zostaje zamrożony po zakończeniu sekwencji.
- Zamrożona klatka zachowuje kompletne oświetlenie, cienie i efekt radiacji.
- Dodano komunikat kontynuacji dopasowany do sytuacji: restart, wczytanie ostatniego zapisu lub wczytanie zapisu treningowego.
- Wejście SPACE działa dopiero po puszczeniu poprzedniego naciśnięcia, co zapobiega przypadkowemu pominięciu ekranu.
- Śmierć zamyka otwarty ekwipunek, przejmuje wejście i poprawnie ukrywa kursor.
- Dodano bezpieczny fallback, gdy nie uda się utworzyć powierzchni zamrożonego obrazu.
- Sekwencja odzyskuje się po utracie powierzchni graficznej zamiast pozostawić pusty ekran.
- Poprawiono fizykę opadającego ciała, zatrzymanie ostatniej klatki animacji, cień i sortowanie warstw.
Interfejs, ekwipunek i menu
- Dopracowano wygląd modułów robotów w HUD-zie: ikony, pierścienie integralności, paski zasobów, stany regeneracji, kolory poszczególnych typów i płynne wysuwanie panelu.
- Rozbudowano prezentacje robotów oraz ich uzbrojenia o czytelniejsze plansze, podpowiedzi sterowania i kontrolowane demonstracje działania.
- Geiger jest teraz ukrytym przedmiotem systemowym, a nie zwykłym slotem ekwipunku.
- Licznik automatycznie wysuwa się w strefie radiacji i może być ręcznie pokazany lub ukryty klawiszem G.
- Ręczne ukrycie Geigera w strefie pozostaje aktywne do momentu opuszczenia tej strefy.
- Ekwipunek można otworzyć również bez widocznych przedmiotów — nadal dostępne są statystyki, zadania i zakładka robota.
- Ukryty Geiger nie jest duplikowany w zapisach ani w pamięci slotów ekwipunku.
- Poprawiono przeciąganie karty dostępu na panel bezpieczeństwa.
- Karta użyta na właściwym panelu jest zużywana, zmienia stan panelu i wyłącza przypisaną bramę elektryczną.
- Karta upuszczona poza panelem odzyskuje grawitację i prawidłowo spada do świata.
- Upuszczenie przedmiotu na tle panelu ekwipunku anuluje przeciąganie i zwraca go do slotu.
- Tutorial ekwipunku nie uruchamia się w trakcie sekwencji śmierci.
- Portfel w domu pozostaje przedmiotem zadania i nie dodaje już sztucznych 50 punktów; stare techniczne wpisy monet portfela są czyszczone.
- Dodano opcję włączania i wyłączania cieni w menu grafiki.
- Poprawiono przewijane, wieloplanowe tło menu: niebo i budynki używają naprzemiennego odbicia lustrzanego, tworząc płynniejsze łączenia kafli i naturalniejszy parallax.
- Zoptymalizowano ekran startowego logo: duża tekstura jest ładowana wyłącznie na czas intra i zwalniana przed menu.
- Zapisane ustawienia rozdzielczości, V-Sync, pełnego ekranu i klatkażu są stosowane jeszcze przed pierwszą klatką logo.
Pauza i prezentacje
- Pauza przechwytuje czystą, kompletną klatkę w docelowej rozdzielczości GUI.
- Zamrożony obraz zawiera oświetlenie, cienie i radiację dokładnie tak, jak ostatnia klatka rozgrywki.
- Usunięto dodatkowe rozmycie, które mogło tworzyć plamy i zmieniać wygląd cieni na pauzie.
- Powierzchnia pauzy jest wymuszana jako nieprzezroczysta, dzięki czemu chmury i tło nie prześwitują przez zamrożoną scenę.
- Dodano bezpieczne ponawianie tworzenia powierzchni pauzy i ekwipunku po błędzie alokacji.
- Pauza nie może zostać otwarta podczas krytycznego etapu wczytywania i synchronizacji pokoju.
- Ujednolicono zamrożenie świata dla ekwipunku, tutoriali, prezentacji robota i prezentacji broni.
- Po zakończeniu prezentacji dokładnie odtwarzane są wcześniejsze prędkości, animacje oraz kanały ruchu obiektów.
Save/load
- Rozszerzono zapis i odtwarzanie pełnego stanu poziomu dla NPC-ów, kota, gołębi, skrzyń, ActionBoxów, przedmiotów, pojazdów, wind, drzwi, paneli, bram i pozostałych obiektów interaktywnych.
- Dodano zapis pozycji i stanu kota, w tym dołączenia do gracza, ukrycia oraz dokładnego położenia względem windy.
- Dodano zapis i odtwarzanie pozycji, prędkości, fazy lotu, widoczności i stanu startu każdej rakiety.
- Dodano zapis jednorazowych triggerów rakiet; wystrzelona i usunięta rakieta nie pojawia się ponownie po wczytaniu.
- Dodano zapis stanu samochodów i autobusów: pozycji, prędkości, kierunku, czasu postoju, czasu odrodzenia, kąta kół i widoczności.
- Pojazdy są dopasowywane po stabilnym identyfikatorze punktu startowego, a koła są ponownie wiązane z właściwym nadwoziem.
- Rozbudowano zapis gracza w windzie o dokładny offset, stan podłogi, stan lotu i identyfikator właściwej kabiny.
- Poprawiono odtwarzanie gracza stojącego na windzie, wewnątrz kabiny oraz skaczącego w jej pobliżu.
- Dodano awaryjne odtworzenie pozycji gracza ze snapshotu pokoju, gdy główna sekcja zapisu nie zawiera poprawnej pozycji.
- Poprawiono przywracanie punktów startowych gołębi i dopasowanie ich po stabilnych UID.
- Rozszerzono zapis kart dostępu o ustawienia grawitacji oraz zapis stanu paneli i bram.
- Po wczytaniu resetowane są przejściowe prędkości i uchwyty magnetyczne ActionBoxów i beczek.
- Usuwane są stare, niespójne relacje podpór, aby przedmiot nie został przeciągnięty przez zapamiętany ruch innego obiektu.
- Podczas odtwarzania przeciwników czyszczone są stare bronie, pociski i iskry przemiany, co usuwa podwójne lub pogrubione strzały obcych po loadzie.
- Brakujące kontrolery wejścia i broni są automatycznie odtwarzane przy bezpośrednim wczytaniu pokoju bonusowego.
- Przed odtworzeniem oświetlenia zwalniane są stare powierzchnie renderujące, co zapobiega pozostawaniu poprzedniego obrazu.
- Stare zapisy Training Room nie przywracają już wycofanego, globalnego mnożnika efektów x2.
- Zachowano kompatybilność wsteczną: zapisy bez nowych sekcji rakiet i ruchu ulicznego korzystają z obiektów umieszczonych w pokoju.
Szybki zapis F5
- Zmieniono kolejność operacji: komunikat szybkiego zapisu pojawia się przed rozpoczęciem synchronicznego zapisu pliku i zrzutu ekranu.
- HUD potwierdza, że komunikat został rzeczywiście narysowany, a zapis rozpoczyna się dopiero po dwóch pełnych, zaprezentowanych klatkach.
- Komunikat szybkiego zapisu pojawia się od razu z pełną czytelnością zamiast rozpoczynać od niemal przezroczystej fazy fade-in.
- Wyeliminowano wrażenie, że gra najpierw się zatrzymuje, a dopiero później informuje o zapisie.
- Zabezpieczono oczekujący zapis przed zmianą pokoju oraz wielokrotnym uruchomieniem F5.
Stabilność, wydajność i poprawki techniczne
- Rozbudowano i ustabilizowano warstwę konfiguracji grafiki oraz wydajności silnika.
- Dodano obsługę wysokich częstotliwości odświeżania, automatyczne dopasowanie celu FPS oraz dwa tryby frame pacingu: Smooth i Low Latency.
- Włączono interpolację pikseli/tekstur w ustawieniach platformowych i poprawiono płynność prezentacji obrazu przy wysokim odświeżaniu.
- Rozbudowano ustawienia rozdzielczości, V-Sync, pełnego ekranu, jakości efektów, dynamicznego oświetlenia, poświaty emisyjnej, oświetlenia RTX-like i cieni; konfiguracja jest zachowywana w pliku ustawień.
- Poprawiono kamerę, skalowanie GUI i obrazu oraz obsługę różnych rozdzielczości i proporcji ekranu.
- Usprawniono pełny reset renderera przy zmianie lub wczytywaniu poziomu: stare powierzchnie, tekstury tymczasowe i systemy cząsteczek są zwalniane przed ponowną inicjalizacją.
- Dodano bezpieczne ograniczanie delt ruchu i ruch krokowy dla kluczowych postaci, pocisków i obiektów fizycznych.
- Wiele symulacji zostało uniezależnionych od 60 FPS i korzysta ze wspólnego kroku czasu.
- Czas sekwencji ekranowych może działać niezależnie od spowolnienia lub zatrzymania świata.
- Dodano odrzucanie uszkodzonych wartości prędkości i stanów, które wcześniej mogły wywołać duży skok pozycji lub długą pętlę na głównym wątku.
- Dodano ograniczone czasowo ponawianie tworzenia powierzchni GPU, aby brak VRAM nie powodował prób alokacji w każdej klatce.
- Dodano zwalnianie systemów cząsteczek i powierzchni zarówno przy zniszczeniu obiektu, jak i przy opuszczeniu pokoju.
- Poprawiono czyszczenie pętli audio i oczekujących fade-outów podczas zmiany pokoju.
- Dodano culling rysowania odległych przechodniów, pojazdów, kół i samolotu bez zatrzymywania ich symulacji.
- Zoptymalizowano przetwarzanie cieni przez listy widocznych casterów/receiverów i ograniczenie pracy poza kamerą.
- Usunięto podwójne lub osierocone projektory cieni kół i obiektów po save/load.
- Poprawiono zachowanie po utracie urządzenia graficznego i odtworzeniu
application_surface. - Uporządkowano stan blendowania i alfa powierzchni, zapobiegając dziurom, prześwitom tła i zmianom jasności.
- Zabezpieczono efekty i fizykę przed kontynuowaniem symulacji w czasie pauzy, tutorialu lub zamrożonej prezentacji.
Podsumowanie techniczne zakresu
Porównanie obecnego projektu z kopiami z 21 maja, 14 czerwca i 27 czerwca potwierdza zarówno dużą rozbudowę zawartości, jak i głębokie zmiany istniejących systemów.
W porównaniu z kopiami z 21 maja i 14 czerwca obecna wersja zawiera:
- 22 nowe obiekty GameMakera,
- 52 nowe zasoby sprite,
- 5 nowych shaderów,
- 1 nowy skrypt systemowy,
- usunięcie 2 wycofanych sprite'ów zastąpionych nowszą organizacją scen.
W porównaniu z najbliższym snapshotem z 27 czerwca projekt zawiera dodatkowo:
- 21 nowych obiektów GameMakera,
- 49 nowych zasobów sprite,
- 5 nowych shaderów,
- rozbudowę 17 głównych skryptów systemowych,
- szerokie zmiany w
rLevelOne,rTrainingRoom,rPlayerHomeirLevelOneBonus.
Poza nowymi zasobami gruntownie zmieniono istniejące kontrolery gracza, kota, NPC-ów, broni, fizyki, wind, oświetlenia, menu, kamery, renderowania oraz save/load. Jest to więc znacznie większy zakres niż wskazywałaby sama liczba nowych obiektów.
Kontaminacja nie została stwierdzona. Należy opuścić urządzenie.