HomebrewAtari XL/XE

Doom

Loading

Na początku lat ’90 PC’ty ze względu na ceny jak i dość duże rozmiary nie były zbyt popularnymi maszynkami do gier. W 1992 roku na rynku ukazała się gra „Wolfenstein 3D” a rok później „Doom” – tytuły, które strzelanki z widokiem z pierwszej osoby (FPS’y) wprowadziły na „salony” zapewniając twórcom miliony zielonych papierków. Wtedy tez powstał popularny u nas wierszyk, kończący się sentencją „Amigowcu, nie rżnij głupa – Doom nie chodzi no i dupa”. Odłóżmy jednak żarty na bok – jesteśmy poważnymi retro-sentymentalistami, dlatego przyglądniemy się możliwościom zagrania w „Dooma” na 8bitowych komputerach Atari.

Oczywiście Wolfenstein 3D nie był pierwszą grą w której zastosowano widok z pierwszej osoby, nie był nawet pierwszą strzelanką tego typu. Już w latach ’80 zagrywałem się na moim Atari w takie pozycje jak „Capture the Flag”, „The Encounter” i „The Eidolon”. Fakt, w porównaniu do głośnych tytułów z PC były one bardzo prymitywne, ale nie można im odmówić pewnego uroku oraz grywalności. Każda z tych gier używa innego sposobu prezentacji środowiska 3D, a najbliżej Wolfenstein 3D pod względem prezentacji wydaje się być „Capture the Flag”.


Dokonując małego skoku w czasie, zatrzymujemy się w roku 1996. Grupa demoscenowa Shadows na zlocie Quast zaprezentowała demo „The AssKicker”, w którym jedna z sekwencji została nazwana „Doom”, chociaż z grą pod tym tytułem rzecz nie ma wiele wspólnego, gdyż Marek „Konop” Konopka zakodował teksturowany labirynt 3D w stylu Wolfenstein 3D. Warto w tym miejscu wspomnieć, że wspomniany przed chwilą tytuł od ID Software używa metody Raycastingu pozwalającej obrazować dwuwymiarowe mapy jako światy 3D. Stworzona przy pomocy „klocków” (znaków tekstowych) mapa jest przekształcana na przyklejone do podłogi i sufitu prostopadłościany, które mogą być teksturowane. Cechą charakterystyczną gier opartych na Raycastingu są ściany łączące się jedynie pod kątem prostym. Pewnym minusem „The AssKicker” dla „zwykłych” użytkowników Atari może być wymagane przez demo 128KB pamięci RAM – czyli Atari 130XE, lub popularne Atari 800XL/65XE z dodatkowym rozszerzeniem pamięci.

The AssKikcek – „Doom” od 5:11

W 1996 roku ID Software upublicznia kod źródłowy „Doom” i porty tej kultowej pozycji powstają jak grzyby po deszczu na różnych platformach sprzętowych. Na scenie „małego” Atari na poważniejszy ruch w tej dziedzinie musimy czekać do roku 2002. Na zlocie „Lato Ludzików” grupa Taquart zaprezentowała demo „Numen” którego motywem przewodnim jest wygenerowany przez Atari świat 3D używający silnika Vector, który zaprogramował Piotr „Fox” Fusik. Silnik Vector został stworzony (uwaga!) na bazie silnika Build na którym hula między innymi „Duke Nukem 3D”. Główną różnicą między Vectorem a Build jest brak tekstur w tym pierwszym (ściany mogą być wypełnione jednolitym kolorem lub dwukolorową szachownicą). Demo wymaga 320KB pamięci RAM, czyli niezależnie od posiadanego modelu małego Atari musimy posiłkować się rozszerzeniem pamięci.

Demo Numen

Jak zapewniają twórcy demo wszystkie sekwencje osobno mogłyby działać na Atari z 64KB pamięci RAM, co można sprawdzić uruchamiając udostępnione demo silnika Vector:

