Tony na C64

Szukasz drobnej pomocy przy kodowaniu, albo chcesz przedstawić światu swoją gotową lub w trakcie realizacji produkcję? To właściwy dział.
Wiadomość
Autor
Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#21 Post autor: thevoid »

Gordian pisze:
02 lip 2023, 08:41
Nie wiem czy to coś zmienia, ale jeśli używasz banku 0, to postać możesz trzymać na stronie zerowej, a zwolnioną przestrzeń wykorzystać na "coś jeszcze".
Do gier najchętniej wykorzystuję bank 3 I tak jest w tym wypadku. Ma to dla mnie dwie zalety:
1) bank 3 nie jest zaśmiecony character ROMem
2) bardzo ułatwia mi to zarządzanie pamięcią podczas kodowania gry, tj tworzę sobie segment na dane które będą relokowane i relokuję tam dane na starcie (z reguły są to sprajty i charsety, ew bitmapa, czasami też muzyka)

Niestety w tej grze muzyka musi być w innym miejscu (konkretnie w drugiej części banku 2). Bank 3 prawie w całości zajmują dane graficzne: dwa charsety, dwie strony ekranu (druga tylko po to, aby obciąć hipka przy przechodzeniu między komnatami góra dół, reszta to sprajty, często poupychane po screen ramie i charsetach) No I negocjacje z muzykiem w kwestii rozmiaru pamięci na dane muzyczne były bardzo trudne :wink:

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#22 Post autor: thevoid »

Zgodnie z oczekiwaniami, ta część implementacji była już łatwa.
tony-skulls.png
tony-skulls.png (7.65 KiB) Przejrzano 1201 razy
Poziom do wersji demo nie używa więcej niż 4 takich obiektów na raz, więc mam jednego sprajta w zapasie.

Gordian
Posty: 235
Rejestracja: 14 cze 2021, 13:32

Re: Tony na C64

#23 Post autor: Gordian »

Dlaczego muzyka musi być w drugiej części banku 2?
Czy możesz wyjaśnić problem obcinania postaci i wykorzystania dwóch ekranów?

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#24 Post autor: thevoid »

Gordian pisze:
05 lip 2023, 12:13
Dlaczego muzyka musi być w drugiej części banku 2?
Czy możesz wyjaśnić problem obcinania postaci i wykorzystania dwóch ekranów?
Hej, musi być w drugim, bo się nie mieści w trzecim :wink:. Muzyka zajmie minimum 8kb, nawet jakbym zrobił ten myk z obracaniem duszków, to i tak nie pomieszczę.

A obcinanie postaci to coś, o czym kiedyś czytałem ale zapomniałem. Chodzi o to, że jak postać wychodzi poza ekran z lewej, prawej lub od góry to oczywiście Vic 2 sobie elegancko sprite's obcina, tak że jest efekt wychodzenia poza ekran. No ale ten efekt oczywiście trzeba zrobić ręcznie przy wyjściu na dół, bo po drodze jest jeszcze ten dashboard. Pierwotnie w tej pozycji rastra po prostu przełączałem charset na inny ale pamięć ekranu pozostawała bez zmian. Myślałem, że wystarczy wyłączyć sprajty wtedy i po krzyku. No i okazało się, że to tak nie działa. Jak vic-2 zacznie już Sprite wyświetlać to już wyświetla pełne 21 linii niezależnie od flagi w rejestrze SPRITE ENABLE. Wiec jedyna sensowna metoda, jaką znalazłem to przerzucenie całego dashboarda do drugiej strony ekranu i podmiana wszystkich wskaźników Sprite na tej drugiej stronie na duszka "przeźroczystego". I oczywiście rekonfiguracja rejestru memory Control.

Gordian
Posty: 235
Rejestracja: 14 cze 2021, 13:32

Re: Tony na C64

#25 Post autor: Gordian »

thevoid pisze:
05 lip 2023, 20:52
No ale ten efekt oczywiście trzeba zrobić ręcznie przy wyjściu na dół, bo po drodze jest jeszcze ten dashboard. Pierwotnie w tej pozycji rastra po prostu przełączałem charset na inny ale pamięć ekranu pozostawała bez zmian. Myślałem, że wystarczy wyłączyć sprajty wtedy i po krzyku. No i okazało się, że to tak nie działa. Jak vic-2 zacznie już Sprite wyświetlać to już wyświetla pełne 21 linii niezależnie od flagi w rejestrze SPRITE ENABLE. Wiec jedyna sensowna metoda, jaką znalazłem to przerzucenie całego dashboarda do drugiej strony ekranu i podmiana wszystkich wskaźników Sprite na tej drugiej stronie na duszka "przeźroczystego".
Możesz to zrealizować poprzez zmianę w danej linii rastra koloru postaci na czarny oraz zmianę priorytetu wyświetlania względem tła (czyli schować sprite pod znaki).

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#26 Post autor: thevoid »

Gordian pisze:
06 lip 2023, 08:26
Możesz to zrealizować poprzez zmianę w danej linii rastra koloru postaci na czarny oraz zmianę priorytetu wyświetlania względem tła (czyli schować sprite pod znaki).
Rzeczywiście to zadziała, bo muszę zrobić to maks dla dwóch sprajtów. Spróbuję

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#27 Post autor: thevoid »

Gordian pisze:
06 lip 2023, 08:26
Możesz to zrealizować poprzez zmianę w danej linii rastra koloru postaci na czarny oraz zmianę priorytetu wyświetlania względem tła (czyli schować sprite pod znaki).
Choć jednak moje rozwiązanie ma jedną wielką zaletę. Ukrycie sprajtów i zmiana charsetu robiona jest zapisem do tej samej komórki pamięci ($D018). Dodatkowo zmieniam tam kolor tła na czarny (bo dashboard jest na czarnym tle, a pole gry na odwrót) i wszystko ładnie mam wycyklowane (busy waiting na $D012). Zmiana kolorów wymagałaby pisania do trzech dodatkowych rejestrów, więc prawdopodobnie wyszłoby trochę mniej estetycznie.

Gordian
Posty: 235
Rejestracja: 14 cze 2021, 13:32

Re: Tony na C64

#28 Post autor: Gordian »

thevoid pisze:
06 lip 2023, 14:56
Choć jednak moje rozwiązanie ma jedną wielką zaletę. Ukrycie sprajtów i zmiana charsetu robiona jest zapisem do tej samej komórki pamięci ($D018). Dodatkowo zmieniam tam kolor tła na czarny (bo dashboard jest na czarnym tle, a pole gry na odwrót) i wszystko ładnie mam wycyklowane (busy waiting na $D012). Zmiana kolorów wymagałaby pisania do trzech dodatkowych rejestrów, więc prawdopodobnie wyszłoby trochę mniej estetycznie.
W danej linii rastra możesz zmienić kolor tylko sprajta, który się chowa (albo jakiś warunek, albo samodyfikujący się kod), linię dalej już obydwu.
Dzięki temu zwolniłby Ci się dzięki temu jeden screenram, bo niepotrzebne są już puste sprajty pod dashboardem.

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#29 Post autor: thevoid »

Gordian pisze:
06 lip 2023, 15:07
W danej linii rastra możesz zmienić kolor tylko sprajta, który się chowa (albo jakiś warunek, albo samodyfikujący się kod), linię dalej już obydwu.
Dzięki temu zwolniłby Ci się dzięki temu jeden screenram, bo niepotrzebne są już puste sprajty pod dashboardem.
Tam wciąż zmieści się 12,5 kształtu sprajta :wink:

Ale jak mówiłem, dzięki za sugestię, na pewno rozważę. W pełnej wersji będzie jeszcze gorzej z pamięcią :wink:

Gordian
Posty: 235
Rejestracja: 14 cze 2021, 13:32

Re: Tony na C64

#30 Post autor: Gordian »

thevoid pisze:
06 lip 2023, 19:40
Tam wciąż zmieści się 12,5 kształtu sprajta :wink:
Ach, rozumiem. Część pierwszego screenram gdzie byłby dashboard oraz część drugiego, gdzie byłaby plansza i tak wykorzystujesz:)

Można pomyśleć też o zupełnie innym rozwiązaniu, mianowicie cookie-cut. W pozycji Y gdzie startuje dashboard, a X gdzie schodzi postać, ustawić sprite zapełnionego $ff z priorytetem wyświetlania wyższym niż duszki postaci, ale schowanym pod background.
Wtedy obcinanie jest "za darmo". Nie trzeba zmieniać kolorów duszków, ani $d01b.

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#31 Post autor: thevoid »

Dużo jestem w stanie tego wrzucić na planszę :wink:

https://drive.google.com/file/d/1zvv9Kf ... drive_link

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#32 Post autor: thevoid »

Trochę było cicho w temacie ale tylko dlatego, że było sporo pracy :wink: . Efekty zobaczycie już wkrótce. Na razie kilka screenów.

