Strona 1 z 2
Sprite Studio 64 - moje nowe dzieło
: 09 paź 2021, 01:59
autor: Operator Teleksu
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
Re: Sprite Studio 64 - moje nowe dzieło
: 09 paź 2021, 17:53
autor: Operator Teleksu
Dorzucam parę screenshotów (żeby było wiadomo że wgl program działa).
Re: Sprite Studio 64 - moje nowe dzieło
: 09 paź 2021, 19:28
autor: rime.
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
Re: Sprite Studio 64 - moje nowe dzieło
: 09 paź 2021, 20:30
autor: Operator Teleksu
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).
Re: Sprite Studio 64 - moje nowe dzieło
: 09 paź 2021, 21:06
autor: carrion
dobra robota. poszedł news na c64portal.pl. jutro rano się pobawię.
Re: Sprite Studio 64 - moje nowe dzieło
: 09 paź 2021, 21:21
autor: Operator Teleksu
@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.
Re: Sprite Studio 64 - moje nowe dzieło
: 10 paź 2021, 22:17
autor: Operator Teleksu
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:
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
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ź.
Re: Sprite Studio 64 - moje nowe dzieło
: 11 paź 2021, 09:26
autor: carrion
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
Re: Sprite Studio 64 - moje nowe dzieło
: 11 paź 2021, 13:47
autor: carrion
OK dodałem Cię jako Operator Teleksu do CSDB
Re: Sprite Studio 64 - moje nowe dzieło
: 11 paź 2021, 16:10
autor: Operator Teleksu
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ę.
Re: Sprite Studio 64 - moje nowe dzieło
: 12 paź 2021, 13:32
autor: drakon
carrion pisze: ↑11 paź 2021, 13:47
OK dodałem Cię jako Operator Teleksu do CSDB
Z głupia frant pytanie, ale jakie są kryteria tego, żeby się zarejestrować na csdb?
Trzy razy próbowałem, trzy razy dostałem info, że nie.
Re: Sprite Studio 64 - moje nowe dzieło
: 12 paź 2021, 13:44
autor: Steffan
drakon pisze: ↑12 paź 2021, 13:32
Z głupia frant pytanie, ale jakie są kryteria tego, żeby się zarejestrować na csdb?
Trzy razy próbowałem, trzy razy dostałem info, że nie.
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
Re: Sprite Studio 64 - moje nowe dzieło
: 14 paź 2021, 09:40
autor: thevoid
Kod: Zaznacz cały
ps. gry nie (są tam strasznie uczuleni na to), chyba że już masz konto, to wtedy jest ok).
Twórcy gier trochę sami sobie są winni, bo kilku dymiło robiąc shit stormy o cracki, no i się skończyło.
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
: 14 paź 2021, 09:51
autor: thevoid
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
Re: Sprite Studio 64 - moje nowe dzieło
: 14 paź 2021, 17:57
autor: Operator Teleksu
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.
Re: Sprite Studio 64 - moje nowe dzieło
: 14 paź 2021, 18:23
autor: Nitro
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
: 15 paź 2021, 11:06
autor: thevoid
Operator Teleksu pisze: ↑14 paź 2021, 17:57
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?
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).
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
Re: Sprite Studio 64 - moje nowe dzieło
: 16 paź 2021, 03:48
autor: Operator Teleksu
@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
Re: Sprite Studio 64 - moje nowe dzieło
: 16 paź 2021, 18:05
autor: thevoid
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
Re: Sprite Studio 64 - moje nowe dzieło
: 14 gru 2021, 14:56
autor: brush
Operator 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.
Są. Np. tutaj
https://github.com/micheldebree/tasm2kickass