Przejdź do treści

Nieśmiertelność w Minecraft! xDeush wykorzystał potężny błąd i spadł ponad milion bloków w próżnię

    Czy można stać się całkowicie nieśmiertelnym w Minecraft bez korzystania z trybu kreatywnego? xDeush postanowił sprawdzić jedną z najbardziej niezwykłych mechanik gry – Entity ID Suppression. Wykorzystując przepełnienie licznika identyfikatorów obiektów, zbudował ogromną maszynę, która pozwoliła mu zatrzymać przetwarzanie własnej postaci. Następnie skoczył w próżnię Endu i osiągnął poziom poniżej Y = -1 312 000, prezentując wynik jako rekordowe osiągnięcie w trybie survival.

    Na kanale YouTube xDeush pojawił się materiał poświęcony zaawansowanym błędom technicznym Minecrafta.

    Twórca przybliża historię mechanik określanych jako Update Suppression, czyli supresja aktualizacji, a następnie prezentuje eksperyment wykorzystujący Entity ID Suppression.

    Jego celem było osiągnięcie stanu, w którym postać nie otrzymuje obrażeń nawet podczas spadania w bezdenną próżnię wymiaru End.

    Zobacz pełny eksperyment xDeush:

    Czym jest Update Suppression w Minecraft?

    Update Suppression to określenie grupy technik wykorzystujących błędy w sposobie przetwarzania zdarzeń i aktualizacji w Minecraft Java Edition.

    Normalnie gra musi reagować na tysiące zdarzeń, takich jak niszczenie bloków, zmiany sygnału redstone czy pojawianie się nowych obiektów.

    W określonych warunkach można jednak doprowadzić do wystąpienia wyjątku podczas wykonywania jednej z operacji.

    Jeżeli błąd zostanie przechwycony przez odpowiedni mechanizm obsługi wyjątków, część operacji może zostać przerwana bez natychmiastowego zamknięcia gry.

    Pozwala to uzyskać nietypowe rezultaty, które nie są przewidziane w standardowej rozgrywce.

    xDeush przedstawia w swoim materiale kilka historycznych metod wykorzystujących podobne zachowania silnika Minecrafta.

    Najpotężniejsze błędy Minecrafta. Od przepełnienia stosu po brak pamięci

    Twórca omawia różne rodzaje supresji, które pojawiały się w kolejnych wersjach gry.

    Array Index Out Of Bounds – początki supresji

    Jedna z najstarszych metod była związana z błędem ArrayIndexOutOfBoundsException, znanym między innymi z Minecraft Beta 1.7.3.

    Pozwalała na uzyskiwanie nietypowych stanów bloków, takich jak lewitujące tory czy nieprawidłowo zachowujące się tłoki.

    Stack Overflow Error – przepełnienie stosu

    Kolejna technika wykorzystywała bardzo długie łańcuchy aktualizacji bloków.

    Odpowiednio zbudowane konstrukcje z torów i detektorów mogły doprowadzić do przepełnienia stosu wywołań, a następnie przerwania wykonywania określonych operacji.

    Out Of Memory Suppression

    Ta metoda opierała się na wyczerpywaniu pamięci przydzielonej grze.

    Przez doprowadzenie do gwałtownego zwiększania rozmiaru struktur przechowujących dane o obiektach możliwe było wywołanie błędu braku pamięci.

    Shulker i Sound Suppression

    W materiale pojawiają się również zaawansowane techniki wykorzystujące skrzynki Shulkera oraz skalibrowane czujniki skalkowe.

    Pozwalały one w określonych okolicznościach wpływać na przebieg aktualizacji i wykonywanie niektórych czynności w świecie gry.

    Entity ID Suppression – jak błąd identyfikatorów daje nieśmiertelność?

    Najważniejszym zagadnieniem filmu jest Entity ID Suppression.

    Mechanika wykorzystuje sposób, w jaki Minecraft przydziela identyfikatory obiektom znajdującym się w świecie gry.

    Każdy nowy obiekt otrzymuje numeryczny identyfikator ID, dzięki któremu silnik może go rozpoznawać i przetwarzać.

    Licznik identyfikatorów wykorzystuje 32-bitową liczbę całkowitą. Po wyczerpaniu zakresu wartości może dojść do przepełnienia, określanego jako integer overflow.

    W wyniku odpowiedniego manipulowania licznikiem można doprowadzić do sytuacji, w której dwa obiekty otrzymają kolidujące identyfikatory.

    W eksperymencie xDeush chodziło o uzyskanie obiektu z takim samym ID jak postać gracza.

    Gdy spełnione zostały odpowiednie warunki związane z ładowaniem obiektów, przetwarzanie postaci mogło zostać zaburzone.

    W rezultacie gracz przestawał być normalnie aktualizowany przez silnik gry.

    W praktyce oznaczało to możliwość zablokowania mechanizmów odpowiedzialnych za otrzymywanie obrażeń.

    xDeush rozpoczyna nowy świat survival w Minecraft 1.21.1

    Przygotowanie eksperymentu wymagało rozbudowanej infrastruktury.

    xDeush rozpoczął więc rozgrywkę na nowym świecie w wersji Minecraft Java Edition 1.21.1.

    Od początku koncentrował się na zdobywaniu zasobów potrzebnych do realizacji głównego celu.

    Trzy farmy niezbędne do eksperymentu

    Twórca zbudował:

    • Farmę żelaza – zapewniającą surowiec do dalszej budowy.
    • Automatyczny generator bruku – dostarczający bloki konstrukcyjne.
    • Farmę rajdów – umożliwiającą zdobywanie totemów nieśmiertelności oraz zasobów związanych z redstone.

    Podczas przygotowań odwiedził również Trial Chambers i Nether, zdobywając potrzebne przedmioty, w tym trójząb oraz eliksiry.

    Kolejnym etapem było pokonanie Smoka Kresu i uzyskanie dostępu do Endu.

    Gigantyczna maszyna w Endzie. Ponad 100 tysięcy śnieżek

    Główną konstrukcję xDeush postanowił umieścić w wymiarze End.

    Budowanie mechanizmów nad próżnią pozwalało ograniczyć liczbę dodatkowych obiektów i niepożądanych interakcji w otoczeniu.

    Właśnie tam powstała maszyna określana jako Entity ID Overflower.

    Jej zadaniem było doprowadzenie do przepełnienia licznika identyfikatorów obiektów.

    Według opisu eksperymentu konstrukcja wykorzystywała:

    • 16 podajników.
    • System lejków i skrzyń.
    • Zapas przekraczający 100 000 śnieżek.
    • Mechanizm działający na granicy tzw. lazy chunks.

    Kluczowym elementem było masowe generowanie obiektów, które powodowało kolejne zmiany wartości licznika ID.

    Proces wymagał ogromnej liczby operacji i odpowiedniego przygotowania świata.

    Ponad 4 miliardy identyfikatorów. Minecraft zaczyna działać inaczej

    W trakcie eksperymentu maszyna doprowadziła do przejścia licznika przez pełny zakres 32-bitowych identyfikatorów.

    Wykonanie odpowiednio dużej liczby operacji pozwoliło ponownie uzyskać wartości ID przydzielone wcześniej innym obiektom.

    Celem było stworzenie sytuacji, w której jeden z obiektów, takich jak stojak na zbroję lub wagonik, otrzyma identyfikator kolidujący z identyfikatorem gracza.

    Po wykonaniu dalszych czynności związanych z odładowaniem obiektu doszło do zaburzenia przetwarzania postaci.

    Według przedstawionego eksperymentu xDeush osiągnął stan, w którym gra przestała normalnie aktualizować jego bohatera.

    Co dawała nieśmiertelność?

    W zaprezentowanym stanie postać nie otrzymywała obrażeń w sytuacjach, które normalnie byłyby śmiertelne.

    Dotyczyło to między innymi:

    • Ataków przeciwników.
    • Obrażeń związanych z upadkiem.
    • Szkodliwych efektów działających na postać.
    • Obrażeń zadawanych przez próżnię w Endzie.

    Nie była to standardowa mechanika gry ani efekt działania totemu nieśmiertelności.

    Nieśmiertelność wynikała z błędu silnika Minecrafta i zatrzymania aktualizacji postaci.

    xDeush skacze w próżnię i spada poniżej Y = -1 312 000

    Po pomyślnym przeprowadzeniu supresji twórca przystąpił do najważniejszego testu.

    Wskoczył w próżnię znajdującą się pod wyspami Endu.

    Podczas normalnej rozgrywki spadnięcie w ten obszar powoduje otrzymywanie obrażeń i śmierć postaci.

    Tym razem wydarzenia potoczyły się inaczej.

    Dzięki wykorzystanemu błędowi xDeush mógł kontynuować spadanie bez utraty zdrowia.

    Eksperyment trwał wiele godzin.

    Według informacji przedstawionych w materiale postać osiągnęła poziom poniżej Y = -1 312 000, czyli ponad 1,3 miliona bloków poniżej poziomu zerowego świata.

    To niezwykły rezultat, biorąc pod uwagę standardowe ograniczenia rozgrywki survival.

    Czy xDeush pobił rekord świata w Minecraft?

    Twórca przedstawia swoje osiągnięcie jako rekordowy spadek na niezwykle niski poziom Y w trybie survival, bez wykorzystywania modów i wtyczek.

    Najważniejsze parametry opisanego eksperymentu to:

    ParametrWynik
    Wersja gryMinecraft Java Edition 1.21.1
    TrybSurvival
    Wykorzystana technikaEntity ID Suppression
    WymiarEnd
    Osiągnięty poziomPoniżej Y = -1 312 000
    EfektBrak obrażeń podczas spadania w próżnię

    Wynik pochodzi z materiału xDeush. Nie został tutaj niezależnie zweryfikowany jako oficjalnie zarejestrowany rekord świata.

    Eksperyment xDeush pokazuje możliwości błędów Minecrafta

    Film pokazuje, jak bardzo zaawansowane mogą być eksperymenty społeczności Minecrafta.

    Do uzyskania nieśmiertelności nie wystarczyło wykorzystanie prostego błędu czy pojedynczego przedmiotu.

    Konieczne było stworzenie od podstaw rozbudowanego systemu farm, przygotowanie odpowiednich zasobów i skonstruowanie maszyny zdolnej do przepełnienia licznika ID.

    Największym osiągnięciem przedstawionym w materiale jest doprowadzenie do sytuacji, w której postać przestaje otrzymywać obrażenia i może spadać w próżnię przez wiele godzin.

    Eksperyment z Entity ID Suppression pokazuje również, jak znajomość technicznych mechanizmów gry może prowadzić do rezultatów daleko wykraczających poza zwykłą rozgrywkę.

    Pełną historię przygotowań, budowę maszyny i próbę osiągnięcia rekordowej głębokości można obejrzeć w filmie xDeush zamieszczonym powyżej.

    Źródło wideo: xDeush – materiał dotyczący Entity ID Suppression i nieśmiertelności w Minecraft, YouTube.

    Opis konstrukcji, przebieg eksperymentu oraz osiągniętą głębokość opracowano na podstawie przekazanego streszczenia filmu.

    Dodaj komentarz

    Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *