[#31] Re: Ktoś jeszcze pisze gry na klasyki

@strim, post #3

Witam,

Nie chcę zapeszać, ale jest szansa na nowy tytuł po nowym roku.

Ja tam nie jestem przesądny. Mógłbyś uchylić rąbka tajęmnicy. Dzięki

Pozdrawiam

[#32] Re: Ktoś jeszcze pisze gry na klasyki

@asman, post #31

...byle by nie byla to tysieczna gra logiczna
[#33] Re: Ktoś jeszcze pisze gry na klasyki

@silverbud, post #1

Piszę od czasu do czasu nowe gierki na Amigę. Obecnie ukończony projekt to Arcymag, jest nawet forum na jego temat poświęcone.

[#34] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #33

Arcymag ukończony? Nic mi o tym niewiadomo...

[#35] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #33

Ja chętnie też się dorzucę, jak w ciągu roku akademickiego będzie mi się nudziło :) Na Amiżkę nic jeszcze nie pisałem, ale chętnie napisałbym coś pod A500. Potrzebowałbym tylko nieco pomocy bardziej już doświadczonych amigowych programistów, żeby wiedzieć od czego zacząć... Czy istnieje jakaś doku, która pozwala dobrze zacząć?
[#36] Re: Ktoś jeszcze pisze gry na klasyki

@selur, post #32

Witam.

Tak się nieszczęśliwie składa, że właśnie napisałem grę "logiczno-puzzlową" i nie wiem czy mam ją upublicznic, czy raczej kisic ją dla siebie. No, bo to przecież kolejna gra logiczna... :)

[#37] Re: Ktoś jeszcze pisze gry na klasyki

@slipec, post #36

a warta upublicznienia ? czy mega crap :) ?

[#38] Re: Ktoś jeszcze pisze gry na klasyki

@HOŁDYS, post #37

Gra napisana w bardzo lubianym AMOSie ;). Inspiracją była ta gra, wydana na dziadka C64.
http://www.gamebase64.com/game.php?id=2122&d=18&h=0
Czy to crap? Nie wiem, naprawdę... to moje dziecko :D .

Pisałem to na real sprzęcie(A500 tylko z 1MB Chip) i teraz muszę, posiadając tylko dos2dos jakos to przerzucic.



Ostatnia modyfikacja: 16.10.2010 01:14:30
[#39] Re: Ktoś jeszcze pisze gry na klasyki

@slipec, post #38

Śmiało dawaj to do działu Rodzynki OK Na pewno jest mnóstwo osób, które chętnie w to zagrają.

[#40] Re: Ktoś jeszcze pisze gry na klasyki

@McGoof, post #35

Noszę się z zamiarem napisania krótkiego przewodnika po pisaniu gier dla Amigi w języku C/C++ - zresztą sugerowano powstanie takowego już wcześniej na forum. Na początek radzę Ci wybrać język programowania. Może to być:
- AMOS Basic,
- Blitz Basic,
- bądź C/C++.
Jak już wybierzesz język programowania dla siebie polecam Ci zaopatrzyć się w dokumentację, dla AMOSa jest szereg książek polskich wydawnictw, dla C/C++ koniecznie musisz mieć płytę Amiga Developer CD v2.1, którą możesz zakupić w sieci. To tyle jeśli chodzi o zupełne podstawy.



Ostatnia modyfikacja: 16.10.2010 09:57:07
[#41] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #40

koniecznie musisz mieć płytę Amiga Developer CD v2.1


Myślę, że jest to pewna przesada, wszystko co jest potrzebne można pobrać w sieci za darmo, nie łamiąc przy tym praw autorskich. Na tej płytce jest troche więcej rzeczy, ale nie są one niezbędne by zacząć kodowanie w C na Ami.

Ogólnie to polecam pisanie w C, gdyż pozostałe języki na Amidze nie oferują takiej elastyczności.

Bardzo dobry darmowy kompilator C: http://sun.hasenbraten.de/vbcc/
SDK: http://www.haage-partner.de/download/AmigaOS/NDK39.lha

Właściwie tyle .

[#42] Re: Ktoś jeszcze pisze gry na klasyki

@slipec, post #38

Witam,

A czy można poprosić o źródła do celów kolekcjonerskich ( już trochę produkcji w Amosie mam :) ).

A zupełnie z innej beczki to ja polecam asembler do produkcji gier na nagą A500 (A1200).

Pozdrawiam
asman

[#43] Re: Ktoś jeszcze pisze gry na klasyki

@asman, post #42

Witam

Jak będę ją przerzucał to przerzucę i źródełka i wersje skompilowaną :)

[#44] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #40

Odradzam Amos, ten język stał się przestarzały jeszcze w czasach powszechnego używania klasyków, choć ongiś bardzo go lubiłem. Prosty, doskonałe efekty małym nakładem pracy, ale bardzo wolny, niesystemowe ekrany, wieczne kłopoty z kompilatorem. W sumie mało komu udało się zrobić coś sensownego w tym języku, a wyjątki tylko niestety potwierdzają regułę.

Jeśli ktoś nie lubi języka C, na klasycznej Amidze świetnie spisywał się AmigaE (i pewnie jego klony). Prosta i przejrzysta składnia, w dowolnej chwili można przejść na asembler, niesamowicie szybka kompilacja, język tworzony "pod Amigę" i jej system, krótki i szybki kod wynikowy. Oczywiście wady, błędy i ograniczenia ten język jak najbardziej ma/miał, choć też o dziwo brały się stąd, że (wiem, że to bardzo nieprofesjonalnie zabrzmi) moim zdaniem praktycznie to był bardziej... asembler z typowymi ograniczeniami procesora 68k, a nie coś, co można nazwać językiem wysokiego poziomu ;) No ale miało to też swoje zalety oraz naprawdę ongiś uwielbiałem ten język, więc już może dość reklamy :)
[#45] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #40

Ja chętnie poczytałbym tego typu poradnik pisania gier. Szczególnie z nastawieniem na coś innego niż Amos.

[#46] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #40

Fajnie by było abyś taki kursik zrobił, nawet na przykładzie gry robbo (z tym, że dobrze by było, gdyby były tematy związane np z pisaniem na gołe A1200).

Czy język C nadaje się na pisanie gier na A600/A1200/CD32? Czy nie bardzo?
Wiem, że assembler jest najlepszy, ale ja go nie lubię i jednak wolałbym C.

[#47] Re: Ktoś jeszcze pisze gry na klasyki

@rafgc, post #46

C jest za wolne ..
do obliczen tak do czegos "efektowniejszego" nie
szybszy jest Amos , E , Blitz Basic
ASM jest ciezki ..



Ostatnia modyfikacja: 18.10.2010 10:57:55
[#48] Re: Ktoś jeszcze pisze gry na klasyki

@HOŁDYS, post #47

C jest za wolne i AMOS jest szybszy ? Ciekawe teorie...

Dobrze napisany kod C jest wystarczająco szybki do pisania gier nawet na gołą A1200... Właściwie C jest językiem najbliższym AmigaOSowi.



Ostatnia modyfikacja: 18.10.2010 11:07:54
[#49] Re: Ktoś jeszcze pisze gry na klasyki

@strim, post #48

Witam,

Dobrze napisany kod C jest wystarczająco szybki do pisania gier nawet na gołą A1200

A jakie rodzaje gier masz na myśli ?

Pozdrawiam

[#50] Re: Ktoś jeszcze pisze gry na klasyki

@strim, post #48

strim mowie o maszynach ECS 68000/7 mhz C wogole sie tu nie nadaje..

[#51] Re: Ktoś jeszcze pisze gry na klasyki

@asman, post #49

W zasadzie każdy typ gry można napisać w C. Jest on bardzo uniwersalnym językiem, a API AmigaOSu dostarcza funkcji do obsługi wszystkich możliwości układów specjalizowanych.

Tam gdzie najbardziej istotna jest wydajność i nawet minimalny jej wzrost jest kluczowy (np. C2P, czy jakieś renderowanie 3D) mozna z powodzeniem używać wstawek w asemblerze.

Na dodatek taka gra napisana "systemowo" w C ma większe szanse działać na nowych systemach takich jak MorphOS i AmigaOS 4. Poza tym kod napisany w C jest też o wiele łatwiej utrzymywać...

[#52] Re: Ktoś jeszcze pisze gry na klasyki

@HOŁDYS, post #50

Wiele zależy od stylu w którym ktoś programuje.

Oczywiste jest, że C z użyciem SDL i AHI na 7MHz nawet nie drgnie. Ale jeśli ktoś będzie używał blittera, coppera i wstawek asm w odpowiednich miejscach to czemu C miałoby być niewystarczające? Z poziomu C można zrobić to samo co z poziomu asemblera. Ktoś kiedyś powiedział nawet że C to taki bardziej przenośny asembler...

[#53] Re: Ktoś jeszcze pisze gry na klasyki

@strim, post #52

Oczywiste jest, że C z użyciem SDL i AHI na 7MHz nawet nie drgnie. Ale jeśli ktoś będzie używał blittera, coppera i wstawek asm w odpowiednich miejscach to czemu C miałoby być niewystarczające? Z poziomu C można zrobić to samo co z poziomu asemblera. Ktoś kiedyś powiedział nawet że C to taki bardziej przenośny asembler...

To podejście przynajmniej podwaja czas programowania ( pomijam czas przeznaczony naukę Amiga API - bo w następnym projekcie nie ma znaczenia ).

[#54] Re: Ktoś jeszcze pisze gry na klasyki

@asman, post #53

To jaki język oprócz ASM nadawałby się do napisania gry na gołą A1200 (ewentualnie z fastem), czy tylko ASM się tutaj nadaje?

[#55] Re: Ktoś jeszcze pisze gry na klasyki

@rafgc, post #54

To zależy ile FPSów chcesz wyciągnąć z danej gry. Jeśli to gra w pełni arcadowa z 50 FPS (np. Superfrog i szereg innych) to wydajność asemblera jest tutaj bardzo potrzebna.

Z drugiej strony Dune 2 na przykład został napisany w C z wstawkami asemblerowymi odpowiedzialnymi za rysowanie, a śmiga aż miło na Amidze 500. W tej grze zastosowano system wielokrotnego buforowania i bardzo oszczędne blitowanie (rysowane jest tylko to co aktualnie jest potrzebne na ekranie, bądź stan się zmienił). Dzięki temu gra jest bardzo szybka.

Także w C można napisać grę (arcadową) na Amigę 500 nawet, trzeba tylko sprytu i pisania wydajnych algorytmów.

[#56] Re: Ktoś jeszcze pisze gry na klasyki

@rafgc, post #54

A możesz zdradzić o jaki rodzaj gry Ci chodzi ?

[#57] Re: Ktoś jeszcze pisze gry na klasyki

@Minniat, post #55

Na początek - żeby zobaczyć efekty - myślę, że dobry jest Blitz Basic 2. Wiem, że grono osób odradziłoby takiej kolei rzeczy i mają w pewnym sensie rację. Jednakże osobiście dużo przyjemnych chwil spędziłem przy pisaniu projektów pod BB2. Większość programów pomocniczych, np: do projektu gry internetowej Ondorr Drakmo - do dziś sobie piszę pod Blitz Basic 2 (lub w PHP wrzucając pliki źródłowe na serwer do przemielenia przez skrypt). ASM na początek myślę, że może zniechęcić, trzeba wiedzieć "gdzie co jest w Amidze" a do pisania w C także trzeba mieć pojęcie co z czym się je. Przyznam szczerze, że AmigaE też wydał mi się bardzo dobrą alternatywą, jednak tylko trochę go przyswoiłem ("za rączkę" do ostatniego numeru ACS + kilka przykładów), jedynie proste projekciki w okienkach, zczytywanie eventów z gadżetów, myszy, etc. Czy pod Blitz Basic da się pisać "prawie" systemowo - tej kwestii dobrze nie znam, kogo bym nie zapytał - mówi, że NIE. BB umożliwia pracę programu we własnym trybie jak i w trybie Amigi, gdzie jest wolniej ale bardziej pod system chyba - nie mam pojęcia jak to dokładnie z tym jest. Generalnie tylko jeden z moim programików - c64kopik - napisanych w BB2 był testowany np: z kartą graficzną i okazało się, że sam program się uruchamia - a istnieją jedynie problemy z wyświetlaniem grafiki we właściwym miejscu.
Jest to już stara sprawa, więc nie pamiętam szczegółów, ale myślę, że jeżeli na początek spróbowałbyś swoich sił przy grze logicznej lub po prostu turowej (gry handlowe, walki turowe yeah, tekstowo-graficzne, wojenne planszówki, etc.) to myślę, że dobrze na początek jest właśnie zacząć w BB2. A jak starczy sił, zawsze projekt można przepisać - grafiki zostają ;). Myślę, że powrócę i skończę kiedyś projekt gry, którą pisałem/chcę napisać na Amigę właśnie w BB2, i właśnie jest to gra przygodowa z elementami walk turowych - prędkość działania jest znakomita do tego typu projektów pod BB2. Projekt o tyle gorący, że brakuje w nim jeszcze rozbudowania fabuły, przeciwników, paru pomniejszych opcji w trakcie rozgrywki i ewentualnie kilku gadżetów. Co z kompatybilnością na różnego rodzaju konfiguracjach sprzętowych - trudno mi powiedzieć. Na razie skupiam się na projekcie gry na c64 i uczę się właśnie wstawek kodu maszynowego. Nauka assemblera na Amidze dla kompletnego laika może być czarną magią - widzę to po sobie odnośnie nauki na c64! Z początku nie miałem zielonego pojęcia jak w ogóle obsługiwać monitor assemblera i zapisać cokolwiek na dysku nie mówiąc o mapie pamięci staruszka Commodore. Podobnie a nawet trudniej z Amigą. Początki są trudne, ale z pewnością warto. Programowanie ma to do siebie, że bardzo wciąga i sprawia masę przyjemności, wciąga jak bagno.
Życzę więc powodzenia i ukończonego projektu/projektów!

P.S. A Amosa serdecznie odradzam, sam zbyt długo się na nim zasiedziałem i żałuję, że kolega gorąco polecił mi tego "Amos Professional".
To fakt, że wystarczy pare linijek by zobaczyć w miarę szybko efekt swojej pracy, ale dostępne tryby graficzne, ilość kolorów, prędkość działania - sprawiają, że szkoda się w ogóle w to babrać, chyba, że dla własnej sadomasochistycznej ;) przyjemności.

P.S.2. Nie wiem odnośnie C, czy istnieją jakieś tutoriale stricte pod gry, tj: screenslide, wyświetlanie i sterowanie obiektami, odtwarzanie muzyki, etc. Szukałem kiedyś jakiś "przepisów" by ruszyć z czymś więcej niż Hello World w oknie na otworzonym ekranie, jednakże nic nie znalazłem. Może za mało szukałem. Jeżeli jednak ktoś takie przepisy na pisanie mocno systemowych rzeczy by miał, myślę, że warto się porwać na to, by zacząć właśnie od C a nie od Blitz Basica 2. Wszystko zależy od chęci, do kogo dedykowany jest projekt, jakie są jego wymagania techniczne, a do tego samozaparcie no i wiele nieprzespanych nocy. Miejmy nadzieję zakończonych małymi ale znaczącymi zwycięstwami :).



Ostatnia modyfikacja: 19.10.2010 01:56:06
[#58] Re: Ktoś jeszcze pisze gry na klasyki

@asman, post #56

Chodzi o grę platformową w stylu Giana Sisters, tła by raczej nie musiały by być animowane, bardziej bym stawiał na animację postaci i jeśli się da to w 64 kolorach lub więcej, na aminecie są algorytmy w języku C podobno wyciskające ile się da z amigowego sprzętu (oczywiście pewnie chodzi "jak na język C").

http://aminet.net/package/dev/src/ScrollingTrick



Ostatnia modyfikacja: 19.10.2010 07:40:36
[#59] Re: Ktoś jeszcze pisze gry na klasyki

@rafgc, post #58

No to nic tylko pozostaje Ci poeksperymentować ze wszystkimi "ficzersami", które byłbyś w stanie znaleźć a potem złożyć to w całość. Poeksperymentuj a przekonasz się czy dasz radę. W razie pytań na pewno ktoś na forum będzie służył pomocą. C to dobry wybór.

[#60] Re: Ktoś jeszcze pisze gry na klasyki

@rafgc, post #58

Dzięki za odpowiedź.
ScrollingTrick to i tak walenie po rejestrach, tyle, że w "C". W Twoich założeniach gra nie potrzebuje nie wiadomo jakich wodotrysków, więc "C" powinno być ok ( Zawsze można wspierać się wstawkami asm ). Sytuacja może się dramatycznie zmienić gdy zamarzy Ci się więcej obiektów bądź animowane tło i wtedy z "C" zostanie niewiele.
Jeśli znasz dobrze "C" ( i Ci bardziej odpowiada ) to nie ma sensu w pierwszej chwili startować od asma - stracisz tylko czas i nerwy - na profilowanie gry przyjdzie czas.

Najszybszy scroll jaki znam to przewalenia całej planszy do CHIP i zmiania rejestrów BPLxPTH, BPLxPTL ( co 16 pikseli ) i BPLCON1 ( przesunięcie 0-15 pikseli ) - mam na myśli ECS. Przy AGE można przesuwać w o 1/4 lowresowego piksela. Tylko trzeba pamiętać że to podejście scrolowania jest strasznie pamięciożerne.

Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem