Laura? Ktoś? Coś?

Nie ma róży bez kolców... Miejsce na dyskusję o najmłodszym bracie C64
Wiadomość
Autor
Awatar użytkownika
carrion
Posty: 2351
Rejestracja: 27 lut 2009, 17:38
Kontakt:

Laura? Ktoś? Coś?

#1 Post autor: carrion »

c64portal.pl, retronavigator.com

Vato
Posty: 58
Rejestracja: 27 sty 2017, 19:21

Re: Laura? Ktoś? Coś?

#2 Post autor: Vato »

Mam na kartridżu. Wymaga 64KB i Atari :)
Ten port jakiś toporny wygląda. Larek wie o tym projekcie? :)

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

Re: Laura? Ktoś? Coś?

#3 Post autor: carrion »

Mam na kartridżu. Wymaga 64KB i Atari :)
Bez kartridża, jako plikówa wymaga 128 kilo, co mnie mocno zastanawiało i nieomieszkałem autora spytać o to na Retronizacji.
Ten port jakiś toporny wygląda.
może dla tego, że to nie port, a już tym bardziej nie gotowa gra tylko jednodniowy test zakodowania takiego PoC.
Larek wie o tym projekcie? :)
a jak myślisz? ;)

Na razie nie ma planów co do zrobienia pełnej gry. Ale rozmawiamy sobie... a ja próbuje kodować pomysły w wolnej chwili.
c64portal.pl, retronavigator.com

Vato
Posty: 58
Rejestracja: 27 sty 2017, 19:21

Re: Laura? Ktoś? Coś?

#4 Post autor: Vato »

Tez z nim rozmawiałem na Retronizacji o plikówce i jej wymaganiach.
Dlatego kupiłem wypas z kartridżem :D (wersję angielską mającą kody do leveli)

I kolejny planowany kart też kupię ale póki co o tym ciiiiii ;)

Awatar użytkownika
Sebaloz/Lepsi.De
Posty: 3962
Rejestracja: 14 wrz 2008, 00:02

Re: Laura? Ktoś? Coś?

#5 Post autor: Sebaloz/Lepsi.De »

carrion pisze:nieomieszkałem autora spytać o to na Retronizacji.
Retronizacja to ta wystawa komputerow ktora bezskutecznie chciala sie wpisac jako party na demozoo i demoparty.net
__________________________
Socjopatyczna Legia Commodore

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

Re: Laura? Ktoś? Coś?

#6 Post autor: carrion »

w temacie demozoo to nie wiem...
to była imprezka typu retro zlot (multiplatform) w ostatni weekend w Pawłowicach Śląskich, ale nie miała charakteru demoscenowego jeśli o to Ci chodzi.
c64portal.pl, retronavigator.com

Awatar użytkownika
SUDi
Posty: 1394
Rejestracja: 04 lis 2008, 23:03

Re: Laura? Ktoś? Coś?

#7 Post autor: SUDi »

Sebaloz/Lepsi.De pisze:Retronizacja to ta wystawa komputerow ktora bezskutecznie chciala sie wpisac jako party na demozoo i demoparty.net
Spokojna twa rozczochrana, za 20-30 lat spotkanie trzech tetryków na wózkach puszczających dema z komórki będzie można wpisać jako demoparty ;)

Awatar użytkownika
Sebaloz/Lepsi.De
Posty: 3962
Rejestracja: 14 wrz 2008, 00:02

Re: Laura? Ktoś? Coś?

#8 Post autor: Sebaloz/Lepsi.De »

Nie bedzie mozna. Scenowa policja na posterunku! Rozumiem ze goscie chca swoje wystawy reklamowac na stronach scenowych zeby zachecic do przyjazdu milosnikow komputerow, ale powinni to robic zamawiajac płatne banery reklamowe i reklamowac sie do woli gdzie tylko chca. 100 osob zaplacilo po 30 zl wejsciowki wiec kasa jest. Widziales zeby X2018 czy Datastorm byl zarejestrowany na stronie z dyskotekami typu disco party lata 70/80? W dyskotekach Steps tez nie przerywaja zabawy zeby puscic invitke na Forever :)
__________________________
Socjopatyczna Legia Commodore