Wersja demo już we wrześniu. Jest to kompletny poziom "Zamek Montezumy", dwa utwory muzyczne i zaimplementowana niemalże kompletna mechanika gry. Jest dostępne kilka schematów kolorystycznych oraz trainer, tak, aby ułatwić pracę crackerom z CSDB :wink:
splash.png
splash.png (10.39 KiB) Przejrzano 930 razy
intro.png
intro.png (6.69 KiB) Przejrzano 930 razy
cheatmenu.png
cheatmenu.png (2.81 KiB) Przejrzano 930 razy
title-1.png
title-1.png (5.21 KiB) Przejrzano 930 razy
title-cbm.png
title-cbm.png (5.25 KiB) Przejrzano 930 razy
title-green.png
title-green.png (5.31 KiB) Przejrzano 930 razy
ingame.png
ingame.png (7.62 KiB) Przejrzano 930 razy
ingame-2.png
ingame-2.png (7.49 KiB) Przejrzano 930 razy
tony-stones.png
tony-stones.png (7.88 KiB) Przejrzano 927 razy

Awatar użytkownika
carrion
Posty: 2329
Rejestracja: 27 lut 2009, 17:38
Kontakt:

Re: Tony na C64

#33 Post autor: carrion »

c64portal.pl, retronavigator.com

Awatar użytkownika
Osfald
Posty: 107
Rejestracja: 12 gru 2020, 22:58

Re: Tony na C64

#34 Post autor: Osfald »

Gratulacje! :)

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#35 Post autor: thevoid »

Prace nad pełną wersją gry toczą się na 100%. Przy okazji jest bardzo duża szansa, że wersja na C64 wyjdzie poza ograniczenia sprzętowe innych platform :wink:
tony-color.png
tony-color.png (67.92 KiB) Przejrzano 130 razy

Gordian
Posty: 235
Rejestracja: 14 cze 2021, 13:32

Re: Tony na C64

#36 Post autor: Gordian »

O, kurdę! Grafika wygląda świetnie:)
Może będą szanse na ścieżkę muzyczną + efekty dźwiękowe.

Awatar użytkownika
Steffan
Posty: 854
Rejestracja: 04 maja 2019, 19:43
Grupa: BooM!

Re: Tony na C64

#37 Post autor: Steffan »

WOW :shock:
B O O M !
we are the commodore terrorists
-------------------------------------
TEDDY BEER C=64 PARTY [csdb]

Awatar użytkownika
carrion
Posty: 2329
Rejestracja: 27 lut 2009, 17:38
Kontakt:

Re: Tony na C64

#38 Post autor: carrion »

no w końcu. teraz to to wygląda bardzo fajnie, ale...

wiecie, że to oznacza że teraz amigowcy, a pewnie i atarowcy/spectrumowzy powiedzą, ale jak to? to my mamy niekolorowe a c64 ma mieć kolorowe? przerabianie wersji na inne platformy za 3..2..1... ;)
tak czy siak. powodzenia z grą!
c64portal.pl, retronavigator.com

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#39 Post autor: thevoid »

Gordian pisze:
30 sty 2024, 11:24
O, kurdę! Grafika wygląda świetnie:)
Może będą szanse na ścieżkę muzyczną + efekty dźwiękowe.
Mam plan że będzie albo tylko Muzyka od Sami, albo Sound/FX ode mnie. Zamiast muzyki dałbym jakiś ambient sound zależny od komnaty plus odgłosy. Zobaczymy jak to wyjdzie. Nie chcemy zmuszać muzyka do komponowania muzyki na dwa kanały albo z wyłączaniem jednego wbrew jego woli.
Ostatnio zmieniony 30 sty 2024, 11:58 przez thevoid, łącznie zmieniany 1 raz.

Awatar użytkownika
thevoid
Posty: 64
Rejestracja: 27 wrz 2017, 15:51

Re: Tony na C64

#40 Post autor: thevoid »

carrion pisze:
30 sty 2024, 11:46
no w końcu. teraz to to wygląda bardzo fajnie, ale...

wiecie, że to oznacza że teraz amigowcy, a pewnie i atarowcy/spectrumowzy powiedzą, ale jak to? to my mamy niekolorowe a c64 ma mieć kolorowe? przerabianie wersji na inne platformy za 3..2..1... ;)
tak czy siak. powodzenia z grą!
Hires w 16 kolorach na Atari, jasne :wink:

ODPOWIEDZ