Mimo iż silnik Vector jest ogólnie dostępny nikomu do tej pory nie udało się lub nie chciało się zrobić na nim pełnoprawnej gry.

Podczas zlotu „Quast” w 2005 roku, Krzysztof „Święty” Święcicki z grupy Zelax zaprezentował demo „Maze”, którego główną cześć stanowi teksturowany labirynt 3D w technice Raycastingu.

Demo Maze

Niestety, produkcją tą „Święty” pożegnał się z programowaniem na 8bitowym Atari.

W 2010r. na Youtube zaprezentowany został film z prac nad „Project-M”, czyli programem, będącym wizualnie najbliższą wersją Wolfensten 3D na Atari.

Rok później zaprezentowana została ostatnia wersja silnika, od której do grywalnej pozycji była jeszcze bardzo długa droga…

W 2013 roku przenosimy się na chwileczkę na pole „konkurencji” czyli niezbyt popularny u nas komputer Commodore VIC20, na który Steve „Kweepa” McCrea łącząc kod w językach Assembler oraz C przeniósł kod Linuxowej wersji gry Doom. Przy okazji modyfikując pod możliwości platformy 8bit osiem poziomów gry, czyli pierwszy epizod (pomijając sekretny poziom). Tym samym VIC Doom staje się prawdopodobnie pierwszą grą FPS na 8bitowe platformy, gdzie teksturowane ściany mogą łączyć się pod dowolnym kątem.

Co ciekawe gra nie została przniesiona na popularniejszego, młodszego brata VIC20, czyli Commodore 64, gdzie najciekawsze tytuły z tego gatunku (Mood, T.R.S.I.) oparte są nadal na Raycastingu.

Pod koniec 2021 roku Robert „Globe” Pecnik udostępnia na Atari grę „Final Assault” – oparty na Raycastingu FPS. Co ważne gra wymaga jedynie 64KB pamięci, czyli standardowego popularnego u nas komputera Atari. Gra może pochwalić się animowanymi teksturami, efektami świetlnymi oraz dużym ekranem gry. Niestety grafika jest mało czytelna, zawodzi też projekt przeciwników.

W Listopadzie 2021 w związku z wystawą „8bitów sztuki” w tarnowskiej galerii BWA na scenę małego Atari powraca Krzysztof „Święty” Święcicki. Już na początku stycznia 2022 roku grono wtajemniczonych ma możliwość zobaczenia przyspieszonego silnika demo „Maze” z 2005roku:

Z czasem silnik doczekał się rożnego rodzaju optymalizacji, ulepszeń, wzbogacenia o nowe elementy:

W międzyczasie „Święty” natrafia na kod gry VIC Doom i postanawia przenieść go na Atari:

Który po kilkunastu optymalizacjach i poprawkach zaczyna chodzić i wyglądać dość dobrze:

Powstaje pomysł aby połączyć kod VIC Doom z kodem Maze:

W połowie czerwca 2022 roku Doom na Atari wygląda już tak (a autor zapewnia że całość powinna ruszyć na Atari ze 128KB pamięci RAM):

Całość trafia do zaprezentowanego podczas zlotu „Lost Party” 9 lipca 2022 roku dema „ReWind” (niestety demo wymaga aż 1MB pamięci RAM)

Demo ReWind – Doom od 7:14

