atarionline.pl
atarionline.pl Atari
Login:
Hasło:
Zapamiętaj mnie
Translate to RSS RSS
Wyniki konkursu ABBUC 2024 z 2024-11-02 15:54 (15)
Konkurs na grafikę ATASCII 2024 - głosowanie z 2024-10-27 23:34 (14)
Nowszy RECOIL z 2024-10-27 16:05 (0)
W sobotę KWAS #35 w Krakowie z 2024-10-16 00:17 (7)
Giełda 80/90 w Gdańsku z 2024-10-15 13:45 (5)
Pędź Mietku, pędź! z 2024-10-10 12:44 (42)
ATASCII Compo - 4. edycja z 2024-10-06 19:12 (16)
Gra "Dangerous City" uwolniona! z 2024-10-03 15:49 (23)
Miniaturowe Atari #2 z 2024-09-30 19:15 (13)
Wkrótce "Bubble Bobble" na Atari z 2024-09-27 10:34 (52)
Pokłosie KWAS #34 - Projektowanie cartów Atari z 2024-09-26 20:28 (9)
Nocne Retro Granie w Poznaniu z 2024-09-24 20:35 (1)
O kodowaniu efektów dema na Atari STE z 2024-09-22 15:58 (27)
Co nowego dla Atari Portfolio? z 2024-09-19 19:43 (0)
Najmniejsze Atari cz. II z 2024-09-17 21:07 (4)
Nadlatuje polski sokół! z 2024-09-12 18:44 (16)
Atarowskie maleństwo po raz piąty! z 2024-09-09 18:58 (2)
Pamiętniczek dinozaurowych koderów z 2024-09-05 14:01 (12)
"Mafia" - od zera do supergangstera z 2024-09-03 23:55 (20)
Wkrótce spotkania z 2024-09-02 20:38 (5)
«« nowszestarsze »»

Pomocnik/Helper
Gry/Games

Katalog gier (konwencja TOSEC)

Opisy gier
"Old Towers" (Atari ST) opisał Misza (19)
Submarine Commander opisał Kaz (35)
Frogs opisał Xeen (0)
Choplifter! opisał Urborg (0)
Joust opisał Urborg (16)
Commando opisał Urborg (35)
Mario Bros opisał Urborg (13)
Xenophobe opisał Urborg (36)
Robbo Forever opisał tbxx (16)
Kolony 2106 opisał tbxx (3)
Archon II: Adept opisał Urborg/TDC (9)
Spitfire Ace/Hellcat Ace opisał Farscape (8)
Wyspa opisał Kaz (9)
Archon opisał Urborg/TDC (16)
The Last Starfighter opisał TDC (30)
Dwie Wieże opisał Muffy (19)
Basil The Great Mouse Detective opisał Charlie Cherry (125)
Inny Świat opisał Charlie Cherry (17)
Inspektor opisał Charlie Cherry (19)
Grand Prix Simulator opisał Charlie Cherry (16)
«« nowszestarsze »»

Katalog gier (konwencja Kaz)
Aktualizacja: 2024-10-27
Liczba katalogów: 8503, liczba plików: 37151
Zmian katalogów: 13, zmian plików: 23

0-9 A B C D
E F G H I
J K L M N
O P Q R S
T U V W X
Y Z inne
zipCałość 2934 MB


Wewnętrzne/Internals



   Nowinki tworzone dzięki CuteNews
Time Wizard
Krzysztof „Amarok” Piotrowski w ubiegłym roku zadebiutował udaną Arcadią w stylu gier Luxor czy Zuma. A w tym roku na konkurs programistyczny ABBUC przygotował platformówkę „Time Wizard” (luźno inspirowaną świetną grą Braid z 2008 roku, dostępną na wiele współczesnych platform).

Poniżej przedstawiamy opis gry i jej technikaliów przygotowany przez autora i opublikowany na naszym forum w ostatnich tygodniach (tutaj odpowiedni wątek). Warto podkreślić, że Amarok po raz kolejny stworzył swoją produkcję samodzielnie, pisząc kod, rysując grafikę oraz adaptując utwory muzyki klasycznej przy wykorzystaniu własnego playera.

Amarok pisze tak:

