Ekran śmierci – Wikipedia, wolna encyklopedia
Ekran śmierci (ang. kill screen) – plansza lub poziom w grze komputerowej, która powstrzymuje gracza od kontynuowania gry z powodu błędu w implementacji. Zamiast zakończyć się normalnie, gra zacina lub resetuje się bądź wywołuje inne błędy uniemożliwiające rozgrywkę.
Przykłady
[edytuj | edytuj kod]Błąd w 256. poziomie gry Pac-Man. Połowa planszy jest zniekształcona, co w konsekwencji uniemożliwia jej zakończenie[1]. Spowodowane jest to błędem przekroczenia zakresu liczb całkowitych; programiści nie przewidzieli większej liczby poziomów niż 255. 255 to maksymalna wartość, jaką można zapisać za pomocą jednego bajtu. Gdy gracz dochodzi do 256 poziomu, licznik poziomów nie mieści się w zakresie ośmiu bitów (następuje przekroczenie zakresu liczb całkowitych) i wpływa na algorytm rysujący obiekty na planszy[1].
W wersji na automaty gra Donkey Kong zawiera błąd na poziomie 22. – gracz ginie już po kilku sekundach od rozpoczęcia gry[2]. W tym przypadku błąd występuje w algorytmie określającym czas dostępny dla gracza na ukończenie danego poziomu. Podczas obliczeń, zerowana jest flaga przeniesienia służąca procesorowi do przechowywania informacji o przekroczeniu zakresu przez wynik poprzedniej operacji. Flaga ta nie jest sprawdzana, przez co w przypadku, gdy wynik nie mieści się w 1 bajcie, odczytywany rezultat jest mniejszy niż spodziewany[3]. Przez to gracz nie dostaje wystarczającej ilości czasu, aby ukończyć poziom.
Wersja na NES-a również posiada błąd, ale na poziomie 133 - licznik czasu nastawiony jest na 400, przez to gracz nie ma wystarczającej ilości czasu na ukończenie poziomu.
Kolejny przykład kill screen. Błąd na 256. poziomie. W grze Dig Dug poziom numer dwieście pięćdziesiąt sześć zostaje wyświetlony jako poziom nr 0, a jeden z przeciwników umieszczony jest dokładnie na graczu, zabijając go natychmiastowo po rozpoczęciu rozgrywki[4]. Spowodowane jest to problemem identycznym jak w grze Pac-Man, gdzie występuje błąd przekroczenia zakresu liczb całkowitych.
256. poziom w automatowej grze Galaga zawiera błąd i kill screen, lecz zależy on od ustawionego poziomu trudności. Na poziomie łatwym gra się resetuje. Na trudnym słowa "Stage 0" zostają na ekranie, a gra się zawiesza. Na najtrudniejszym, zachowuje się on jak na pierwszym poziomie. Jednakże na średnim, poziom zachowuje się jak crossover normalnego poziomu i drugiego "challenging stage" (poziomy nr 7, 39, 71, 103, 135, 167, 199, 231)[5].
Poziom nr 100 w Duck Hunt jest kolejnym przykładem kill screen. Gra wyświetla go jako poziom 0, a kaczki migają po ekranie. Te oszalałe kaczki można trafić, lecz przez to, że niektóre z nich w ogóle się nie pokazują, a gra zachowuje się jakby odleciały, poziom nie może być ukończony[6].
Błąd na poziomie numer 29. w grze Tetris; to także kill screen. Po 29. poziomie, nazwy poziomów składają się z liczb w systemie szesnastkowym. Na tym poziomie klocki spadają z dwukrotnie większą prędkością niż normalnie. Nie jest możliwe ukończenie go bez używania cheatów, hacków lub TAS (tool-assisted speedrun)[7]
Idąc w ślad swojego protoplasty, Pac-man Jr. posiada kill screen. Na poziomie 146. gra nie rysuje ani kulek ani ścian, pojawia się jedynie czarny ekran z trzema błędnymi elementami po obu stronach planszy. Poziom nie może być ukończony ze względu na brak kulek. Duszki gonią Pac-Mana po czarnym ekranie, póki nie zostaną stracone wszystkie życia bądź gra nie zostanie zresetowana[8].
Przypisy
[edytuj | edytuj kod]- ↑ a b Don Hodges, Pac-Man's Split Screen level analyzed and fixed
- ↑ Don Hodges, How High Can You Get
- ↑ Gra wykonuje działanie 220 + 40 co daje w wyniku 260. Wynik większy niż 255 zostaje ucięty do zakresu 8 bitów. Wynikiem takiej operacji (260 – 256) jest 4 – tyle sekund dane jest graczowi
- ↑ AtHomeTech, Dig Dug New World Record Kill Screen
- ↑ phantomdj, Galaga Stage 256 on Medium Skill
- ↑ raydempsey, Duck Hunt level 100 error
- ↑ Xkeeper0,Tetris Mode-A: To 29 and beyo-- wait, what the hell
- ↑ Jr Pac Man kill screen level – 146