Jako, że Galu pochwalił się w wątku o programowaniu w MAD Pascalu, że w tym języku robi projekt gierki na Atari, pozwalam sobie stworzyć tutaj nowy wątek o tej grze, żeby sprawę uwypuklić, bo jest tego warta.
Przeklejam to, co dotychczas wiemy o projekcie od autora:
Czego można użyć do napisania własnego silnika na potrzeby umiarkowanie dynamicznej gry - z grafiką poziomów opartą o "tilesy", niekoniecznie wymagających częstego odrysowywania? Czy CRT z Blibs będzie OK (szybkość działania + czy to w ogóle jest odpowiedni "poziom abstrakcji" - pytam bo jeszcze nie zacząłem się bawić MP)?
Pobawiłem się i wygląda to zachęcająco. Mam kilka pytań, z góry sorry jeśli było: - czy w przypadku gry korzystającej z "tilesów" rozłożonych na regularnej siatce 10x12 tryb znakowy (z własnym zestawem znaków) będzie "szybszy" (zarówno łatwość użycia, jak i wydajność) niż użycie trybu graficznego? - czy możliwe jest nakładanie grafiki na ekran otwarty w trybie znakowym? Pytam w kontekście MP i dostępnych bibliotek. Czy wiąże się to z jakimiś dodatkowymi ograniczeniami? Chodzi o postać głównego bohatera, która miałaby poruszać się w miarę płynnie pomiędzy "kratkami" planszy 10x12. - rozumiem, że tryb znakowy = 2 kolory na znak? - jakiego narzędzia można użyć do zdefiniowania własnego zestawu znaków (tak, żeby definicję tę dało się "zaimportować" do programu pisanego w MP)? - czy możliwe jest użycie "out-of-the-box" dołączonych playerów muzyki (CMC, RMT) podczas samej rozgrywki (czy mogą działać "w tle", nie zużywając wszystkich zasobów komputera)?
Kolory na znak: czy kolory (te "4-5") są z góry zdefiniowane dla całego ekranu, czy można je redefiniować w obrębie znaku lub np. wiersza?
PMG: chcę obsłużyć tylko jedną postać w całej grze (postać gracza) - jakie wymiary i ilość kolorów mam założyć? Czy będę w stanie (w MAD Pascalu) animować taką postać (zmiana położenia i wyglądu ok. 2-3x na sekundę)?
Tryb 5 będzie OK.
Pokażę co zacząłem robić (wczesny build):
->link<- (filmik)
To port gry z 1993 roku na 16-bitowce (np. Amigę), One Step Beyond. A właściwie port portu tej gry, który przygotowałem kilkanaście lat temu na stare komórki z "Javą". Narysowałem wtedy własną grafikę, która w jednym z wariantów - 160x128 z kafelkami 16x16 - dobrze się wpisuje w tryb 5 Atari. Postać będzie animowana itd., gra będzie się toczyć w tym samym tempie co na Ami, będzie wszystkie 100 leveli z oryginału + może edytor ("konstruktor").
Ładuję własną display listę odpowiadającą tr. 5 oraz swój zestaw znaków, postać jest złożna z 4 "graczy" PMG.
Mam pytania: - przydałby się dodatkowy wiersz na wyświetlanie licznika czasu i numeru levelu; przeczytałem że puste linie (w definicji DL wstawiam ich 24 na początku) są po to aby nie było problemów z overscanem (ucinaniem obrazu na niektórych wyświetlaczach), z kolei widzę że Altirra wyświetla jeszcze większy niewykorzystany obszar POD ekranem (SECAM). Co radzicie? Chcę aby gierka działa dobrze również w NTSC i na telewizorze CRT. - czy zamiast jednokolorwego tła łatwo będzie wyświetlić np. "gradient" (może zmiana rejestru COLBAK na przerwaniach)? Jak jeszcze można urozmaicić grafikę w tym trybie? - czy aby uniknąć śmieci związanych z przesuwaniem PMG w pionie zawsze trzeba czyścić (wypełniać zerami) cały obszar pamięci PMG? Jak to najlepiej robić, żeby uniknąć migania obrazu (jak synchronizować ustawianie z wyświetlaniem kolejnych linii obrazu - przykłady - albo czy jest sposób na "podwójne buforowanie")?
Na komórkę nie przenosiłem grafiki z Amigi bo różne modele telefonów wymagały różnych rozdzielczości, niższych niż amigowa - łatwiej było narysować wszystko od nowa. Nie miałem też oryginalnej muzy w formacie MIDI itd. To było 13-14 lat temu. Na razie przenoszę więc "Jump Off" a nie "One Step Beyond" - ale jeszcze "się zobaczy" (na filmie wersja 176x220):
Kaz zamieścił nie informacje o grze, a głównie z wstępnego "researchu" jaki miał miejsce przed przystąpieniem do prac :)
O grze w skrócie: - gameplayowo 1:1 kopia "One Step Beyond" z 16-bitowców - wszystkie 100 leveli z pierwowzoru - grafika i muzyka - moje - gra plikowa na stockowe 65XE/800XL z 64KB RAM, a jeśli Mad Pascal na to pozwoli to również na Atari 800, tj. CTIA + 48KB RAM, i ładowanie z taśmy)
Pomyślałem, że grę możnaby rozbudować o - nieobecny w oryginale - tryb dla dwóch graczy (na 2 joye), którzy na podzielonym ekranie ścigają się w rozwiązywaniu zagadek. Do tego np. proceduralne (losowe) generowanie nowych plansz i gra by zyskała zupełnie nowy wymiar. Ale nie wiem czy będzie mi się chciało + wymaga przejścia na wyższy tryb graficzny, więc nie obiecuję.