Z ogromną przyjemnością chciałbym przedstawić Wam moją grę wysłaną na konkurs ABBUC Software Contest 2023. Time Wizard jest platformową grą, w której gracz posiada zdolność manipulacji upływem czasu.



Fabuła gry:
Roboty z przyszłości próbują zmienić historię, żeby rządzić światem. Jedynym ratunkiem dla ludzkości jesteś ty, Time Wizard (Czasodziej ;)). Musisz udać się do przyszłości, do świata robotów, żeby zapobiec katastrofie. Twoim zadaniem jest zebranie całej energii zgromadzonej w klepsydrach, żeby roboty nie mogły cofnąć się w czasie.

Misja jest trudna, ale twoją przewagą jest umiejętność manipulacji czasem. Możesz go zatrzymać, cofnąć albo przewinąć do przodu. Bądź jednak czujny! Niektóre obiekty są odporne na manipulację czasem i nie możesz ich kontrolować.

Sterowanie:
Podczas gry naciśnij przycisk w dżojstiku, żeby zacząć manipulację czasem. Kiedy przycisk jest wciśnięty, przesuń w lewo, żeby cofnąć czas lub w prawo, żeby przywrócić zapisaną historię.
Możesz zmieniać tempo upływu czasu poprzez wychylenie dżojstika w lewo lub prawo.
Zwolnij przycisk, żeby przywrócić normalny upływ czasu.
Jeśli zginiesz, naciśnij przycisk i wychyl dżojstik w lewo, żeby cofnąć czas.
Naciśnij klawisz START, żeby zrestartować poziom.
Naciśnij klawisz SELECT, żeby przejść do głównego ekranu.

Dodatkowe informacje:
Na głównym ekranie jest możliwość wyboru jednego z 15 poziomów. Na początku wszystkie poziomy za wyjątkiem pierwszego są zablokowane. Musisz przejść dany poziom, żeby odblokować następny. Aby to zrobić należy zebrać wszystkie klepsydry, a następnie przejść do portalu czasowego.

Masz ograniczony czas na zaliczenie poziomu, ale pamiętaj, że zawsze możesz cofnąć czas jeśli tego potrzebujesz. Czas, którego nie wykorzystasz, jest wynikiem danego poziomu. Im więcej, tym lepszy wynik. Wartość sumaryczna ze wszystkich poziomów jest twoim całkowitym wynikiem widocznym na ekranie głównym.

Minimalne wymagania:
• Komputer lub emulator Atari 8-bit z co najmniej 128kB RAM (dodatkowa pamięć RAM jest wykorzystywana do zapisywania i odtwarzania historii gry).
• Dżojstik albo inny kontroler wpięty do portu 1.

Rekomendowane jest odblokowanie zapisu na dyskietce, żeby zachowywać wyniki oraz informację o aktywnych poziomach.



Poniżej dla zainteresowanych jeszcze garść technicznych informacji na temat gry. Przy okazji chciałbym podziękować całej społeczności Atari za ogrom wiedzy, którą chętnie się dzielą. W szczególności wyróżniłem niektóre osoby, których narzędzi użyłem podczas tworzenia Time Wizarda.


Czas trwania projektu:
Prace nad projektem zajęły mi mniej więcej 5 miesięcy od końca lutego do końca lipca. Historia gita zawiera 175 commitów, które zostały wprowadzone w przeciągu 93 dni.

Środowisko programistyczne:
Gra została zaimplementowana w MadPascalu, którego autorem jest Tomasz Biela (@tebe). Moje środowisko programistyczne to Visual Studio Code z rozszerzeniem do Pascala, którego autorem jest Allesandro Fragnani.


Kod źródłowy zajmuje około 10k linii, w tym około 2k to kod w asemblerze. W asemblerze zaimplementowałem głównie obsługę przerwań, silnik dźwiękowy oraz najbardziej krytyczne elementy wymagające szybkich obliczeń.

Kod wynikowy, czyli plik xex zajmuje niecałe 54 kB pamięci, a całość znajduje się na dyskietce 90 kB i uruchamiana jest pod kontrolą systemu DOS 2.5.

Środowisko testowe:
Do testowania i debugowania programu wykorzystywałem emulator Altirra, którego autorem jest Avery Lee (@phaeron).
Użyłem także swojego wysłużonego komputera Atari 130XE z SIO2PC jako emulator stacji dyskietek.


