atarionline.pl Dude Story - gramy!!! - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1:
         
        CommentAuthorDracon
      • CommentTime1 Feb 2024 09:02
       
      Ciekawe, czy ktoś popełni tzw. speedrun na YT do tej gierki. ;)
      • 2: CommentAuthorpustak
      • CommentTime1 Feb 2024 09:02
       
      @Xuio tylko po to żeby mieć kasetę:)
      W AVG nie ma początkowego pisku, nie ma przewijania kasety, ustawiania na początek, AVG nie wciągnie też kasety jak magnetofon :)

      @takron27 mam UM Turbo planuję na stronie B kasety nagrać sobie taką wersję, ale to już bez pomocy Turgena tylko Atari plus ewentualnie sio2sd, ale może uda się z pomocą samej 1050.
      • 3:
         
        CommentAuthorPeri Noid
      • CommentTime1 Feb 2024 10:02
       
      Na magnetofonie bez problemu byś nagrał bez Turgena jak masz XEX i 1050 albo SIO2SD/SIO2PC. Moja podpowiedź: Boot Casette Maker.
      • 4: CommentAuthorpustak
      • CommentTime1 Feb 2024 10:02
       
      Już kiedyś nagrywałem jakieś trzy lata temu, nie pamiętam dokładnie jak to robiłem, ale sobie przypomnę.
      • 5:
         
        CommentAuthorMq
      • CommentTime1 Feb 2024 18:02
       
      Dodam, że wersje które upubliczniłem jako atr i jako cas, są zrobione dokładnie z tego xex-a, którego upubliczniłem razem z pozostałymi plikami. Można powiedzieć, że xex jest punktem wyjścia do wszelkich innych plików.

      Plik cas jest zrobiony Turgenem, bez żadnych bajerów, na standardowych ustawieniach, do normalnego normalu, tylko w opcjach loadera zaznaczyłem, żeby znikał kursor i zamiast tytułu gry, który pozwala wpisać loader Turgena, to wpisałem tam wykrzyknik, jako takie sentymentalne nawiązanie do znanego dawnego loadera z wykrzyknikiem.
      Jak ktoś chce wav-a, a chce go mieć identycznie przygotowanego jak ten cas, którego zrobiłem, to można sobie w Turgenie ustawić dokładnie tak jak wyżej napisałem i wygenerować to bezpośrednio z xex-a.
      Loader w Turgenie chyba się nieco różni w różnych jego wersjach - ja używałem do tego Turgen 8.8.2 jak by co.

      Z kolei atr jest zrobiony z wykorzystaniem loadera xbootdos autorstwa XXL-a. Na obrazie atr jest wrzucony po prostu wyżej wymieniony plik xex i się ładuje automatycznie wspomnianym loaderem. W loaderze jest zmieniona nazwa automatycznie ładowanego pliku na DUDE i ten plik o takiej nazwie, który znajduje się wewnątrz obrazu atr, to jest też ten sam pierwotny xex, tylko ze zmienioną nazwą na DUDE.

      Te pliki cas i atr zrobiłem dla ułatwienia, bo nie każdy umie, a niektórzy chcieli i pytali jak to zrobić, więc są gotowce od ręki.

      Oczywiście xex-a można sobie załadować dowolnymi innymi loaderami, co kto tam lubi, ale trzeba mieć na uwadze, że gra ładuje się począwszy od $C9C, więc loader musi być odpowiednio niżej i raczej nie uda się załadować z żadnych zwykłych DOS-ów, tylko trzeba używać dedykowanych do gier małych loaderów o niskim memlo.
      • 6: CommentAuthorpustak
      • CommentTime1 Feb 2024 21:02
       
      Kaseta nagrana:
      Strona A - normal - ponad 15 min - użyłem jednak oryginalnego cas-a od Mq którego przerobiłem na wav-a i nagrałem kaseciakiem z usb na kasetę - wczytało się podnad 250 na liczniku.
      Strona B - Turbo UM - 2.5 min wczytywania - nagrałem z xex-a przy użyciu Atari i Sio2SD.

      I co teraz? - teraz muszę sobie zrobić okładkę.... :)
    1.  
      Hmmmm,

      can someone create a packed version of Dude Story 1.1 with Exomizer that runs from DOS, e.g. with a starting adress of $2000, buffer page 4, depacker page 5 ?

      (Tried it myself with Superpacker/Exomizer and used $2000 as load adress, have no clue what RAM enter and RAM exit means and what values to put in there - of course the packed end result loaded under DOS, but when unpacking it completely crashed.)
      • 8: CommentAuthortebe
      • CommentTime3 Feb 2024 01:02 zmieniony
       
      EN DOS + exomizer (tested with DOS II+/D 6.4)
      • 9: CommentAuthortebe
      • CommentTime3 Feb 2024 01:02 zmieniony
       
    2.  
      Thank you TeBe, now it works as it should!
      • 11: CommentAuthortebe
      • CommentTime3 Feb 2024 02:02
       
      check again, I uploaded the corrected versions (exoDOS)
    3.  
      Yep, you uploaded, while I edited my post... ;-)

      Maybe you can give some short instruction (e.g. in a separate topic) how this "relocating" with Superpacker/Exomizer is done, meaning how one can pack a ML-file that normally does not work under DOS in such a way, that at least the packed file will work under DOS ?
      • 13:
         
        CommentAuthorMq
      • CommentTime3 Feb 2024 12:02
       
      @tebe: bardzo ładnie zrobione. Podoba mi się, że pozostał splash pojawiający się podczas ładowania gry dokładnie tak jak to zaprojektowałem, podoba mi się też, że podczas dekompresji splash jest nadal wyświetlany, a mruga on sobie w paski dekompresyjne bardzo elegancko.

      Dodatkowo dekompresja jest mega szybka, co jest też super, bo osobiście nie przepadam za dekompresjami, które trwają dłużej niż wczytywanie gier nieraz:-)

      Przyłączam się do prośby o zrobienie odrębnego wątku z opisem krok po kroku czego użyć i w jaki sposób, żeby sobie móc przygotowywać takie wersje gier.
      • 14: CommentAuthormono
      • CommentTime3 Feb 2024 13:02 zmieniony
       
      Samorozpakowujący jest bardzo prosty:
      exomizer sfx sys -n -t 168 -s "lda \#0 sta \$$22f sta \$$d400" -o gra-exo.xex gra.xex

      -n wyłącza efekty podczas rozpakowywania
      -t 168 to rodzaj platformy, a to jest 0xA8 :)
      -s to kod wykonujący się przed rozpakowywaniem - ja wygaszam tu ekran bo nie lubię śmieci ani pasków (stąd też -n), tym bardziej że dekompresja 40KB trwa trzy sekundy.

      Aktualnie jest dostępna wersja 3 ->link<-
      i ona raczej wystarczy, ale przy bardziej wyszukanych zastosowaniach jak dekompresja strumieniowa, polecam też przyjrzeć się wersji 2 ->link<-
      a to dlatego, że w wersji 3 nie było jak chwilę temu sprawdzałem któregoś dekompresora (exomizer3 ma oczywiście tryb kompresji exomizera2 więc nie trzeba instalować dwóch kompresorów).

      Edit: Ważne żeby pamiętać, że kompresor bierze zwykły plik com z wieloma blokami, ale ZIGNORUJE wszystkie bloki INIT, co znaczy że można sobie rozłożyć dane w pamięci a potem wszystko za jednym zamachem skompresować. Jeśli dobrze pamiętam, to dla A8 pod uwagę brany jest obszar pamięci $0000-$CFFF.
      • 15: CommentAuthortebe
      • CommentTime3 Feb 2024 13:02
       
      blok programu po rozpakowaniu nadpisuje obszar $0700..$2000, DOS przestaje działać, stąd jakiekolwiek bloki RUN po właściwej dekompresji nie mają prawa zadziałać, jak to obejść ?

      dodałem nowy blok od adresu $06F0 z rozkazem JSR i JMP

      JSR exo_decompress
      JMP start_program

      po załadowaniu skompresowanego bloku exo, ostatnim blokiem jest RUN $06F0

      p.s.
      razem z SUPER PACKER-em (SP) dołączone są wszystkie kompresory z którymi działa SP, podmiana ich na nowe wersje na odpowiedzialność użytkoszkodników
    4.  
      @Mono:
      Thank you for the description. Thats how self extracting (but NOT "relocating" or adding a new load adress) is done with Exomizer and from the command line.

      How can I do the packing and "relocating" of a ML file with Superpacker 6.x (and Exomizer chosen as packer), meaning how is it done with the "GUI" ? Pack a ML file that does not work from DOS in such a way, it will at least load from DOS (load adress >= $2000) ? Or is that not possible there ?

      @TeBe:
      Would it be possible to place the RUN adress before the init adress? E.g. $0C09-Bxxx, RUN $0C09 can be RUN $0C09, $0CC09-Bxxx under DOS, "relocated" and packed with Superpacker maybe RUN $0C09, $2000-B1xx, Init $2000 - or would that still not work ?
      • 17: CommentAuthormono
      • CommentTime3 Feb 2024 15:02 zmieniony
       
      @CharlieChaplin: Unfortunately I don't know, because I've never used Superpacker.
      • 18: CommentAuthorpustak
      • CommentTime3 Feb 2024 22:02
       
      O spakowana wersja Duda! Extra!
      Trzeba od nowa nagrać kasetę.
      Moim zdaniem pliki z dekompresją to właśnie głownie do kaset się nadają. Na kartridżach nie ma to żadnego sensu jak dekompresja trwa dłużej niż wczytanie gry - tak jak pisał Mq.
      Czy można wybrać stopień spakowania gry kosztem dłuższej dekompresji?
      • 19:
         
        CommentAuthorJacques
      • CommentTime7 Feb 2024 22:02 zmieniony
       
      @Mq
      Czy rozważyłbyś dodatkowy model sterowania, w którym skok byłby obsługiwany przez fire?
      Ewentualnie wsparcie dla kontrolerów 2B?
      Co prawda jestem dżojstikowcem, ale czasem zdarzy się zagrać na padzie i skosy przy skoku to mordęga.
      • 20:
         
        CommentAuthorMq
      • CommentTime8 Feb 2024 13:02
       
      Hmm... grę testowałem przez cały czas jej powstawania na klawiaturze pecetowej w emulatorze, a także na standardowym joysticku na real Atari i na padzie na real Atari. Sam osobiście gram głównie na padzie, ale korzystam ze swojego interfejsu (S)NESctrl, który daje na padzie kierunek góra na osobnym przycisku, więc generalnie jakiekolwiek rozwiązanie z osobnym przyciskiem na ruch w górę robi robotę i tak wg mnie gra się najlepiej. Faktycznie najgorzej jest jak gramy na padzie i skaczemy zwykłym krzyżakiem, albo analogiem, ale to jest problem, który dotyczy przecież bardzo wielu gier, więc myślę, że rozwiązanie tego problemu globalnie leży bardziej po stronie użytkowników, żeby sobie sprawili taki kontroler, którym będzie im się dobrze grało:-)
      Wiesz, chodzi o to, że nawet jak wprowadził bym obsługę skoku na drugim przycisku, to załatwi to kilku osobom temat jednej tylko gry, a w pozostałych grach i tak będą mieli problem ze skokami, więc i tak będą te osoby musiały sobie poszukać rozwiązania globalnego...

      Skok na podstawowy fire nie wchodzi w rachubę, bo fire w grze jest wykorzystywany do wielu różnych interakcji (zbieranie i używanie przedmiotów, rozmawianie z postaciami, wchodzenie w przejścia, gra w kółko i krzyżyk, przełączanie dźwigni, teleportowanie).

      Rozważę obsługę drugiego fire i podmapowania pod niego skoku. Nie obiecuję jednak tego, bo kod obsługi sterowania w grze jest bardzo skomplikowany ze względu na responsywne ruchy postaci i wiele różnych sekwencji animacji i długości skoków. Nie wiem po prostu czy na tym etapie dam radę to jakoś tam wcisnąć, nie wiem też czy wystarczy mi pamięci, bo już wszystko jest na prawdę bardzo mocno poupychane...
      W każdym razie spróbuję, bo do wersji kartridżowej będę jeszcze wrzucał kilka drobnych poprawek, więc powstanie jeszcze jedna wersja gry (z tym że tu już będą to głównie drobne poprawki kosmetyczne, których być może nawet nikt nie zauważy:-)).
      • 21:
         
        CommentAuthorJacques
      • CommentTime8 Feb 2024 14:02
       
      Dzięki za odpowiedź - trzymam kciuki, jak się uda to super ;-)
      • 22:
         
        CommentAuthorMq
      • CommentTime19 Jul 2024 21:07
       
      Dude Story po kolejnych optymalizacjach zyskał jeszcze kilka bajtów miejsca na dodanie prostego intro, które wprowadza w fabułę i mówi o celu gry. Wersja 1.2 jest już na prawdę ostatecznie-ostateczna:-) Ta wersja znajduje się na kartridżach z fizycznym wydaniem gry. Nie jestem w stanie już łatwo nic więcej tam dopchnąć, ani nawet nie chcę już nic więcej z tym robić, a wydanie fizyczne uważam za ostateczne zakończenie przygody z tworzeniem gry Dude Story.

      Pliki wersji 1.2 dołączyłem w pierwszym poście, żeby było wszystko w jednym miejscu. Wersje xex, atr i cas - kto co lubi:-)

      Dziękuję wszystkim którzy czekali na tę grę aż 4 lata cierpliwie, a na koniec cieszą się wraz ze mną z ostatecznej odsłony Dude Story.

      Miłego grania!