Oznámení

Sbalit
Aktuálně žádná oznámení.

Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

Sbalit
X
 
  • Filtr
  • Čas
  • Zobrazit
Clear All
new posts

    Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

    Od poèátku, co jsem se zaèal hrát s programováním mám takový sen si naprogramovat Sabotéra. Programovací jazyk Python mùže posloužit jako prvý náèrt toho, jak co by mohlo fungovat. Sice pomocí Pythonu nemáme pøístup ke grafice (pokud z nìj neskoèíme do assembleru), ale máme pøístup ke znakové sadì a znak je tvoøen z pixelù. To nám umožnuje použít jednoduchou grafiku a zaèít si dìlat prvotní náèrty logiky samotné hry pro možná budoucí pøepsání do jazyku C, který by samotnému vykreslováni jednoduché grafiky pomocí znakové sady mohl a taky nemusel dát dostateènou rychlost. To již závisí od rychlosti vykreslování znaku ve Workbenchi. Prvotní studie ukazují, že by to tak mohlo fungovat a že programovací jazyk C spolu s vykreslením jednoduché grafiky pomocí znakové sady by mohl staèit. Samozøejmì další level by bylo již použití normální grafiky, které by krom pøípadného nežadoucího pomalého vykreslování "znaku" ve Workbenchi mohlo posunout hru na lepší úroveò.

    Udìlal jsem jednoduché video, které znázoròuje, jak se dostat k jednoduché grafice, i když k ní nemáme pøístup, nebo to zatím neumíme. Sabotér je nakreslen narychlo .

    Naposledy upravil Lisiak4; 09.08.2014, 02:20:09.
    Amiga - PMD 85

    #2
    O: Jak naprogramovat svoji první hru? (Saboteur - verze z PMD 85)

    https://www.youtube.com/watch?v=8n04K25MtpI
    Amiga 1200T (E/Box)+BlizzardPPC 603p/363+060/66+BVision PPC+256MB+KS3.1+Cocolino+Lyra 2+Fast Ata MK-IV+320GB WD Blue 3200AAJB PATA HDD(PFS3)+dvdrw+dvd+cf2ide
    Amiga 1200+BlizzardPPC 603e/210+040/25+128MB+KS3.1+CF4GB(PFS3)

    Komentovat


      #3
      O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

      Uživatel zz_indigo mne pøimìl pøemýšlet, jak daný pohyb sabotéra ještì mùžu øešit. Sice mi psal pro mne né pøíliš schùdné varianty, ale pak mne napadlo, jak to udìlat ještì lépe. Sice jsem pùvodní myšlenku nezrealizoval úplnì tak jak jsem pùvodnì chtìl, ale nasmìrovalo mne to správnym smìrem. Pohyb v prvním videu není rešen nejlépe, jak mùže být. Zaráz v nìm smazávám pùvodní pozici celého sabotéra a vykresluji ho na nové pozici.

      Mne staèí pri konkrétním pohybu ale smazat jen èást sabotéra. To jsem hned napravil.

      Nová myšlenka byla využít na pohyb sabotéra více Workbench, než to dìlat pomocí Pythonu. Tedy neposouvat ho pomocí vodorovné a svislé souøadnice, ale pomocí posunu znaku (sabotéra) na další pozici (pohyb vpravo) a nazpìt (pohyb vlevo). Ano i pohyb vlevo jde. U proporcionálního fontu mùžeme zobrazit znak i vlevo od pozice kurzoru. Myšlenka to byla hezká, ale v samotné eufórii jsem opomìl skuteènost, že pøíkaz PRINT zobrazuje text po vìtších èástech než po 1 písmenu. Nejjednoduchší pøíklad by byl pøi posunu písmena A o 20 pozic doprava. Pokud by jsem napsal tenhle pohyb jen pomocí PRINT, písmeno A by se mi tøeba zobrazilo na 0,5,10,15 a 20 pozici. Mezipozice by by se vynechali. Na to aby jsem donutil Python zobrazit každou pozici, musím po každém zobrazení øádek zalomit. Tím jsem ale ztratil pùvodní pozici znaku kterou potøebuji, když nepracuji se souøadnicemi a je zde problém. Tak jsem udìlal takový kompromis. Vzpomìl jsem si na jeden pøíkaz, který mení vlastnost Enteru a po zalomení øádku mi nedá kurzor na zaèátek nového øádku ale pod pùvodní pozici kurzoru + 1 posun vpravo, èim jsem pøi zalomení øádku nestratil pùvodní pozici kurzoru. Staèilo mi tedy posunout kurzor o 1 pozici nahoru.

      Mìl jsem tedy nový zpùsob pohybu a rychlejší zobrazení sabotéra. Pak jsem nový zpùsob zobrazení aplikoval i na pùvodní posun pomocí souøadnic a postavil oba zpùsoby posunu proti sobì. Rychlost posunu u obou zpùsobú je stejná.

      Já si tedy vybral novìjší zpùsob posunu. Je mi sympatiètìjší øešit pohyb z místa sabotéra, jako pomocí souøadnic.

      Aby se mi sabotér posouval rozumnì, posouvám s ním po skocích po 6 pixelech. Takový posun je i u prvního videa. potom, co kurzor u nového zpùsobu posunu vrátím o 1 pozici nahoru, musím jej posunout o 5 pixelù doprava. O 1 pixel doprava se mi kurzor posunul pøi zalomení øádku. Vše jsem to srovnal se zobrazením s prvním zpùsobem pohybu a nevidìl jsem rozdíl. Navíc nový zpùsob zobrazení mi umožnuje ještì:

      -pokud budu potøebovat nìco posunout o 1 pixel, staèí mi návrat kurzoru o 1 pozici nahoru, co je asi o neco rychlejší, než zadávat kurzoru obì souøadnice

      -je možná ještì jedna optimalizace, od které jsem upustil (nevidel jsem rozdíl a pøitom vznikaji kolem toho další nežádoucí vìci = více problémù než užitku, který ani vlastne nevidím, jen vím, že by tam mìl být . Pohyb kurzoru o 5 pixelu se dá vyøešit i pomocí proporcionálního písma, kterému zadefinuji šíøku písma 5 pixelù a tedy bude posun sabotéra o 6 pixelù bez zadání pøíkazu k tomu, aby se kurzor o tyto pixely ještì posunul. Vyzkoušeno a nevidel jsem rozdíl.

      No nic jde se na video. Zùstávám v nìm na výkonu Amigy 1200. Každá animace zopakovaná 3 krát.

      Ten zaèátek, co jsem to ukonèil, to je posun po pixelu + spomalení 0 vteøin a to jsem nechtìl.
      No a ty odmlky mezi ruznýma rychlostmi pohybu = upravji program na pozadí.

      poprvé: posun sabotéra po 1 pixelu bez zpomalení
      podruhé: posun sabotéra po 10 pixelech (zmìna) bez spomalení
      potøetí: posun sabotéra po 10 pixelech (zmìna) se spomalením 0 sekund - zpomaluje se jen o naètení samotné funkce SLEEP.

      Amiga - PMD 85

      Komentovat


        #4
        O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

        Mìl jsem požadavek na odstranìní rušivého kurzoru. OK, ale pøícházím o 2 z celkových 8 možných barev. Výkon Amigy 1200.

        Amiga - PMD 85

        Komentovat


          #5
          O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

          Dìlat hru pro Amigu pomocí ASCII, resp. UDG, to zní dost ostøácky! S programováním ti jako obvykle nepomùžu, ale kdybys hledal nìjaké vodítko, jak takového Sabotéra napsat, pøed delším èasem jsem nìco málo naèrtnul u sebe na blogu.
          http://www.hernisnob.cz/2012/09/samo...me-design.html
          http://www.hernisnob.cz/2011/02/saboteur-3-koncept.html
          Kdyby se ti to líbilo a chtìl bys to rozpracovat do detailu, dej vìdìt!
          Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered

          Komentovat


            #6
            O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

            Autorem citovaného textu je davesade Přejít na původní příspěvek
            Dìlat hru pro Amigu pomocí ASCII, resp. UDG, to zní dost ostøácky! S programováním ti jako obvykle nepomùžu, ale kdybys hledal nìjaké vodítko, jak takového Sabotéra napsat, pøed delším èasem jsem nìco málo naèrtnul u sebe na blogu.
            http://www.hernisnob.cz/2012/09/samo...me-design.html
            http://www.hernisnob.cz/2011/02/saboteur-3-koncept.html
            Kdyby se ti to líbilo a chtìl bys to rozpracovat do detailu, dej vìdìt!
            Díky Dave, jak bude èas poètu velice rád. Tohle co dìlám je jen koncept aby jsem nabral nìjaké zkušenosti s øízením procesu ve høe co má i "grafiku". Novým nápadùm se nebráním, ale do tohohle konceptu je to zbyteèné mrhání. Není vylouèeno že bude i další koncept na Sabotéra. Mám to zatím v plánu. Sabotér si pøímo øíka o to to zkusit... . Ale pokud by se stal tenhle omyl, už by to nebylo free a budou i inovace, ale to je ještì daleko. Jak poøád øíkam, skonèit s programováním mùžu i zítra .
            Amiga - PMD 85

            Komentovat


              #7
              O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

              Zajímavé chování Workbenche?

              Mám naprogramovanou základní logiku pro pohyb sabotéra vlevo a vpravo. Pohyb vpravo je v pohodì. Pøi pohybu vlevo se mi vozík (kurzor) Workbenche chová zajímavì. Sabotéra zatím posunuju po 10 pixelech. Pro 2 rùzné sekvence zobrazení sabotéra se 2. "obraz" zobrazí o 5 pixelù dále, než 1. "obraz". Pro pohyb vlevo ale musím posunout vozík u 2. "obrazu" ne o 5 pixelù, ale o 9 aby se mi sabotér posunul skuteènì o 5 pixelù vlevo. Pøi posunu vozíku o 4 pixely mi tedy sabotér zùstane stát na místì. Pak nastáva další posun o 5 pixelù sabotéra a jeho návrat do pùvodní polohy (1. sekvence zobrazení). Aby se mi sabotér posunul o 5 pixelù vlevo, musím ho posunout pouze o 2 pixely! Tedy celkový souèet je vpoøádku. 9 + 2 je sice 11 a ne 10, ale 5 + 5 není správnì, když chcu posunovat sabotéra po 5 pixelech vlevo. Správnì je to 5 + 6. Pøi 1. posunu sabotéra o 5 pixelù se mi po jeho zobrazení posouvá vozík o 1 pixel doprava. Tedy pro zobrazení sabotéra o dalších 5 pixelù vlevo musím s tímhle poèítat a posunout vozík Workbenche o 6 pixelù.

              Ještì jeden fakt. Když pohybuji sabotérem vpravo u zmìnu smìru doleva mi pokud nastavím posun voziku o 5 pixelù se skuteène posune o 5 pixelù (1 pixel to rozhodne neni). Zde nemusím zadávat posun o 9 pixelù, aby se mi vozík posunul fyzicky o 5 pixelù. Tuhle opravu musím dìlat až pøi 2. a dalším posunu sabotéra vlevo. Pøi vykonání 2. pohybu vlebo i vidím, jak se vozík posube o nechtìné 4 pixely doprava.

              V parametrech fontù mám nastavenou šíøku proporcionálního písma na 1 (1 pixel). Tím dosahuji možnost pracovat s vozíkem Workbenche s pøesností na 1 pixel. U všech zobracovaných "písmen" (obrázkù sabotéra) mám parametre Spacing a Kerning na hodnotì 0.

              Pracuji s tím co mám a umím. Test stisku klávesy neumím. Ten jsem si nahradil jinou logikou. Na numerickej klávese mìním smìr sabotéra klávesou 3 pro pohyb vpravo a klávesou 2 pro pohyb vlevo. Klávesou Enter pak sabotérem posouvám. Takový zpùsob pohybu má chyby o kterých vím (snad vím již o všech chybách ). O tomhle pohybu mám napsán èlánek, který jsem zatím nepustil ven, protože øeším tenhle problém, tohle divné chování se Workbenche. Zajímal by mne dùvod, proè se takhle Workbench chová?

              Jako já mùžu všechny pohyby sabotéra doleva krom toho prvního (5+6) posunout vozík o jiné vzálenosti (9+2). Další možnosti je pøejít na 2. zpùsob pohybu sabotéra viz historie vlákna (pohyb pomocí souøadnic)

              zde je souèasná verze pro pohyb sabotéra

              Code:
              # -*- coding: latin2 -*-
              
              import os, sys, time
              
              os.system("SetFont saboteur 50 PROP")
              sys.stdout.write("\f\033[>3m\033[31m\033[43m")
              
              sys.stdout.write("\033[3;0H\033[20l")
              
              
              def pohybVpravo():
                  sys.stdout.write("\033[5C3\n\033[A\033[4C")
                  time.sleep(0.2)
                  sys.stdout.write("4\n\033[A\033[D")
              
              def pohybVlevo():
                  sys.stdout.write("\033[9D2\n\033[A\033[2D") #1.doleva o 4=na miste
                  time.sleep(0.2)
                  sys.stdout.write("1\n\033[A\033[D")
              
              r = "3"
              while 1:
                  r = raw_input(), r
                  if r[0] == "": r = r[1]
                  else:
                      r = r[0][-1]
                      sys.stdout.write("\033[D")
                  sys.stdout.write("\033[A")
                  if r == "3": pohybVpravo()
                  elif r == "2": pohybVlevo()
              popsaný posun vozíka od zaèátku pro pohyb vlevo:
              while 1:

              else: ... sys.stdout.write("\033[D") - pokud nebyla stisknuta klávesa Enter (u té sa nám vozík neposouvá), vra vozík o 1 pozici doleva (D)

              sys.stdout.write("\033[A") - Enter zalomí øádek - posun vozíku pøesnì pod poslední pozici - zmìna chování klávesy Enter pomocí escape sekvence (20l) (sys.stdout.write("\033[3;0H\033[20l") - tedy posunu vozíku zpìt o 1 pozici nahoru (A)

              def pohybVlevo():,
              sys.stdout.write("\033[9D2\n\033[A\033[2D") #1.doleva o 4=na miste
              9D - posun vlevo o 9 pixelù
              2 - "obrázek" sabotéra
              \n - zalomení
              A - posun o 1 pozici nahoru
              2D - posun vlevo o 2 pixely

              sys.stdout.write("1\n\033[A\033[D")
              1 - "obrázek" sabotéra
              \n - zalomení
              A - posun o 1 pozici nahoru
              D - posun vlevo o 1 pixel (po zobrazení sabotéra návrat vozíku na støedovou výchozí hodnotu (po zobrazení sabotéra se nám vozík posune o 1 pixel doprava))

              Takže?
              Naposledy upravil Lisiak4; 23.08.2014, 08:04:52.
              Amiga - PMD 85

              Komentovat


                #8
                O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                OK, dávam jsem článek, který mám již nějakou dobu napsán. Článek neměním, přešel jsem na pohyb sabotéra pomocí souřadnic. Chyby pohybu sabotéra zůstávájí stejné, jako u posunu z jeho samotné pozice, ale v budoucnu by jsem i tak musel přejít na souřadnice. Musím pak řešit i pohyb nepřátel a na to ty souřadnice již budu potřebovat. Chyba, kterou popisuji v minulém příspěvku ohledem prvního pohybu sabotéra vlevo zůstává. Ošetřil jsem ji zatím programem. Dělá ji smaotné "písmeno" (předešlá pozice sabotéra), které vozík "přitáhne" k sobě doprava protože když jsem vynechal zobrazení sabotéra, vozík se posouval doleva tak jak má.

                Dnes jsem testoval možné vyřešení mnoha problému zobrazení samotné hry. Zatím to nevypadá nejhúře, tedy mohlo by to i fungovat, ale na to je ještě brzo. Princip spočívá ve schazování obrazu mimo zobrazenou část (úplně dolů). Už jsem to někde psal. Takhle "shozená obrazovka" nám zanechá původní statický obraz. V "pracující" obrazovce, která je schozená dolů se vykreslí vše potřebné a obrazovku opět "nahodím na své místo" tedy na zobrazovací část monitoru. Chci tim zkusit vyřešit možné posunutí celkové grafiky (i sabotéra) mimo její správnou pozici, které je možné v době, kdy zpomaluji zobrazení sabotéra a ke slovu se dostává tedy možné psaní v samotném Workbenchi, co mi dělá v "grafice" hry nechtěné věci. Uvidím, jestli v tomhle způsobu zobrazování pohořím.


                A zde je již nějakou dobu napsán článek:

                Tak jsem si před pár dny našel čas se hrát a navrhnul jsem základný logiku pro pohyb sabotéra. Ještě v ní nejsem u konce, ale na ukázku to snad stačí. Výslední logika bude jiná, měla by pracovat s klasickým testem stiskuté klávesy, co je pro mne zatím problém a dělám tedy s tím, co umím a mám k dispozici a tedy se vstupem, který je nutné potvrzovat klávesou Enter.

                Nemožnost mít k dispozici test stisknuté klávesy je zatím největší problém a plyne z něj hned několik faktů:

                -špatné ovládání sabotéra
                -v místnosti s nepřítelem nemožnost s ním hýbat - program je v režii toho co dělá sabotér, místo toho, aby řídil nepřítele a sabotér do děje zasahoval pomocí testu stisknuté klávesy. Dočasně se to dá udělat na tahy, pro samotné odzkoušení logiky.

                Test stisknuté klávesy se pak dá řešit pomocí assembleru a možná taky načtením modulu na test klávesy napsaného v jazyku C.

                Současný princip ovládaní je jednoduchý. Konkrétní klávesou vybereme směr a pak klávesou Enter již se sabotérem hýbeme vybraným směrem. Ani tohle se však neobyšlo bez problému. Sabotér se pohne jen jeden krát. Klávesa Enter se musí pustit a opětovně stisknout. Ach jo. S tímhle si zatím musím vystačit a progrmovat si ostatní věci.

                Hrál jsem se tedy s pohybem a zkusil střídat 2 "obrázky" sabotéra po sobě. Zde je problém, že když jsem dal malou pauzu, aby bylo 2. "obrázek" i vidět, do okna Workbenche se může psát, takže sabotéra můžu Entrem posunout o řádek víš a jiné.

                Když použiju dostatečně krátkou pauzu mezi zobrazením 2 "obrázků" sabotéra, aby jsem klávesou Enter nemohl jeho pozici nechtěně posunout nahoru (zjištuji že, pozici posunu i tak, když použiku výkon A1200. U většího výkonu se již pozici sabotéra posunout nedaří), je zobrazení 2. "obrázku" tak rychlé, že ho ani neni vidět. Akorát mne napadají různá řešení, která odzkouším.

                (doplnění - když zpomalení v programu nepoužiju, grafiku sabotéra se nedaří nechtěně posunout ani na výkonu A1200 - ve videu se to jednou povedlo - nahrávání natolik zpomalilo mé PC... . Můžeme předpokládat, že v té době byl ale výkon emulace i pod výkonem A1200)

                Princip pohybu má ještě další chyby o kterých vím a které se pokusím odstranit.

                Grafika je ilustrativni .

                Asi si v nejbližší době nakreslím ilustrativní grafiku chúze (asi 2 "obrázky"), tak jako je to u verze pro PMD 85 (současný 1. obrázek je pro stojícího sabotéra) a budu se hrát dál.

                Na videu pohyb se zpomalením a pak bez zpomalení - vše na výkonu A1200.

                Amiga - PMD 85

                Komentovat


                  #9
                  O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                  Vyzkoušel jsem "schazovat" obrazovku a tak vyřešit problémy, co mám se zobrazovaním. Výsledek je, že i když "shodím" obrazovku, kurzor zůstává v původní, tedy v neschozené obrazovce a tímhle kurzorem můžu posunout taky obraz (ten co je zobrazen, ale již by tam neměl být fyzicky, protože je ve "shozené" obrazovce) nežádoucím způsobem. Tohle schazování obrazovky je dobrý hack...

                  Nechtěné posouvání sabotéra kvůli rolující obrazovce nakonec řeším v posouvání kurzoru na první řádek. Čím pomalší Amiga, tím se to musí dělat častěji. U Amigy 1200 po každém příkazu při 4 řádcích, které mi zaplní celou obtazovku (velikost písma 50). Rolovat obrazovkou se mi i tak povedlo, ale mačkal jsem oba Entre zaráz. Jedním Entrem jsem to alespoň já nedal.

                  Test, jak nejrychleji posouvat vozík na 1.řádek jsem dělal na výkonu neco nižším, než má A600. A zobrazovat sabotéra stíha i A600. Někde jsem četl, že může být v A500/600 i 3.0, nebo 3.1. To by mělo postačovat na spuštění AmigaPythonu + nějaká RAM (celkově 2 MB pro Python, celkově +-4 MB pro program) co je tak trochu výzva jak by to utáhla tahle mašinka. U A500/600 by jsem musel mít obraz na víc než na 4 řádky (i u A1200 budu muset něco málo přidat).

                  Čím více rádků na obrazovce, tím menší pravděpodobnost nechtěného schození obrazu.

                  2. problém - když držím například klávesu 3 co je určení pohybu sabotéra směrem doprava a pod klávesou 3 mám i "grafiku" sabotéra, posouvám sabotéra po 1 pixelu doprava (klasicky píšu ve Workbenchi). Tohle chci zlikvidovat, že vozík bude v téhle situaci v jednom pracovním řádku (třeba úplně spodní řádek obrazovky) a sabotér bude v barvě tohoto řádku, tedy nebude vidět. Workbench má jisté omezení v počte znaků, co dává na jeden řádek. Při posouvání kurzoru po jednom pixelu se kurzor zastaví před koncem tohoto řádku a tedy mi neposune obrazovku, co mi stačí. Tímhle zavedu jednu nežadoucí věc. Když se otočím se sabotérem třeba doprava klavesou 3, otočení se provede až po stisku klávesy Enter, ale vyřešení nechtěného posování sabotéra tím, že se píše ve Workbenchi je větší priorota. Pro pokračování pohybu ve zvoleném směru stačí pak mačkat už jen Enter.

                  Líbí se mi velký sabotér, ale budu ho muset zmenšit. Nemůže mi pracovní řádek zabírat 1/4 obrazovky a taky větším počtem řádků snížim možnost nechtěného posouvání obrazu.

                  Na kolik je zmenšení sabotéra přípustné? 1/3? 1/2 je již moc?
                  Amiga - PMD 85

                  Komentovat


                    #10
                    O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                    Autorem citovaného textu je Lisiak4 Přejít na původní příspěvek
                    Líbí se mi velký sabotér, ale budu ho muset zmenšit. Nemůže mi pracovní řádek zabírat 1/4 obrazovky a taky větším počtem řádků snížim možnost nechtěného posouvání obrazu.

                    Na kolik je zmenšení sabotéra přípustné? 1/3? 1/2 je již moc?
                    Vidím, že mám sledovanost a to je fajn . Rád bych slyšel (četl) nějaké názory o tom, jak by sabotér mohl byt velikej .
                    Amiga - PMD 85

                    Komentovat


                      #11
                      O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                      Velkost je ok, len som zvedavy ako budes vykreslovat pozadie + dalsie postavy... Mal si sa zacat hrat s tym C a nie kreslit si fonty... ;-)
                      Amiga 1200T (E/Box)+BlizzardPPC 603p/363+060/66+BVision PPC+256MB+KS3.1+Cocolino+Lyra 2+Fast Ata MK-IV+320GB WD Blue 3200AAJB PATA HDD(PFS3)+dvdrw+dvd+cf2ide
                      Amiga 1200+BlizzardPPC 603e/210+040/25+128MB+KS3.1+CF4GB(PFS3)

                      Komentovat


                        #12
                        O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                        Zkusim se pochlapit a trosku to rozhrabnout. Pred par dny jsi se tu bal vyjadrit k jedne priserne hre a je mozne, ze neco podobneho se deje i v tomto pripade. Na jedne strane je super, ze se snazis neco delat, ale Python provozovany na 68k Amize je proste naprosto nevhodny pro takovyto typ hry. Rekl bych to asi tak, pokud chces udelat super klon hry Saboteur, zkus to Ccko, a my se budeme tesit. Pokud chces zustat u Pythonu, mozna by stalo za to vymyslet nejaky jiny projekt...

                        Komentovat


                          #13
                          O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                          Ještě jednou. Je důležité začít s něčím. Potřebuji si odzkoušet logiku. Nevylučuji, že to pak udělám i v C (je to v plánu jak jsem zde již jednou psal), ale nestíhám se učit. Scválně mám více vláken (zatím dvě - textovka, Sabotér). A je v plánu třetí (ATEconvert - nezavírat původní vlákno). Tohle vše budu střídat dle nálady + ještě jeden projekt na PC. Když tohle vše budu mít v Pythoně, začnu se v něm nudit a mít více času na C. A jak se ho začnu učit? Začnu do něj přepisovat programy, které mám již napsané v Pythoně. Pythoní příkazy, které v C nejsou si naprogramuji.

                          Nemám v plánu teď dělat super klon Sabotéra. Tohle je jen skica (jak jsem již psal). Taky ale nehodlám ani skicu flákat. Vytáhnu z toho co to dá, tak jak to dělám s každým programem.
                          Amiga - PMD 85

                          Komentovat


                            #14
                            O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                            Mně se líbí, že se Lisiak snaží o něco jiného. Vykreslovat něco pomocí fontů je úžasný nápad - něco podobného jsem dělal na ZX pomocí UDG a přišlo mi to geniální. Ale ano, jako objekt hry bych nevolil Sabotéra, ale spíše bych na tom principu udělal nějakou tahovou strategii nebo klienta pro rogue-like hry s grafikou atd. Tj. u mne dobrý!
                            Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered

                            Komentovat


                              #15
                              O: Jak naprogramovat svojí první hru? (Saboteur - verze z PMD 85)

                              Autorem citovaného textu je DJM Přejít na původní příspěvek
                              Velkost je ok, len som zvedavy ako budes vykreslovat pozadie + dalsie postavy... Mal si sa zacat hrat s tym C a nie kreslit si fonty... ;-)
                              Veľkosť som donútený zmenšiť. Ide mi o to o koľko možem. Pozadie čo sa týka sabotéra bude animácia v rámci jednoho znaku. Ja sa najviac teším na súčasný výskok Sabotéra a nepriaťeľa, kde sa budú obe postavy vo výskoku prekrývať. Mám za to, že nepriateľ v sabotérovy z PMD 85 neskáče, ale toto by som rád zaviedol + možno ešte nepriaťeľov volný pohyb po celej budove by bol fajn, ale obmedzil by som to radšej na 1 nepriateľa na 1 miestnosť.

                              Ok uzavrieme neškodnú stávku? Aký mi dáš limit na súčasný výskok Sabotéra a nepriaťeľa, kde sa budú obe postavy vo výskoku prekrývať? 1 pivo? Stávka bude platiť len keď neseknem s programovaním. Keď s ním neseknem, toto chcem dokončiť.

                              Mňa len zaujímal názor o koľko možem sabotéra zmenšiť - ten sa dá napísať aj tromi znakmi .

                              ALL: No a s negativnym názorom som počítal - takže smola - ja viem, že toto je brána k možnému pokračovaniu.
                              Amiga - PMD 85

                              Komentovat

                              Zpracovávám...
                              X