Grafika tytułowa i końcowa:
Ekrany tytułowy oraz końcowy (widoczny po przejściu całej gry) są wyświetlane w bitmapowym trybie Antic E. Widoczna większa ilość kolorów niż 4 jest wynikiem przerwań DLI oraz użycia grafiki graczy i pocisków (Player/Missile Graphics).

Obrazy pierwotnie narysowałem w programie Inkscape, następnie wyeksportowałem je do bitmap o docelowej rozdzielczości dla Atari. Ostatnie szlify i korekty obrazów wykonałem w programie MS Paint.


Następnie przygotowałem skrypty w Pythonie konwertujące bitmapy do wynikowych plików do Atari. W ten sposób mogłem wygenerować pliki grafiki 2-bitowej głębi kolorów do formatu Antic E, jak i dane grafiki graczy i pocisków.

Dodatkowo generowany jest szkielet programu obsługi przerwań DLI do zmiany kolorów oraz pozycji graczy i pocisków w poszczególnych liniach ekranowych.

Grafika plansz:
Wszystkie elementy planszy oraz elementy ponad nią są w znakowym trybie ANTIC 4. Przygotowałem w sumie 4 zestawy fontów – jeden do tekstów i elementów GUI (widocznych też w menu głównym), drugi to elementy graficzne na planszy. Pozostałe 2 zawierają grafikę wykorzystywaną podczas animacji elementów na planszy.

Fonty przygotowałem w programie Atari FontMaker, którego autorami są Martin Simeček (@matosimi) oraz Peter Hinz (@RetroCoder).



Grafika bohatera:
Bohatera jest rysowany przy pomocy grafiki graczy i pocisków – całkowity rozmiar bohatera to 10x18 pikseli. Wykorzystałem nałożenie na siebie odpowiednich par graczy i pocisków, żeby uzyskać więcej kolorów.

W sumie powstało 36 klatek animacji zawierających różne elementy ruchu bohatera. Do projektowania grafiki użyłem edytora SprEd, którego autorem jest Wojciech Bociański (@bocianu).



Muzyka i dźwięki:
Jedną z idei gry Time Wizard jest możliwość przewijania czasu gry, w tym odtwarzanych efektów dźwiękowych i muzyki. Zdecydowałem się na stworzenie prostego silnika umożliwiającego odtwarzanie muzyki i dźwięków z różną prędkością, w tym również wspak.

Silnik ten ma pewne ograniczenia i nie daje takiej elastyczności odtwarzania jak np. Raster Music Tracker w kontekście efektów, filtrów itp. Jednak w tym przypadku nie to było istotne – ważniejsze było wydajne odtwarzanie dźwięku z różnymi prędkościami.

Ostatecznie 3 kanały są wykorzystywane do odtwarzania muzyki, a czwarty do efektów dźwiękowych. Muzykę oraz efekty przygotowałem w programie Raster Music Tracker, którego autorami są Radek Sterba (Raster) oraz Vin Samuel (@VinsCool).




Tak przy okazji, w grze można usłyszeć następujące utwory:
- "Kyrie Eleison" W. A. Mozarta
- "Waltz of the Flowers" (Walc kwiatów) z baletu "Dziadek do orzechów" P. I. Czajkowskiego
- "Dance of the Little Swans" (Taniec małych łabędzi) P. I. Czajkowskiego
- "Voices of Spring" (Odgłosy wiosny) J. Straussa syna
- "Sonata No. 8 Op. 13" L. Van Beethovena

Kompresja:
Gra wykorzystuje dane graficzne, dźwiękowe i inne, które zajmują sporo miejsca, dlatego zdecydowałem się na wykorzystanie kompresji danych, żeby wszystko pomieścić w pamięci RAM.

Po kilku próbach zdecydowałem się na wykorzystanie (de-)kompresora zx5, którego autorami są: Einar Saukas oraz Krzysztof Dudek (@xxl). Prawie 45 kB danych udało się skompresować do rozmiaru niecałych 16 kB, co daje poziom kompresji na poziomie około 35%.

Poziomy:
Przygotowałem bardzo prymitywny edytor poziomów w języku Python i bibliotece PySimpleGUI. Edytor nie jest zbyt wygodny w użytkowaniu, ale nie miałem czasu na implementowanie czegoś bardziej wyrafinowanego.