Vato
Posty: 58
Rejestracja: 27 sty 2017, 19:21

Re: Laura? Ktoś? Coś?

#9 Post autor: Vato »

Seba chyba wymienione strony mają jakąś administrację, która może wpis usunąć prawda?
Z tego co obaj wiemy RETROnizacja miała odpowiedni status "party" a nie jak pozostałe imprezy o których wspominasz "demoparty" prawda? :D
Może wyślij wniosek zmian do administracji z opisem jakie wg Ciebie powinny być wszystkie statusy albo o zakaz wpisywania "zwykłych" imprez :P
...a mówi się, że scenowców cechuje friendship...

Awatar użytkownika
Sebaloz/Lepsi.De
Posty: 3962
Rejestracja: 14 wrz 2008, 00:02

Re: Laura? Ktoś? Coś?

#10 Post autor: Sebaloz/Lepsi.De »

Takie imprezy cechuje biznes
__________________________
Socjopatyczna Legia Commodore

Vato
Posty: 58
Rejestracja: 27 sty 2017, 19:21

Re: Laura? Ktoś? Coś?

#11 Post autor: Vato »

1. nie wszystkie.
2. i co z tego jak się dobrze bawisz?

Awatar użytkownika
Nitro
Posty: 1551
Rejestracja: 03 wrz 2008, 20:23
Grupa: Black Sun

Re: Laura? Ktoś? Coś?

#12 Post autor: Nitro »

Bierz źródła od autora i portuj :) Low hanging fruit, a gra bardzo zacna.

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

Re: Laura? Ktoś? Coś?

#13 Post autor: carrion »

gra zacna, faktycznie. aż się zdziwiłem jak chwilę pograłem, że z pomysłu Boulder Dasha + Robbo można coś fajnego jeszcze wycisnąć. zabawę z tym traktuję trochę jako wyzwanie i motywację do nauki programowania rodziny C264.
Pierwszą niesamowitą dla mnie rzeczą, o której, przyznaję się nie wiedziałem, było to, że w zasadzie dowolnie można sobie pamięć kolorów (nasze $D800) ulokować - fajnie. reszta na razie bardzo podobna do c64.
wiem jednak na czym się zatrzymam na dłużej. nie mam pojęcia jak na razie zrobić płynnego scrolla w pionie zwłaszcza że będę musiał mieć split screen na dole ekranu na panel z punktami itp... ale na razie walczę.
jakby ktoś chciał pomóc to zapraszam - pisać w tym wątku.

co do kodu oryginalnej Laury... NDA ;)

i przy okazji Nitro prośba. przenieś posty Vato i Sebaloza do knajpy, sam chętnie pogadam o Retronizacji, ale nie tu :)
TIA
c64portal.pl, retronavigator.com

unctio/ver
Posty: 46
Rejestracja: 10 paź 2015, 20:55

Re: Laura? Ktoś? Coś?

#14 Post autor: unctio/ver »

Witajcie.
A ja próbuję sobie na C64.
Nie mam pojęcia jak to wykorzystać W C16? TED chyba nie ma płynnego scrola.

Logika jest, płynny przesuw jest, kolizje itp. -są. Tylko zapału już brak :-)
Brakuje grafiki i układu plansz...
Może za jakiś czas...
Załączniki
laura.jpg
laura.jpg (74.64 KiB) Przejrzano 10497 razy

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

Re: Laura? Ktoś? Coś?

#15 Post autor: carrion »

Witajcie.
A ja próbuję sobie na C64.
Nie mam pojęcia jak to wykorzystać W C16? TED chyba nie ma płynnego scrola.