W 2023 roku „Święty” postanowił powrócić do kodu VIC Doom i 8 lipca podczas zlotu „Lost Party” zaprezentował pełną wersję gry działającą na 8bitowych Atari z 64KB RAM. Kod gry w stosunku do wersji na VIC20 jest napisany w całości w Assemblerze, zawiera wiele poprawek (np. poprawne skalowane postaci), optymalizacji (mimo dwa razy większego pola gry, całość chodzi dużo szybciej). Do dyspozycji mamy pierwszy epizod Doom (8 poziomów), cztery rodzaje przeciwników – Sergeant, Imp, Demon, Cacodemon. Wrogów możemy zwalczać za pomocą pięści oraz dostępnej broni – chainsaw, pistol, shotgun, chaingun. Działają nawet kody – IDDQD, IDKFA, IDCLEV… Niestety w stosunku do Doom zaprezentowanego w demo ReWind ze względu na mniejsze wymagania pamięciowe zmieniony został tryb graficzny (duże okno z 16 odcieniami w jednym kolorze) na okno wielkości 1/6 ekranu w 4 kolorach , przycięte zostały tekstury oraz pozostała uproszczona muzyka skonwertowana z oryginalnego Doom, przy czym mamy tu aż 11 utworów przygrywających podczas gry, oraz 20 efektów dźwiękowych na podstawie PCtoweg głośniczka – całość brzmi jak wczesne lata ’80, przy czym należy pamiętać że wtedy muzyka+efekty dźwiękowe podczas gry były rzadkością.


Prezentowana na różnych filmach rozgrywka być może nie wygląda zbyt atrakcyjnie, jednak podejście do Doom na Atari zmienia się po uruchomieniu gry na Atari. Gra się bardzo dobrze, grafika jest dość czytelna a muzyka i efekty nie przeszkadzają podczas zabawy. Sterownie za pomocą joysticka jak dla mnie wydaje się trochę dziwne i dużo lepiej gra mi się na padzie od Mega Drive. Ponieważ standardowo Atari obsługuje jeden przycisk fire (w Doom służy do strzelania) musimy posiłkować się klawiaturą – Spacja służy do otwierania drzwi, klawisze „A” oraz „S” do poruszania na boki (strafe), cyfry 1-5 do zmiany broni, a „TAB” włącza mapę poziomu. Co ważne gra działa dość szybko i rozwalanie hord wysłanników piekieł sprawia dużą satysfakcję. Tym samym mamy możliwość zagrania na standardowym Atari z 64KB pamięci w prawdopodobnie pierwszą grę FPS, która nie używa Raycastingu a wyświetla teksturowane ściany pod dowolnym kątem, do tego umożliwia walkę z posiadającymi AI przeciwnikami (okrojona wersja AI z PC, taki sam sposób poszerzania się wrogów). I jeśli już miałbym się do czegoś przyczepić to do długości gry, gdyż udostępnione 8 poziomów wystarcza na około 30min zabawy. Niestety po załadowaniu gry w pamięci nie zostaje zbyt wiele miejsca…

Niecierpliwi mogą pobrać plik ATR z grą –>TUTAJ,<- A bardziej cierpliwi mogą jeszcze trochę poczekać, gdyż autor zapowiedział kolejne poprawki (między innymi dotyczące teksturowania).

A teraz wybaczcie, wybieram się na spotkanie z Cacodemonem… IDDQD, IDKFA…

Author

Komentarze

  1. Swietny artykul,nie jakas tam prosta recenzja ale doglebna analiza prodek doomopodobnych na male Atari. Swietna robota tbxx! A sama gra? No coz, wyglada tak na ile Atari pozwala, wiadomo ze te demka duzo lepiej wygladaja ale zwazajac na to ile RAMu potrzebuja to jednak nalezy docenic ten port Dooma na stockowe 64kb pamieci jakimi dysponuje klasyczna Atarynka… Swiety zawstydzil Johna Carmacka. Czekam na kolejne epizody, pewnie jest szansa na takowe w postaci kolejnych plikow wgrywanych niezaleznie.

  2. Świetny artykuł Tomek , zwłaszcza z kronikarskiego punktu widzenia oraz fajnie że powrzucałeś filmiki z progresu prac na silnikiem oraz spinania wszystkiego do kupy , jedno sprostowanie co do dema Maze – tam silnik opiera się nie na raycastingu a na liniach rzutowanych na ekran jako ściany , więc w zasadzie jest to jakaś namiastka silnika z Dooma, tyle że tam nie było sektorów/portali oraz liczenie Z było od -255 do +255 zatem wiele rzeczy się pojawiało i znikało.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.