I to właściwie wszystkie podstawowe informacje techniczne. Gdybyście mieli jakieś pytania, to śmiało piszcie - postaram się wyjaśnić w miarę możliwości.


***

To tyle od Amaroka, dziękujemy za tak szczegółowy opis i życzymy mu powodzenia w konkursie ABBUC!

Jeśli chodzi o tegoroczną edycję, to zgłoszono łącznie 11 gier i 3 programy narzędziowe. Kiedy Time Wizard będzie mógł być udostępniony? Walne zgromadzenie niemieckiego klubu ABBUC odbędzie się w sobotę 28 października [EDIT: poprawiona data] i wówczas możemy się spodziewać ogłoszenia wyników konkursu, a później stopniowego udostępniania gier przez twórców.

2023-09-20 20:29 by "Adam"
komentarzy: 24
xman @2023-09-20 21:20:06
Świetna gra. Czy ktoś z szanownego grona Atarowców orientuje się, czy członkowie ABBUC dostali już gry zgłoszone na konkurs do testów?
Benoid Leroy-Dubois @2023-09-20 21:22:53
Zapowiada się fantastyczna gra!
Obi Ataronobi @2023-09-20 21:37:44
Wygląda super!
CharlieChaplin @2023-09-20 22:25:01
The ABBUC members have not received the games of the competition yet, think it will take a few more days or maybe one more week (the paper-supplements are currently at the printery).

The paper-supplement for magazine 154 has a size of 68 pages and the paper supplement for the Sondermagazin has a size of 32 pages - both required quite some time for editing, proof-reading and creating the layout. And the "Sondermagazin 53" (special magazine nr. 53) features four disksides with all programs of the contest, while magazine nr. 154 features two disksides. The disks took also some time to create and test before they are copied with several Super Speedy and Mega Speedy drives and released to the public.
emkay @2023-09-20 22:59:25
Everything is fine. If only the sound was "2023" and not "1970" ;)
xman @2023-09-21 08:39:37
CharlieChaplin: Thank you for the information!
jhusak @2023-09-21 09:51:08
The sound is great and fits the game very well.
_ilmenit_ @2023-09-21 12:58:35
@emkay, considering your "achievements" and general level of understanding of programming topics, maybe you should be a little bit more humble instead of criticizing.
MDW2 @2023-09-21 18:08:16
Uuuaauuu. To jest ładne, w jakimś stopniu innowacyjne (przynajmniej na ośmiobitowcach, a już na pewno na Atari), pomysłowe, wygląda na świetnie wykonane i grywalne.

Miałem zapytać o to jak jest robione cofanie czasu ale opis to wyjaśnił (wymagane 128KB RAM) i już sobie wyobrażam. Szacun za zaimplementowanie tego na ośmiobitowcu.
Bardzo mi się podoba to co się dzieje podczas cofania czasu (paleta czarno-biała i te niby VHS-we "śmieci" na ekranie).

Generalnie cała grafika bardzo pozytywnie zasakauje. Każdy element jest zrobiony ze smakiem, wyczuciem, bez szmiry, nadmiernych "efektów" w stylu disco lat 80 tylko po to żeby pokazać atarowską tęczę i że Atari też potrafi. :)
Ostatni raz byłem tak zachwycony oprawą graficzną stworzoną przez programistę we Flobie, a wcześniej w latach 90 w produkcjach Kuby Husaka.
Jak dla mnie w świecie małego Atari jest już trzech Jakubów Husaków: oryginał, Bocianu i Amarok. I wszyscy aktywni!

Amarok - ode mnie dostajesz złoty medal. Nie ciesz się za bardzo, bo w świecie ten tytuł ma zerowe znaczenie. :) Ale u mnie stoisz na podium razem z Kubą Husakiem, Bocianu i Leonardem da Vinci (tym prawdziwym ze średniowiecza).
MDW2 @2023-09-21 18:10:29
Leonardo da Vinci urodził się rok przed symboliczna datą końca średniowiecza więc proszę mi się tu nie czepiać, że gość był z renesansu. :) ;) Wtedy wszystko powoli postępowało. ;)
amarok @2023-09-21 19:20:34
@emkay, you are compelety right. Time Wizard likes music with an old sound, so he took his favorite songs to the future. ;)