Logika jest, płynny przesuw jest, kolizje itp. -są. Tylko zapału już brak :-)
Brakuje grafiki i układu plansz...
Może za jakiś czas...
Witaj
Oczywiście że TED ma płynny scroll - dokładnie tak samo robiony jak VIC-II (tzn analogicznie jest $D016 i $D011)
i pewnie dało by się wykorzystać to co zrobiłeś na C64 w wersji na C+4.
Może jakoś połączymy siły? Tak jak pisałem traktuję to jako lekcję programowania, ale może coś z tego wyjdzie.
Co masz na myśli pisząć logika? masz zaprogramowane AI przeciwników? bomby? ogień, lasery?

Pytam bo ja do tego jeszcze nie doszedłem. teraz pracuję nad "ruchem kamery" za bohaterem.
Czy przewijając ekran przewijasz pamięć kolorów (d800?) czy masz wszędzie stały kolor w d800? ja chciałbym skorzystać z dobrodziejstwa mapy kolorów i użyć na c+4 większą liczbę kolorów skoro mam.

Co do grafiki to ja na szybko wyrypałem sobie z wersji atarowej (z Laura Konstruktora) i na razie wystarcza.
c64portal.pl, retronavigator.com

unctio/ver
Posty: 46
Rejestracja: 10 paź 2015, 20:55

Re: Laura? Ktoś? Coś?

#16 Post autor: unctio/ver »

Byłem pewien, że C= okrawając TEDa z funkcji, usunęło również scroll.

Właśnie to miałem na myśli, pisząc o logice – zachowanie się wszystkiego co jest na ekranie.
Podzieliłem to na obiekty aktywne, tzn sprawdzające z czym kolidują albo na co nachodzą (bohater, przeciwnicy, lasery, bomby, strzały, ogień itp.)- ich stan, ilość i współrzędne są zapamiętane w tablicach i bierne – murki, ślady, monety itd., obecne tylko na mapie planszy…
Nie wszystko jeszcze działa, są drobne błędy itp., i pewnie nie ma wszystkiego bo w oryginał grałem tylko parę chwil by zobaczyć jak to ogólnie działa.

Bardziej szczegółowo wygląda to tak:
w pamięci jest:
1KB mapy planszy „40x20” – to plansza „logiczna” - tu sprawdzane są kolizje itp., każda zmiana w tym obszarze jest od razu odwzorowana w poniższej pamięci,
4KB graficznego odwzorowania planszy – „80x40”, każdy element ma 2x2 znaki stąd jest tego 4x tyle.
2 x 1KB ekranu tekstowego w podwójnym buforowaniu – wyświetlane na zmianę,
3 x 2KB na trzy zestawy wzorców znaków. Animowanie każdego z elementów to po prostu cykliczne, co~0,3s, przełączanie zestawów znaków w ten sposób: 1, 2, 3, 2, 1, 2, 3, 2, 1…
W C64 w 256 wzorcach mieszczą się wszystkie obiekty + 26 liter, cyfry i inne drobiazgi, nie to co ataryna… :-)

Płynny przesuw zrobiłem w ten sposób:
co przerwanie przepisuję kawałek z tego 4KB obszaru odwzorowującego mapę logiczną do jednego z buforów. W każdej ramce przepisuję 1/4 obrazu. W ramce 0 przełączam wyświetlanie obrazu na $C000 i przesuwam (odpowiednio do ruchu) wskaźniki: X (co 2) i Y (co 160). Do 3 ramki przepisywany jest cały obraz do $C400, w 4 ramce przełączam wyświetlanie obrazu na $C400, a kolejny przepisuję do $C000 w kolejnych ramkach aż do 7. Jednocześnie w każdej ramce przesuwam obraz odpowiednio w $D011 lub/i D016.
Działa bardzo ładnie, problem jednak w tym, że w C64 nie da się buforować pamięci koloru. Trzeba by ją przepisywać całą pomiędzy ramkami, a na to nie ma już czasu.
Poza tym mapa kolorów musiała by być również odwzorowana w innym obszarze 4KB, dodatkowe przepisywanie itp. - zajęło by to dużo pamięci, dużo czasu...
Wiem, że da się to zrobić bo są gry z płynnym przesuwem we wszystkie strony razem z mapą kolorów, ale tego nie da się wykonać pisząc funkcje w C. (przynajmniej w CC65, który w ogóle nie optymalizuje kodu – to taki trochę lepszy „interpreter basic”).
Dlatego mapa kolorów jest zapełniana jednolicie dla danej planszy.

