Sprite Studio 64 - moje nowe dzieło
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Sprite Studio 64 - moje nowe dzieło
Witam,
Pół roku temu chwaliłem się na forum grą (typu wąż) - powiem szczerze, tamta gra, nawet dla mnie jako autora to była
kupa gówna. Teraz też nie chwalę się niczym wielkim ani specjalnym ale rzeczą do której się już trochę bardziej przyłożyłem.
Napisałem prosty edytor sprite'ów - pozwala edytować 64 sprite'y umieszczone pod adresami $3000 - $4000, można ew.
zapisać spritebank do pliku PRG. Pomyślałem to sobie tak żeby można było narysować coś w programie a potem "bawić się"
z tym z poziomu BASIC'a.
Ogólnie to zdaję sobie sprawę że żadnego programisty ze mnie nigdy nie będzie ale sprawia mi satysfakcje pisanie takich
programów i chwalenie się nimi w internecie. Jestem otwarty na krytykę ale proszę być trochę wyrozumiałym - ja to robię
dla rozrywki i nie mam żadnych większych aspiracji.
Tu jest link do pobrania obrazu dyskietki:
https://github.com/tstamborski/sprite-s ... dio-64.d64
A tutaj klawiszologia (jakby co)
https://github.com/tstamborski/sprite-s ... -shortcuts
Pół roku temu chwaliłem się na forum grą (typu wąż) - powiem szczerze, tamta gra, nawet dla mnie jako autora to była
kupa gówna. Teraz też nie chwalę się niczym wielkim ani specjalnym ale rzeczą do której się już trochę bardziej przyłożyłem.
Napisałem prosty edytor sprite'ów - pozwala edytować 64 sprite'y umieszczone pod adresami $3000 - $4000, można ew.
zapisać spritebank do pliku PRG. Pomyślałem to sobie tak żeby można było narysować coś w programie a potem "bawić się"
z tym z poziomu BASIC'a.
Ogólnie to zdaję sobie sprawę że żadnego programisty ze mnie nigdy nie będzie ale sprawia mi satysfakcje pisanie takich
programów i chwalenie się nimi w internecie. Jestem otwarty na krytykę ale proszę być trochę wyrozumiałym - ja to robię
dla rozrywki i nie mam żadnych większych aspiracji.
Tu jest link do pobrania obrazu dyskietki:
https://github.com/tstamborski/sprite-s ... dio-64.d64
A tutaj klawiszologia (jakby co)
https://github.com/tstamborski/sprite-s ... -shortcuts
Have a nice day!
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
Dorzucam parę screenshotów (żeby było wiadomo że wgl program działa).
- Załączniki
-
- screenshot-1.jpg (10.88 KiB) Przejrzano 3001 razy
-
- screenshot-2.jpg (10.97 KiB) Przejrzano 3001 razy
Have a nice day!
Re: Sprite Studio 64 - moje nowe dzieło
Nie jestem grafikiem ale mogę dodać od siebie tyle, że działa na fizycznym C64
Drobne uwagi z mojej strony:
- brakuje wskazania koordynatów X/Y
- przechodząc do kolejnego sprajta pod adres który nie został wcześniej "użyty" (klawiszem +) zmienia się pierwszy kolor więc trzeba go ponownie ustawić, jeśli ktoś rysuje klatki animacji to zapewne użyje tych samych kolorów w kolejnej klatce
A z dodatkowych ficzersów to przydałby się na pewno podgląd gotowego sprajta (albo i nawet kilu sprajtów wyświetlanych po sobie bo w Twoich przykładach jest kilka animacji), przydałby się też tryb rysowania w którym przytrzymanie dłużej fire joysticka ustawi (skasuje) piksel w danym miejscu na kolor tła, żeby coś narysować wystarczy wtedy joy
Drobne uwagi z mojej strony:
- brakuje wskazania koordynatów X/Y
- przechodząc do kolejnego sprajta pod adres który nie został wcześniej "użyty" (klawiszem +) zmienia się pierwszy kolor więc trzeba go ponownie ustawić, jeśli ktoś rysuje klatki animacji to zapewne użyje tych samych kolorów w kolejnej klatce
A z dodatkowych ficzersów to przydałby się na pewno podgląd gotowego sprajta (albo i nawet kilu sprajtów wyświetlanych po sobie bo w Twoich przykładach jest kilka animacji), przydałby się też tryb rysowania w którym przytrzymanie dłużej fire joysticka ustawi (skasuje) piksel w danym miejscu na kolor tła, żeby coś narysować wystarczy wtedy joy
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
Dzięki za uwagi. Wskazania koordynatów i przyjmniej jakiś podgląd dodam pewnie już niedługo.
Trochę gorzej z tym zmienianiem się kolorów przy przechodzeniu pod nieużyty adres - wydaje mi
się że to bardziej skomplikowany problem bo np. użytkownik może wczytać plik z dyskietki i wtedy
jakby niewiadomo który sprite jest użyty a który nie. Tzn. można by to chyba rozwiązać zapisując
"użycie" sprite w którymś bicie 64 bajta ale wydaje mi się że to wszystko niepotrzebne komplikowanie
sprawy i nie warte zachodu. Ewentualnie prościej może, przy przechodzeniu pod następny adres,
porównywać wszystkie 63 bajty danych sprite do 0 i na tej zasadzie rozróżniać czy jest pusty po prostu.
Może źle, ale mi się wydaję, że przez to, program stałby się jakby mniej przewidywalny.
Pozatym pozdro, odpłaciłem ci za gwiazdkę na githubie (też gwiazdką w paru repozytoriach).
Trochę gorzej z tym zmienianiem się kolorów przy przechodzeniu pod nieużyty adres - wydaje mi
się że to bardziej skomplikowany problem bo np. użytkownik może wczytać plik z dyskietki i wtedy
jakby niewiadomo który sprite jest użyty a który nie. Tzn. można by to chyba rozwiązać zapisując
"użycie" sprite w którymś bicie 64 bajta ale wydaje mi się że to wszystko niepotrzebne komplikowanie
sprawy i nie warte zachodu. Ewentualnie prościej może, przy przechodzeniu pod następny adres,
porównywać wszystkie 63 bajty danych sprite do 0 i na tej zasadzie rozróżniać czy jest pusty po prostu.
Może źle, ale mi się wydaję, że przez to, program stałby się jakby mniej przewidywalny.
Pozatym pozdro, odpłaciłem ci za gwiazdkę na githubie (też gwiazdką w paru repozytoriach).
Have a nice day!
Re: Sprite Studio 64 - moje nowe dzieło
dobra robota. poszedł news na c64portal.pl. jutro rano się pobawię.
c64portal.pl, retronavigator.com
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
@carrion
W programie jest jeden bug które nie zauważyłem w porę - podczas wczytywania/zapisywania i wpisywania
nazwy pliku, nie da się normalnie tego anulować bo przypisałem ten sam klawisz do wyjścia z programu.
Nie poprawiłem tego jeszcze bo a to sobie zerkam tu na forum, a to co, a to mi się już nie chce zwyczajnie.
Podejrzewam że poprawię to i dodam koordynaty oraz jakiś podgląd (będzie wtedy beta1) ale wszystko na
spokojnie i powoli.
W programie jest jeden bug które nie zauważyłem w porę - podczas wczytywania/zapisywania i wpisywania
nazwy pliku, nie da się normalnie tego anulować bo przypisałem ten sam klawisz do wyjścia z programu.
Nie poprawiłem tego jeszcze bo a to sobie zerkam tu na forum, a to co, a to mi się już nie chce zwyczajnie.
Podejrzewam że poprawię to i dodam koordynaty oraz jakiś podgląd (będzie wtedy beta1) ale wszystko na
spokojnie i powoli.
Have a nice day!
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
Chciałbym poruszyć dwie sprawy:
1. Uwinełem się jednak szybko i napisałem minimalnie poprawioną wersję programu. Dołączam ją w załączniku
albo ewentualnie jest na githubie: https://github.com/tstamborski/sprite-studio-64. Mam pytanie -
czy ktoś (ktokolwiek) mógłby mi pomóc i zamieścić tę wersję na csdb?
2. Carrion w newsie na c64portal jakby lekko mnie zaczepia (nie wiem czy dobrze to odebrałem) żebym wyjaśnił
co miałem na myśli pisząc o używaniu, stworzonych w moim programie, duszków w BASICu. No to chciałbym
krótko opisać ten temat. Mianowicie można sobie napisać np. taki program:
który wyświetla duszka i pozwala nim poruszać joystickiem, a potem załadować sprite'y z pliku zapisanego na
dyskietce:
i można to sobie już uruchomić i poruszać zieloną żabą. Tylko trzeba to zrobić w tej nie odwrotnej kolejności.
Ogólnie to nie jestem największym ekspertem od BASICa (program wyżej wykrzacza się jak wyjechać poza zakres)
i nie do mnie pytania na ten temat ale jakby ktoś miał wątpliwości czy można - można.
Z góry dziękuję za jakikolwiek odzew/odpowiedź.
1. Uwinełem się jednak szybko i napisałem minimalnie poprawioną wersję programu. Dołączam ją w załączniku
albo ewentualnie jest na githubie: https://github.com/tstamborski/sprite-studio-64. Mam pytanie -
czy ktoś (ktokolwiek) mógłby mi pomóc i zamieścić tę wersję na csdb?
2. Carrion w newsie na c64portal jakby lekko mnie zaczepia (nie wiem czy dobrze to odebrałem) żebym wyjaśnił
co miałem na myśli pisząc o używaniu, stworzonych w moim programie, duszków w BASICu. No to chciałbym
krótko opisać ten temat. Mianowicie można sobie napisać np. taki program:
Kod: Zaznacz cały
10 poke 2040,193
15 x=150:y=150
20 poke 53248,x
30 poke 53249,y
40 poke 53287,5
50 poke 53269,1
60 j=peek(56320)
70 if j and 16 then 80
71 poke 53269,0
75 end
80 if j and 8 then 90
85 x=x+1
90 if j and 4 then 100
95 x=x-1
100 if j and 2 then 110
105 y=y+1
110 if j and 1 then 120
115 y=y-1
120 poke 53248,x
130 poke 53249,y
140 goto 60
dyskietce:
Kod: Zaznacz cały
load"examples",8,1
Ogólnie to nie jestem największym ekspertem od BASICa (program wyżej wykrzacza się jak wyjechać poza zakres)
i nie do mnie pytania na ten temat ale jakby ktoś miał wątpliwości czy można - można.
Z góry dziękuję za jakikolwiek odzew/odpowiedź.
- Załączniki
-
- Sprite-Studio-64.zip
- (6.78 KiB) Pobrany 89 razy
Have a nice day!
Re: Sprite Studio 64 - moje nowe dzieło
mógłbym wrzucić na CSDB ale nie wiem w sumie jak dodać cię jako autora w creditsach jeśli nie masz tam konta.
ktoś robił coś takiego? da się?
co do programu to przydał by się ekran z helpem. wiem że klawisze są opisane na gihubie ale nie każdy tam wejdzie jak już pobierze program.
[edit]
ok dodałem. na razie bez creditsów
https://csdb.dk/release/?id=210268
ktoś robił coś takiego? da się?
co do programu to przydał by się ekran z helpem. wiem że klawisze są opisane na gihubie ale nie każdy tam wejdzie jak już pobierze program.
[edit]
ok dodałem. na razie bez creditsów
https://csdb.dk/release/?id=210268
c64portal.pl, retronavigator.com
Re: Sprite Studio 64 - moje nowe dzieło
OK dodałem Cię jako Operator Teleksu do CSDB
c64portal.pl, retronavigator.com
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
Wielkie dzięki, Carrion.
Ekran z helpem miałem w planach niby od początku (co prawda może jako oddzielny prg na tej samej dyskietce)
ale skusiło mnie chwalenie/wystawienie takiej, nie do końca gotowej, wersji - w końcu nie wiadomo czy ten
skromny projekt wgl kiedyś do końca doprowadzę.
Ekran z helpem miałem w planach niby od początku (co prawda może jako oddzielny prg na tej samej dyskietce)
ale skusiło mnie chwalenie/wystawienie takiej, nie do końca gotowej, wersji - w końcu nie wiadomo czy ten
skromny projekt wgl kiedyś do końca doprowadzę.
Have a nice day!
Re: Sprite Studio 64 - moje nowe dzieło
Dowolna praca demoscenowa (gfx, msx, intro/demo itd.) która dostanie się na csdb (najlepiej wydana w kompotach na party, wtedy na pewno się znajdzie w bazie). Jeśli tam trafi, możesz poprosić o konto jako jej autor.
ps. gry nie (są tam strasznie uczuleni na to), chyba że już masz konto, to wtedy jest ok). Poczytaj posty na lemonie (tam co chwile jest gówno burza o konta na csdb dla twórców gier).
pozdro
Steffan
B O O M !
we are the commodore terrorists
-------------------------------------
TEDDY BEER C=64 PARTY [csdb]
we are the commodore terrorists
-------------------------------------
TEDDY BEER C=64 PARTY [csdb]
Re: Sprite Studio 64 - moje nowe dzieło
Kod: Zaznacz cały
ps. gry nie (są tam strasznie uczuleni na to), chyba że już masz konto, to wtedy jest ok).
Ja raz się odbiłem i już nie próbuję - wszakże to forum scenowców a ja scenowcem nie jestem.
PS: podpatrzyłem u kogoś patent, aby w README na GitHubie (gdziekolwiek) robić osobną sekcję dla crackerów - kiedy i z którego brancha / wersji robić cracki. Ciekawe czy to zadziała? Wciąż nie uśmiecha mi się chowanie kodu za prywatnym repo tylko dlatego, żeby na CSDB nie pojawiały się cracki lamerskich, zabugowanych wersji mojego softu tylko dlatego, że kilku kolesi ściga się na statystyki. Bo z drugiej strony promocję przez CSDB doceniam.
pzdr
Maciek
Re: Sprite Studio 64 - moje nowe dzieło
Ej jak to jest natywny tool, to IMHO powinni ci dać konto, ci źli ludzie z CSDB
Jakbyś kolego używał jedynego słusznego KickAssemblera, to poleciłbym Ci mojego wyśmienitego toola do budowania kodu ze źródeł, który potrafi przekształcać pliki CTM na BIN/RAW i nie musiałbyś się pałować w dodawaniu obu rodzajów plików do kontroli wersji
pzdr
Maciek
Jakbyś kolego używał jedynego słusznego KickAssemblera, to poleciłbym Ci mojego wyśmienitego toola do budowania kodu ze źródeł, który potrafi przekształcać pliki CTM na BIN/RAW i nie musiałbyś się pałować w dodawaniu obu rodzajów plików do kontroli wersji
pzdr
Maciek
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
Przy jakiejś, może następnej okazji, postaram się chyba przynajmniej spróbować założyć sobie
konto na csdb. Problem w tym, że też raczej nie poczuwam się do bycia scenowcem jako takim,
a pozatym z tego co czytałem za pierwszą próbą oni odrzucają prawie każdego. Trochę szkoda
bo jak wiadomo najwięcej osób znajdzie mój soft na c64 właśnie tam.
@thevoid
Niestety w chwili obecnej nie używam KickAss, tylko ze swego rodzaju lenistwa trzymam się TMPx.
Ale kiedyś może przesiądę się właśnie na KickAssemblera to wyprobóję gradle i ten plugin. Na
razie to szczerze mówiąc wszystko dla mnie obce - nie wiem czy mocno czy tylko trochę się
wygłupię, ale czy gradle to coś analogicznego (tylko większe możliwości) do linuxowego polecenia
make?
Pozdro.
konto na csdb. Problem w tym, że też raczej nie poczuwam się do bycia scenowcem jako takim,
a pozatym z tego co czytałem za pierwszą próbą oni odrzucają prawie każdego. Trochę szkoda
bo jak wiadomo najwięcej osób znajdzie mój soft na c64 właśnie tam.
@thevoid
Niestety w chwili obecnej nie używam KickAss, tylko ze swego rodzaju lenistwa trzymam się TMPx.
Ale kiedyś może przesiądę się właśnie na KickAssemblera to wyprobóję gradle i ten plugin. Na
razie to szczerze mówiąc wszystko dla mnie obce - nie wiem czy mocno czy tylko trochę się
wygłupię, ale czy gradle to coś analogicznego (tylko większe możliwości) do linuxowego polecenia
make?
Pozdro.
Have a nice day!
Re: Sprite Studio 64 - moje nowe dzieło
Tak czy owak zdecydowanie polecam się jak najszybciej przestawić na KickAss'a, twoja wydajność koderska Ci podziękuje
Re: Sprite Studio 64 - moje nowe dzieło
Bingo - gradle to odpowiednik make. Wywodzi się ze środowiska Javowego, ale można tego używać wszędzie. Jego podstawowa zaleta to przenośność (jako że to narzędzie napisane w Javie) oraz lepszy język, w którym pisze się skrypty (Groovy/Kotlin vs Bash).Operator Teleksu pisze: ↑14 paź 2021, 17:57Na razie to szczerze mówiąc wszystko dla mnie obce - nie wiem czy mocno czy tylko trochę się
wygłupię, ale czy gradle to coś analogicznego (tylko większe możliwości) do linuxowego polecenia
make?
Właściwie zrobiłem ten plugin po to, aby móc w miarę szybko stawiać sobie nowe projekty kickassowe i budować / testować je w środowisku Continuous Integration - bo tak pracuję czy to zawodowo, czy to robiąc OSS. W devie na C64 bardzo mi tego brakowało
pozdrawiam
Maciek
- Operator Teleksu
- Posty: 59
- Rejestracja: 27 lis 2020, 21:31
Re: Sprite Studio 64 - moje nowe dzieło
@thevoid
Trochę żałuję że nie pisałem swojego Sprite Studio 64 od początku w KickAssemblerze ale co teraz poradzić - możliwości żeby automatycznie przekonwertować kod źródłowy z TMPx -> KickAss raczej nie ma.
Możliwość automatycznego eksportu z SpritePada i CharPada, to na tyle fajna rzecz, że muszę z ciekawości zapytać - planujesz może dodać obsługę innych asemblerów do swojego plugina? Czy ten plugin obsługuje eksport z SpritePada do plików prg czy tylko raw/bin?
Jakby co pytam z czystej ciekawości.
pozdrawiam
Operator Teleksu
Trochę żałuję że nie pisałem swojego Sprite Studio 64 od początku w KickAssemblerze ale co teraz poradzić - możliwości żeby automatycznie przekonwertować kod źródłowy z TMPx -> KickAss raczej nie ma.
Możliwość automatycznego eksportu z SpritePada i CharPada, to na tyle fajna rzecz, że muszę z ciekawości zapytać - planujesz może dodać obsługę innych asemblerów do swojego plugina? Czy ten plugin obsługuje eksport z SpritePada do plików prg czy tylko raw/bin?
Jakby co pytam z czystej ciekawości.
pozdrawiam
Operator Teleksu
Have a nice day!
Re: Sprite Studio 64 - moje nowe dzieło
Inne assemblery planuję jak najbardziej. Póki co mam pewien zgryz z assemblerami natywnymi - mój tool ma działać na Win/Mać/Linux. Odpowiednią wersję kicka tool ściąga sobie sam, w przypadku natywnego softu musiałbym chyba ściągać źródła i kompilować, bo nie chcę zależeć od istnienia zewnętrznych narzędzi. Muszę pomyśleć (myślę z przerwami już dwa lata).
Prędzej dorobię support do KickC, ale to inna para kaloszy.
Eksport jest tylko do formatu binarnego (plus metadane do formatu KickAss - asm), aczkolwiek jest tam dane sporo swobody jak i co eksportować (plus są transformacje jak np dzielenie nybbli albo przeplot). Chciałem uniknąć konieczności ręcznego klikania export w Charpadzie - uciążliwe na dłuższą metę. No i Charpad nie ma definiowalnych regionów mapy, które można exportować do osobnych plików - takie regiony wspiera tylko mój tool. Zapuściłem temat subchrist, ale nie wiadomo na kiedy to zrobi.
Marzy mi się też support do eksportu goattrackera, ale to już będzie ultra skomplikowane, chyba żeby użyć cli goattrackera ale znowuż - jest to tool natywny (patrz wyżej).
Pozdrawiam
Maciek
Prędzej dorobię support do KickC, ale to inna para kaloszy.
Eksport jest tylko do formatu binarnego (plus metadane do formatu KickAss - asm), aczkolwiek jest tam dane sporo swobody jak i co eksportować (plus są transformacje jak np dzielenie nybbli albo przeplot). Chciałem uniknąć konieczności ręcznego klikania export w Charpadzie - uciążliwe na dłuższą metę. No i Charpad nie ma definiowalnych regionów mapy, które można exportować do osobnych plików - takie regiony wspiera tylko mój tool. Zapuściłem temat subchrist, ale nie wiadomo na kiedy to zrobi.
Marzy mi się też support do eksportu goattrackera, ale to już będzie ultra skomplikowane, chyba żeby użyć cli goattrackera ale znowuż - jest to tool natywny (patrz wyżej).
Pozdrawiam
Maciek
Re: Sprite Studio 64 - moje nowe dzieło
Są. Np. tutajOperator Teleksu pisze: ↑16 paź 2021, 03:48@thevoid
Trochę żałuję że nie pisałem swojego Sprite Studio 64 od początku w KickAssemblerze ale co teraz poradzić - możliwości żeby automatycznie przekonwertować kod źródłowy z TMPx -> KickAss raczej nie ma.
https://github.com/micheldebree/tasm2kickass
Elysium vs Arise. Czym byłoby dobro bez zła?