@MDW2, dziękuję bardzo za miłe słowa, ale nie jestem godzien stać pośród takich Twórców, których wymieniłeś.

Szczęśliwie dla nas wszystkich jest wielu niespotykanie zdolnych programistów, którzy mają chęć i umiejętność tworzenia niesamowitych gier. Oj, chciałoby się widzieć to wszystko w latach 80-tych :)
Adam @2023-09-21 22:14:48
quote (MDW2):

Ostatni raz byłem tak zachwycony oprawą graficzną stworzoną przez programistę we Flobie, a wcześniej w latach 90 w produkcjach Kuby Husaka.


Jeśli chodzi o połączenie talentu programistycznego i graficznego - ciekawsze przykłady z ostatnich lat:

ś.p. Jason Kelk - Callisto (2012) - przy czym on nie pisał muzyki:
https://www.youtube.com/watch?v=6EG98bkk... />
Michał Jaskuła - Wasteland (2019) - muzyka też jest:
https://www.youtube.com/watch?v=LNkBwSzE...

KK (Krzysztof Kluczek) - Druidarium (2018) - mocny muzycznie:
https://www.youtube.com/watch?v=dRtTSJoZ...

Można też wspomnieć o powstającym "Dude Story" - Mq robi tam wszystko :)
Anon @2023-09-22 07:41:38
Nie zapominajmy o Shanti77, to też programista level deluxe. A gra wygląda świetnie
Adam @2023-09-22 14:49:36
@Anon: a o czym piszesz? Bo dyskusja dotyczy osób łączących kodowanie i grafikę.

Możesz wskazać jakąś grę, do której Shanti77 stworzył oryginalną grafikę? Bo ja znam jego gry, w których adaptował grafikę np. z wersji arcade albo C64 oraz takie gry, w których pomagał mu grafik.

Ostatnio współpracuje z Odyńcem - jeśli piszesz o "świetnie wyglądającej" grze, to może masz na myśli właśnie grafikę Odyńca w "Trax".
tr1x @2023-09-23 18:13:33
Gra bardzo mi się podoba wizualnie. Wygląda jak z jakiejś lepszej platformy niż A8 (choć A8 to świetna platforma) :)
jhusak @2023-09-24 09:26:10
W ogóle tego rodzju grafika z czarnymi krawędziami robi wrażenie "konsolowej". Gra wygląda przepięknie i wyznaczyła by w epoce nowe trendy jakości. Gratulki.
jhusak @2023-09-24 09:33:39
A co do "człowieków orkiestrów" to nie można wspomnieć o TDC, który nie wiem, czy wśród dziesiątków (jeśli nie setek) swoich produkcji kiedykolwiek się skalał pożyczoną grafiką czy muzyką? Pewnie w jednostkowych przypadkach tak, np. Tomcat, ale jednak zwykle tego nie robi.
Adam @2023-09-24 13:47:46
TDC korzysta praktycznie zawsze z pomocy jakiegoś muzyka, a graficznie sporo razy korzystał z pomocy (np. Bioptronid, Calamanis, Grim Ritual) - ale fakt, że graficznie najczęściej radzi sobie sam.
IRATA4 @2023-09-24 15:46:37
No, no, kolorowo, atarowo, ładnie. :)
kade @2023-09-25 15:16:25
Giera wyglada super !
Wojtek @2023-09-30 16:27:21
Wow!
Adam @2023-10-02 23:04:10
Jednak walne zgromadzenie klubu, podczas którego mają być ogłoszone wyniki, odbędzie się 28.10 w sobotę, a nie jak początkowo napisałem 22.10. Poprawiłem w tekście.
Programista Bart @2023-11-03 12:27:15
Super produkt po przeczytaniu naszło mnie żeby spróbować jakiś hello world pod 8 bit ... czy mogę liczyć na wsparcie ? w bascicu to umiem i naklepałem kiedyś heartlight Avalonu zgrywusem Mam już VSCode ..... macie jakiś namiar na jakis tutorial MadPascala ? Jakiegoś gita z example ?
Adam @2023-11-05 00:34:35
@Programista Bart: przykłady dołączone są do paczki Mad Pascala.