Cała procedura przesuwu obciąża w ok 30% CPU, więc zostaje jeszcze sporo dla logiki.
Algorytmy logiki z kolei wywoływane są co czwartą ramkę, ale poza przerwaniami, więc mogą trwać znacznie dłużej, dlatego byle jak napisany kod wciąż działa...

Program napisałem w większości w C w stylu mało „akademickim” (na zasadzie: jak działa to nie ruszać :-) ).
Tylko procedury przepisywania ekranu są w asm. Mimo to procesor wyrabia się bez problemu, przerwania i procedury nie nachodzą na siebie.

Jeśli w C+4 pamięć kolorów jest relokowalna, to obowiązkowo trzeba to wykorzystać, by ukrócić to pretensjonalne „na Atari da się lepiej” :)
TED nie ma sprite-ów – problem może być z dolną krawędzią obrazu nad nieruchomym panelem – widać szarpanie. W C64 zakryłem go po prostu paskiem z czarnych duszków. W C+4 pewnie trzeba będzie wymyślić jakąś inną metodę.

Trochę doszlifuję to co nawymyślałem a wtedy zamieszczę jakiś „preview”.

unctio/ver
Posty: 46
Rejestracja: 10 paź 2015, 20:55

Re: Laura? Ktoś? Coś?

#17 Post autor: unctio/ver »

previef

wywalanie do basica po wdepnięciu w g... nie jest błędem :)
Załączniki
laura64.rar
(6.89 KiB) Pobrany 286 razy

Awatar użytkownika
Nitro
Posty: 1551
Rejestracja: 03 wrz 2008, 20:23
Grupa: Black Sun

Re: Laura? Ktoś? Coś?

#18 Post autor: Nitro »

Omg, z całym szacunkiem dla larka ale on to pisał bodajże 4-5 lat a tu w pare dni demo.

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

Re: Laura? Ktoś? Coś?

#19 Post autor: carrion »

wow. faktycznie masz już sporo gotowej mechaniki.
patrząc na ten level mogę powiedzieć że mam podobną funkcjonalność (oprócz płynnego scrolla w pionie).
z twojego opisu widzę też, że wpadłem na podobne rozwiązania. tzn mam 2 mapy 40x20 do kolizji oraz 80x40 którą przepisuję do $0400.
dzisiaj chwilę posiedziałem, pobawiłem się w konwertowanie grafiki którą dał mi Larek i zrobiłem animowane bloczki, jako zmiana charset'ów - tak jak na atari. tutaj TED jest bardzo elastyczny.
nie mam jeszcze podwójnego buforowania i to zrobię w następnej kolejności zanim zacznę dodawać logikę gry.
jak dam radę to wstawię niebawem filmik z działania obecnej wersji.
aha - trochę prokrestynowałem i zrobiłem ekran tytułowy do gry. przyda się... :)
c64portal.pl, retronavigator.com

unctio/ver
Posty: 46
Rejestracja: 10 paź 2015, 20:55

Re: Laura? Ktoś? Coś?

#20 Post autor: unctio/ver »

Gdyby były jakieś problemy z pewnymi elementami logicznymi, to służę pomocą.
Np. przez pół dnia wymyślałem jak zrobić rozprzestrzenianie się ognia, zanim wpadłem na „genialny” pomysł.
Podobnie z laserami i zasłanianiem ich innymi obiektami… itd.

Teraz szukam jakiegoś dobrego algorytmu pseudolosowego, który miałby w miarę jednorodny rozkład przy wywołaniach co ramkę...

ODPOWIEDZ