Oznámení

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

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

Sbalit
X
 
  • Filtr
  • Čas
  • Zobrazit
Vymazat vše
new posts

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

    Ahoj,
    díky za reakci. Pokusím se stručně shrnout pár postřehů:

    - podstata hry Saboteur je v bloudění, puzzloidní řešení specifických obrazovek (souboje, střílny, psi, házení cihlou, metro...) a samozřejmě dynamicky škálovaná obtížnost (počet úkolů a komplexita bludiště se zvyšující se obtížností).
    - to samo o sobě potvrzuje nutnost hru rozdělit na obrazovky, jako to dělá i Another World / Flashback. Každá obrazovka je pak uzavřený svět sám pro sebe, který nemohou nepřátelé opustit.
    - aby ale mohlo být na scéně více nepřátel, aniž by byla místnost přeplněná, je nutné udělat nějaké úpravy. Např. zmenšit postavičky (nacpat jich tedy více na scénu) nebo udělat scrollovací víceobrazovkové místnosti (viz Metroid, Castlevania), které samy o sobě žijí podle stejných pravidel, jenom se u toho dá scrollovat. Tento typ her považuji za nejkrásnější, ale je to podle mne zbytečně komplikované a nesaboteurovaté. Na mém náčrtku (post z roku 2012) vidíš určité maximum, tj. tři patra, na každém může být v klidu 1-2 nepřátelé (které bude nutné překonat pomocí schovávání se za bedny, dveře, výklenky ála Alcatraz a podobně).
    - myšlenka automatických likvidací je vlastně prodloužení puzzloidní logiky hry. Na začátku je myšlenka, že každou místnost lze projít bez alarmu či hluku. Tj. musí tam existovat možnost, jak při správném postupu a časování projdeš místnost "bez ztráty kytičky". Když něco poděláš, tak se z toho můžeš vybojovat nebo jinak vystřílet. Implementace zpomalování času rozšiřuje tyto nouzové postupy, ale v zásadě by hráč měl být motivován co nejvíce likvidovat nepřátelé potichu. A proto má smysl mít likvidaci na jedno tlačítko.

    Ptej se dál, rád vysvětlím cokoli .
    Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered + GOTEK

    Komentovat


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

      Opravdu máš za to, že při zachování velikosti sabotéra, nemůžou být na obrazovce třeba 4 nepřátelé? By se překrývaly , třeba jako když se hrál IK. Neříkám, že chci v každé místnosti 4 nepřátelé, mohlo by tak být třeba na pár místech hry. Zároveň by to hru mohlo zpestřit. Jednoduše někde by byl 1 nepřátel, někde 2 ... 3. A nepřátelé by mohli mít různé úrovně svého zdraví. To by se dalo různě kombinovat. Jeden co by snesl více, nebo 4 lehčí nepřátelé. Jak říkám nemusí to být "Sabotér 3" v pravém slova smyslu. Mohlo by to být i pro 2 hráče na 1 počítači (ale ne na rozdělené obrazovce), kteří by kooperovali.

      Pořád nevím, proč by nepřátelé nemohli opustit obrazovku. Na důležitých místech budou nepřátelé, co ji neopustí, ale pár by jich mohlo být, co by se přemisťovali .

      S tou likvidací potichu je to dobrý nápad. Spíše ale místo správného načasování stisku tlačítka bych to udělal klasickým soubojem, kdyby se muselo při útoku nepřítele použít krytí a pak nějaký speciální chvat. Tedy krytí by "ztlumilo ruch" a pak speciální chvat, nebo speciální chvat bez krytí, ale tam by bylo vetší riziko zásahu od nepřítele... .
      Amiga - PMD 85

      Komentovat


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

        Množství nepřátel závisí čistě na tom, jaký chceš mít styl hratelnosti. Když jich bude moc, tak z toho uděláš spíše rubačku, než plížičku, což byl můj záměr. Každopádně to ber spíše tak, že jedna obrazovka / místnost (ať už scrollovací nebo ne) představuje pro hráče ucelenou překážku, kterou musí svými silami zdolat. Proto jsou migrující nepřátelé přinejmenším zbyteční z hlediska konceptu (nemluvě o praktickém hledisku - jednodušší AI).

        S klasickou pěsťózní likvidací nepřátel nablízko počítám samozřejmě, když sabotér není ve krytu, pak to funguje zhruba tak, jak popisuješ. Kryt ti dává strategickou výhodu. Množství úkrytů ale nemusí být nijak závratné, má jít o podporu puzzloidního řešení místností, kde bude třeba moc vojáků.
        Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered + GOTEK

        Komentovat


          #34
          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
          Kryt ti dává strategickou výhodu. Množství úkrytů ale nemusí být nijak závratné, má jít o podporu puzzloidního řešení místností, kde bude třeba moc vojáků.

          Prosím rozepiš, jak tohle myslíš.

          Jo to co píšeš, s tím souhlasím. OK, nepřátelé by se nepřesouvali. Absolutní většina hry by byla puzzloidní. Ale třeba z 50 místností by mohli být tak 2 absolutně akční.
          Amiga - PMD 85

          Komentovat


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

            V zásadě se snažím rozepsat několik zásadních herních mechanismů, které se pak budou kombinovat a tvořit jednotlivé místnoti.

            - platforming / adventuring - kombinace klíčů, páčení zámků, plížení se skrz podhledy a podobně - to je jedna z věcí, kterou ti hra umožňuje - sebrat předmět, použít ho, skrčit se, zalehnout, plížit.

            - souboje na dálku - střelba či házení předmětů - takřka jistota instantního zabití, ale za cenu naprostého minima munice a rizika alarmu (v případě hlučné střelby).

            - souboje na blízko - buď pomocí nějaké zbraně nebo pěstmi - tyto bitky jsou více akční, pokud se nepodaří protivníka rychle složit, může spustit alarm.

            - tichá likvidace z krytu - ať už z kleče nebo ve stoje - z výklenku či zpoza nějaké krabice - "nejlepší" řešení ve smyslu sázky na jistotu, je potřeba jenom správně načasovat stisk tlačítka. Když to ale poděláš, hrozí alarm.

            AI pak musí umět zvládat pár základních věcí, jako reagovat na viditelného sabotéra, reagovat na zvuk (i třeba otevření dveří, kde se nabízí použití olejničky mimochodem...), reagovat na mrtvé tělo na podlaze, pathfinding k nejbližšímu alarmu (který musí být logicky umístěný ve stejném patře, kde voják hlídá) a pár podobných detailů.

            Až tohle bude funkční a odladěné, můžeme tvořit levely. Poměr akčních a plížících pasáží se bude řešit až na základě toho, jak budou výše popsané mechanismy zábavné a funkční.
            Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered + GOTEK

            Komentovat


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

              OK, ale nenašel jsem (nebo nevidím) odpověd, jak myslíš přesně vztah tvůj kryt s hodně vojákama. Jde mi o konkrétní situaci, něco ve stylu. Máš v místnosti 5 vojáku a ty je všechny složíš v tichosti pomocí tvého krytu, co je dle mne tedy nelogické, protože je je třeba složit co nejrychleji a tedy né taktikou, ale jen uvádím příklad.
              Amiga - PMD 85

              Komentovat


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

                OK, tohle je příklad:

                V místnosti ti pochodují dva vojáci, zleva doprava, pořád dokola. Sabotér vnikne skrz stropní díru do místnosti a hned se schová za bednu, tj. nikdo ho nevidí. Jeden z vojáků chodí kolem bedny, druhý ale nikoliv. Jak na to?

                1) Hráč počká, až půjde první voják kolem bedny tak, kdy druhý voják nekouká tímto směrem.
                2) Hráč jen stiskne tlačítko FIRE, tj. sabotér se vykloní z krytu, podřízne vojáka a jeho mrtvé tělo nechá spadnout na zem a opět zaleze za bednu.
                3) Druhý voják po otočce uvidí mrtvé tělo, dojde se k němu podívat - tj. je u bedny a hráč ho může opět zlikvidovat (ať už krátkým nebo dlouhým stiskem FIRE).

                Alternativně bys mohl jít samozřejmě do boje, ale více tím riskuješ a přijdeš o munici či nůž / cihlu - ale bude to patrně rychlejší.

                P.S.: V bodě 2) bys samozřejmě mohl podržet dlouho FIRE, což by znamenalo, že mrtvolu zatáhneš za bednu, tj. bude skrytá. V takový okamžik ale nenalákáš druhého vojáka, aby se zašel na mrtvolu podívat.

                Samozřejmě tady kriticky záleží na leveldesignu - ber to tak, že sabotér vydrží třeba dva-tři zásahy nebo dokonce jenom jeden, aby to bylo reálnější. V takový okamžik jako hráč zvažuješ, zda-li vyplýtváš cenný nůž, jestli budeš riskovat alarm - a co kdybys měl opravdu jen holé ruce a proti tobě stojí dva či více po zuby ozbrojených prusáků?

                Hráč by neměl mít umožňeno zklikvidovat X vojáků potichu. Příklad s pěti panáčky bude, že třeba první dva dáš potichu, třetího necháš vykrvácet na podlaze, což naláká čtvrtého a pátého, které pak odprákneš pistolí, ve které máš akorát dva náboje. Takhle si to v hlavě představuju. Místnost splněna, posbíráš vypadnuvší munici a jdeš dál.
                Naposledy upravil davesade; 15.05.2015, 11:46:35.
                Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered + GOTEK

                Komentovat


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

                  OK, tohle mi stačí na stručný přehled toho, co jak by mělo fungovat. Jen jsem chtěl mít alespoň nějakou představu. Nápady jsou to skvělé. Pokud na něčem zapracuji, tak se určitě dohodnem. Nevím, ale jestli se mi na 1. program bude chtít hrabat v logice programu tak, aby fungovali Tebou navrhnuté mechanismy. Je třeba počítat i jen s jednoduchým LEVEL dizajnem bez téhle logiky... . Jednoduše řečeno, byla by to čistá mlátička.... . Ale i za ni budu strašně moc rád! .
                  Amiga - PMD 85

                  Komentovat


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

                    Jako derivovat na mlátičku se dá vždycky, resp. začni tím, že máš jednopatrové místnosti, které jsou pouze průchozí zleva-zprava, udělej pěstní souboje a tím si udělal 25% mnou navrhovaných mechanismů. Odlaď (jak hratelnost, tak AI na úrovni viditelnosti třeba) a pak přidej další mechanismus, že jo.
                    Amiga 1200 + Blizzard 1260 + 64 MB RAM + CF2IDE + Indivision AGA Mk1 + PCMCIA2CF + WHDLoad registered + GOTEK

                    Komentovat


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

                      OK, uvidíme, jak to pude, teprve Céčku začínám.
                      Amiga - PMD 85

                      Komentovat

                      Zpracovávám...
                      X