Wątek na naszym forum dotyczący początków w MP: https://atarionline.pl/forum/comments.ph...

Niektórzy programiści gier prezentują swój kod, np. Bocianu: https://gitlab.com/bocianu

Na jego stronie jest też wstępny materiał o wykorzystaniu współczesnych narzędzi developerskich przy programowaniu na Atari: https://bocianu.atari.pl/dokumenty
nickname
e-mail / website (opcjonalnie)
Aktualne tematy
IRQ i DLI (23)
ostatni: 09-11-2024 22:50, tebe
Silly Venture 2024WE - in tribute... (89)
ostatni: 09-11-2024 22:17, as...
TOSSTer czyli programowalny przeł... (38)
ostatni: 09-11-2024 22:01, laoo
Zmiany / usprawnienia na AOL (319)
ostatni: 09-11-2024 21:06, jhusak
ATARI BASIC: problem z wczytaniem... (5)
ostatni: 09-11-2024 20:59, marok
Nowe okładki gier - MieczeValdgira (453)
ostatni: 09-11-2024 20:53, lexx
Zewnętrzne 512 ram z gniazdem carta (20)
ostatni: 09-11-2024 17:07, starymarabut
RMT hacking (257)
ostatni: 09-11-2024 16:57, emkay
Listopadowy sztab warszawski (7)
ostatni: 09-11-2024 04:26, as...
Zmiany w bazie gier, dem, użytków (965)
ostatni: 08-11-2024 23:46, CharlieChaplin
Lord of the Orb (68)
ostatni: 08-11-2024 23:26, XaVeR
Ciekawostki (5588)
ostatni: 08-11-2024 10:02, bruno_j
Ruf in Trouble (21)
ostatni: 07-11-2024 22:09, Mq
szukam programow do przetestowani... (6)
ostatni: 07-11-2024 19:26, gregor2
Natural Excess (4)
ostatni: 07-11-2024 17:08, jhusak

Kategorie Forum Atarum

Użytkowników: 2843
Ostatnio zarejestrowany: kulfon
Postów ostatniej doby: 44

Spotkania i zloty / Meetings & Parties

Najbliższe imprezy
link do naszych spotkań online, zapraszamy do odwiedzenia kanału zoom również przez kod QR:

KWAS

Kalendarz AOL


Społeczność/Community

Stragan
Nowe, pojemniejsze RAM-Carty oferuje Kaz (21)
"mouSTer" czyli myszka ST oferuje Kaz (30)
Atari USBJoy Adapter oferuje Jakub Husak (0)
Programy: Kolony 2106 oferuje Kaz (7)
Sprzęt: rozszerzenia oferuje Lotharek (111)
Gadżety: naklejki, pocztówki oferuje Sikor (11)
Sprzęt: cartridge RAM-CART oferuje Zenon (7)
Miejsce na drobne ogłoszenia kupna/sprzedaży oferuje Kaz (58)
Sprzęt: interfejs SIO2IDE oferuje Piguła (0)
Sprzęt: interfejs SIO2SD oferuje Piguła (55)

Użytki/Utils
Sprzęt/Hardware

Wynalazki
Atari i Bluetooth napisał Kaz (34)
SIO2PC-USB napisał Larek (45)
Nowe SIO2SD napisał Larek (0)
SIO2SD w CA12 napisał Urborg (12)
Ratowanie ATMEL-ów napisał Yoohaas (12)
Projektowanie cartów napisał Zenon (12)
Joystick do Atari napisał Larek (54)
Tygrys Turbo napisał Kaz (11)
Testowałem "Simple Stereo" napisał Zaxon (5)
Rozszerzenie 1MB napisał Asal (20)
Joystick trzyprzyciskowy napisał Sikor (18)
Moje MyIDE oraz SIO2PC na USB napisał Zaxon (16)
Jak wykonać płytkę drukowaną? napisał Zaxon (26)
Rozszerzenie 576kB napisał Asal (36)
Soczyste kolory napisał scalak (29)
XEGS Box napisał Zaxon (13)
Atari w różnych rolach napisał Różyk (9)
SIO2IDE w pudełku napisał Kaz (5)
Atari steruje tokarką napisał Kaz (15)
DarkMouse napisał Kaz (7)
«« nowszestarsze »»