atarionline.pl Scorch - pełna gra - 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:
         
        CommentAuthorpirx
      • CommentTime9 Apr 2024 06:04
       
      hehehehehehe
      • 2:
         
        CommentAuthorJacques
      • CommentTime9 Apr 2024 06:04
       
      Tych z półki nie biorę, poczekam na update :-)
      • 3:
         
        CommentAuthorPecus
      • CommentTime24 Dec 2024 14:12 zmieniony
       
      Panowie! (i Panie)

      Z okazji świąt informuję, że popełniłem kolejną "wersję" :)
      A dlaczego w cudzym słowie? Otóż zmian w gameplayu ZERO!

      Po prostu jakiś czas temu, chwilę jeszcze przed SV2024WE, przypadkiem wpadł mi film o algorytmie rysowania okręgu z ładną analizą. I jak zobaczyłem, że to ten sam algorytm, który zastosowaliśmy w grze, to tak mi zakiełkowało, że może za wcześnie założyliśmy, że jest najszybszy/krótszy/lepszy :)

      Poszukałem trochę i napisałem rysowanie okręgu o 80b krótsze i bez ROLi więc szybsze :) Troszkę (minimalnie) brzydsze okręgi, ale co tam. Potem zauważyłem że mamy jeszcze kawałek kodu, który powtarza się na końcu i na początku pętli głównej rundy - bez sensu.... i tak zrobiło się jakieś 130b wolne.

      No to nie mogło się zmarnować :) Dopisałem słynną broń "Plasma Blast". Słynną, bo wiele osób o nią prosiło, a ja nawet nie wiedziałem co robi - znałem tylko efekt graficzny.
      Otóż poczytałem i nie robi nic szczególnego, ale ma fajny efekt wizualny. W związku z czym dodałem ją ale tylko do broni, które wizualizują śmierć czołgu.

      Nie zrobiliśmy release, bo jeszcze flashera do carta nie ma, ale wszystkie inne pliki jak najbardziej (wraz z obrazem carta).

      Częstujcie się:
      ->link<-

      scorch.xex - plik gry bez ekranów tytułowych
      scorch_cart.xex - plik z ekranami (identyczny jak na carcie)
      scorch.car - obraz carta dla komputerów Atari
      scorch.bin - obraz carta dla Atari 5200
      scorchC64.prg - plik gry na C64 (samograj bez ekranów tekstowych)

      Release będzie jak zrobię nowy flasher do carta, czyli za jakiś czas.

      Wesołych Świąt!
      • 4:
         
        CommentAuthorMq
      • CommentTime24 Dec 2024 17:12
       
      Scorch to nie jest tylko gra. Scorch to już nawet nie jest stan emocjonalny. Scorch to choroba tocząca autorów od około dwudziestu lat i prawdopodobnie nieuleczalna i dożywotnia:-) Ci, którzy myślą, że kiedyś będą mieli wersję ostateczną Scorcha, są na prawdę na dobrej drodze do szaleństwa:-)

      Ja również wszystkim pasjonatom Scorcha (i nie tylko) życzę wszystkiego dobrego z racji Wesołych Świąt:-) i kolejnych lat wypełnionych nowymi wersjami Scorcha:-)
      • 5:
         
        CommentAuthorpirx
      • CommentTime24 Dec 2024 20:12 zmieniony
       
      o kudre, znalazłem trochę opty w rmt playerze (raczej nie tyle opty co sprzątanie po wcześniejszej opty, jeszcze się urwie trochę bajtów, to dorzucę do riliza riliza

      @Mq są jeszcze karty dostępne? dla kulegi pytam.
      • 6:
         
        CommentAuthorPecus
      • CommentTime24 Dec 2024 22:12
       
      Nie godzi się wolnych bajtów zostawiać! :)
      • 7:
         
        CommentAuthorMq
      • CommentTime25 Dec 2024 01:12
       
      @pirx, tak, wszystkie gry Mq-workshop są dostępne jak komuś coś potrzeba. Na razie kontakt do mnie mailem, w przyszłości będą ulepszenia:-)

      @Pecus, tylko pamiętaj zostawić kilka bajtów rezerwowych miejsca na kilkucyfrowy numer wersji:-)
      • 8: CommentAuthorbob_er
      • CommentTime25 Dec 2024 11:12 zmieniony
       
      @pecus - tak z ciekawości - te kółka to bresenham czy coś mądrzejszego?
      edit: zmiana adresata :)
      • 9:
         
        CommentAuthorPecus
      • CommentTime25 Dec 2024 13:12 zmieniony
       
      Ten poprzedni to był bresenham - a teraz to nie wiem :) . Poszukałem w necie i znalazłem.
      Jako praktyk często znam zasadę działania, ale nie znam nazwy czy pomysłodawcy algorytmu :)

      Wyodrębniłem je do oddzielnych plików, tak by można było łatwo podmienić zmieniając tylko includa, więc możesz sobie na Githubie zobaczyć - tym bardziej, że na początku jest rozpisany algorytm w komentarzu w postaci zjadliwej dla normalnego człowieka, bo assembler - no sam wiesz :)

      Wersja poprzednia: ->link<-
      wersja obecna: ->link<-

      Zasadniczo to oba algorytmy wyznaczają punkt opierając się o tę samą ideę (bresenham), ale mają różną implementację i ten drugi jest mniej dokładny (ale jakie ma to znaczenie :) ) za to sporo mniej liczy w głównej pętli.
      • 10: CommentAuthorw1k
      • CommentTime25 Dec 2024 19:12
       
      fajne, ale tu je posledna verzia 1.50

      ->link<-
      • 11:
         
        CommentAuthorPecus
      • CommentTime17 Jan 2025 22:01 zmieniony
       
      A nie prawda :)

      Pod tym linkiem jest już 1.51 ;)

      Dodałem flasher i Pirx zrobił release.

      ->link<-

      What's Changed
      - VU meters do not activate when the music is turned off. (Previously, after a set time, the tanks would rotate their turrets to position 0, and nothing would happen because there was no music. Now, they don’t even rotate at all.)
      - A slightly faster and significantly shorter circle-drawing procedure (the circles are a tiny bit less pretty
      - Plasma Blast! (only as one of the tank destruction visual effects).
    1.  
      ...upcoming Scorch version numbers...

      Scorch 2.0s
      Scorch 2.0d
      Scorch 2.5
      Scorch 2.6f
      Scorch 2.8f
      Scorch 3
      Scorch 4
      Scorch 4.40
      Scorch 4.41
      Scorch 4.42
      Scorch 4.43
      Scorch 4.44
      Scorch 4.45
      Scorch 4.46
      Scorch 4.47
      Scorch 4.48
      Scorch 4.49
      Scorch 4.49a
      Scorch 4.49b
      Scorch 4.49c
      Scorch 4.49d
      Scorch 4.49e
      Scorch 4.49f
      Scorch 4.49g
      Scorch 4.50
      Scorch 4.51
      Scorch 4.53
      Scorch 4.54
      Scorch 4.55
      Scorch X
      Scorch XE
      Scorch XL
      Scorch XEGS
      Mega Scorch
      Giga Scorch
      Scorch 16
      Scorch 32
      Scorch 64
      Scorch 020
      Scorch 030
      Scorch 040
      Scorch 060
      Scorch 400
      Scorch 400 mini
      Scorch 410
      Scorch 520
      Scorch 551
      Scorch 600
      Scorch 800
      Scorch 810
      Scorch 825
      Scorch 1000
      Scorch 1010
      Scorch 1020
      Scorch 1030
      Scorch 1040
      Scorch 1050
      Scorch 1060
      Scorch 1090
      Scorch 1200
      Scorch 1400
      Scorch 1450
      Scorch 1600
      Scorch 1850
      Scorch 2000
      Scorch 2600
      Scorch 2600+
      Scorch 3000
      Scorch 4000
      Scorch 5200
      Scorch 7800
      Scorch 7800+

      ... so luckily, there are a few more Scorch versions coming. ;-)
      • 13:
         
        CommentAuthorPecus
      • CommentTime18 Jan 2025 14:01 zmieniony
       
      @CharlieChaplin
      Certainly Scorch 7800 and 7800+ is not planned (I even read a little about this console and making this game for it is unrealistic - not enough RAM), Scorch 5200 has been ready for a long time and also available in version 1.51 in this release :)

      As for the rest of the proposed versions - why not? :P - the code is open - gentlemen to work!!! :)))
      • 14:
         
        CommentAuthorpirx
      • CommentTime18 Jan 2025 14:01 zmieniony
       
      also XEGS is fully supported :]
      • 15: CommentAuthorEagle
      • CommentTime18 Jan 2025 20:01
       
      Miker mnie kiedyś męczył o wersję na 7800, ale wersja na 5200 była jeszcze nie skończona.
      Standardem na 7800 jest dodatkowe 16kB Ram na kartridżu, w moim SN cart jest 2x16kB, SN2 ma 2x32kB z dostępem bez potrzeby bankowania.
      XM modul ktory jest wspierany przez emulatory i 7800+ ma możliwość bankowania 128kB ramu.
      Display List Lista i Display Lista która może udawać ekran z A8 zajmie około 2.5kB i nie trzeba wtedy nic zmieniać w programie.
      Więc czekam na Scorch 7800/7800+ ;)
      • 16:
         
        CommentAuthorpirx
      • CommentTime18 Jan 2025 21:01
       
      wiesz najtrudniej jest zbudować jakiś szkieletor, żeby się w ogóle uruchamiało na 7800.
      niestety jest jeszcze jeden problem - gra używa magii atarowskiego display listu do wyświetlania ekranów zakupów / inventory w trybie tekstowym - wiersze tekstowe są statyczne, dynamiczne jest budowanie DL.

      Jeśli dałoby się tylko "zaemulować" ekran graficzny, to trza by napisać nowe inventory w grafice. W sumie chcieliśmy to robić dla wersji na inne komputerki w rodzaju c64 czy orica, ale zainteresowanie było mierne i zamiast tego dokańczamy inne projekciki w rodzaju dizonora czy szalonego breakouta a teraz na tapecie znów coś kolejnego, co błaga o skończenie i wypuszczenie.

      w każdem razie teraz gra jest tak zrobiona, że prawie wszystko, co jest specyficzne dla atari jest w oddzielnych pliczkach a "logika biznesowa" oddzielnie, więc (modulo tryby tekstowe) portowanie powinno być "proste".
      • 17:
         
        CommentAuthorPecus
      • CommentTime18 Jan 2025 21:01
       
      Dla mnie 7800 to krok wstecz w stosunku do 5200. To po prostu ulepszone 2600.

      RAMu tyle, że pół ekranu HiRes się mieści (a gdzie stos i zmienne?). Pokrętny sposób generowania obrazu przywracający w zasadzie idee śledzenia plamki z 2600. Dźwięk dokładnie jak 2600.
      A, że kolorów więcej w wyższych rozdziałkach jest możliwe... co z tego, jak się gimnastykować trzeba.

      I wiem, że na cartach siedział RAM - uważam, że to jakaś pomyłka, jeśli w każdym carcie musi być RAM by dało się grę zrobić, to czemu nie ma go w konsoli w wystarczającej ilości?

      Scorch musi mieć tyle RAM by zmieścić ekran, bo wiele operacji (np. wyliczenie wysokości gór po eksplozji) odbywa się na podstawie zawartości ekranu. A tablic różnorakich ze zmiennymi jest na pewno ponad kilobajt. Czyli jeśli chcemy zachować tryb graficzny, to na stercie trzeba jakieś 10kB RAM (tak na szybko liczę).
      • 18: CommentAuthorgorgh
      • CommentTime19 Jan 2025 21:01 zmieniony
       
      załadowałem najnowszą wersję (1.51) z kasety i gra mi nie działa, na pierwszym ekranie wyboru wygląda na to, że obsługa klawiatury szwankuje, po naciśnięciu któregoś z kierunków tak jakby nie kasowało stanu klawisza i program zachowuje się tak, jakby klawisz był ciągle wciśnięty. Nie da się też nacisnąć return.
      Na początku myślałem, że to błąd zapisu na taśmie, ale nagrałem grę jeszcze raz na kasetę i błąd się powtórzył.
      Korzystam z Atari 130XE z 320kb RAM i XCA12 z Turbo 2000.
      Czy może ktoś spróbować powielić mój błąd na innym magnetofonie?
      • 19:
         
        CommentAuthorPecus
      • CommentTime19 Jan 2025 21:01
       
      Magnetofon??? :)

      A jak z poprzednią wersją było? Bo ja nic nie zmieniałem w obsłudze klawiatury.
      • 20: CommentAuthorgorgh
      • CommentTime19 Jan 2025 21:01 zmieniony
       
      poprzedniej wersji nie ładowałem
      być może to jest fałszywy alarm, może problem leży po mojej stronie, przydało by się więcej testów.
      edit:
      w1k tutaj wczytuje z tego samego turbo i wszystko mu działa w wersji 1.50
      • 21: CommentAuthorgorgh
      • CommentTime19 Jan 2025 21:01 zmieniony
       
      nagrałem wersję 1.50 na kasetę i problem się powtórzył, nie mam pojęcia co się dzieje :)
      edit: jak wczytuję grę z dyskietki to wszystko działa, czary jakieś :)
      • 22:
         
        CommentAuthorPecus
      • CommentTime20 Jan 2025 08:01
       
      Powiem Ci, że jest to możliwe przy Turbo 2000F.
      Sprawdzanie stanu klawiszy jest w Scorchu robione przez sprawdzenie wartości całego rejestru SKSTAT a nie tylko wybranego bitu. Założenie jest takie, że wszystkie bity są standardowo ustawione ($ff).
      W przypadku turbo które dane przesyła 4tym bitem tego rejestru, jeśli ostatni przesłany bit jest równy 0, a software turbo po zakończeniu transmisji nie przywraca domyślnego stanu, to będzie problem.

      Zmienię to w Scorchu przy okazji (dziś wieczorem?? :) ), ale nie będzie nowego release :)

      Podmienimy pliki w obecnym, tym bardziej, że ma to znaczenie tylko przy plikach binarnych ładowanych z magnetofonu konkretnym systemem turbo.

      Ale czujność!!! :)
      • 23: CommentAuthorw1k
      • CommentTime20 Jan 2025 08:01
       
      TURGEN informuje mnie, że format ten nie jest przeznaczony do formatu MONOLITIC, więc najpierw przekonwertowałem go na monolityczny. Wypróbuj ten plik CAS.

      1.51., turbo 2000
      • 24:
         
        CommentAuthorPecus
      • CommentTime20 Jan 2025 09:01 zmieniony
       
      Tak, czy inaczej.... Poprawiłem w kodzie sprawdzanie wciśnięcia klawisza.
      Teraz sprawdzany jest konkretny bit - pozostałe (w tym ten stosowany przy transmisji Turbo 2000F) nie mają już znaczenia.

      To oczywiście zaszłość - kod ten powstał 22 lata temu (a może i wincyj) i nikt nie raczył sprawdzić czy jest optymalny (skoro działał :) ).
      Przy okazji zaoszczędzono 11 bajtów :P

      Oba pliki XEX w release wersji 1.51 zawierają już poprawkę.


      Tak jako ciekawostka.
      Cały Scorch od początku pisany był jako obsługiwany wyłącznie z klawiatury, dodana potem obsługa joysticka (a nawet 4rech) konwertuje ruchy joya na kody klawiatury :) to m.in. z tego wynika taki a nie inny sposób obsługi menu zakupów i wyboru broni za pomocą joysticka.
      • 25: CommentAuthorgorgh
      • CommentTime20 Jan 2025 09:01 zmieniony
       
      pecuś, dzięki, po pracy sprawdzę, super
      w1k: dakuje
      • 26: CommentAuthorgorgh
      • CommentTime20 Jan 2025 10:01
       
      legancko, teraz wszystko działa, z tym, że ja nie mam Turbo 2000F tylko zwykłe 2000 :)
      • 27:
         
        CommentAuthorPecus
      • CommentTime20 Jan 2025 11:01
       
      Info o użyciu tego bitu do transmisji w turbo miałem z opisu działania 2000F :), dlatego używałem tej nazwy, pewnie w zwykłym 2000 jest to samo.
      • 28: CommentAuthorEagle
      • CommentTime21 Jan 2025 00:01 zmieniony
       
      Tak wyglada Display List List i Display Lista dla Marii zeby wyswietlic kazdy Atarowki obrazek :D


      Dlls
      :3 .byte $0F,>emptyline,<emptyline
      :192 .byte $00,>linia:1,<linia:1
      :8 .byte $0F,>emptyline,<emptyline

      .rept 192, #
      linia:1 .byte <[obrazek+[40*:1]],$01,>[obrazek+[40*:1]],0,<[obrazek+31+[40*:1]],$17,>[obrazek+31+[40*:1]],124,0,0
      .endr

      emptyline .byte $00,$00



      Tryby tekstowe z A8 sa bez problemu do zrobienia i tez mozna modyfikowaxc DL
      Dodaje plik wyswietlajacy obrazek z A8 ktory mozna uruchomich pod emulatorem JS7800

      ->link<-

      wystarczy przeciagnac plik na te strone
      • 29:
         
        CommentAuthorPecus
      • CommentTime21 Jan 2025 09:01 zmieniony
       
      No super, zdaję sobie z tego sprawę.

      Ale to, że żeby coś sensownego napisać (porównywalnego choćby z 5200 jeśli już z konsolami Atari porównuję), to cart musi mieć co najmniej 8kB RAM i dodatkowo POKEYa na pokładzie....

      Nie rozumiem tego.

      Trochę kusisz, ale nie wiem czy chce nam się :) dla tych 3 osób robić port.

      A wracając do tego co jest i działa....
      Testując poprawkę sprawdzania klawiatury znalazłem błąd :) straaaasznie rzadki, ale powodujący zwis. Otóż gra ma kilka różnych procedur DLI i przełącza je zmieniając ekrany. No i procka zmieniająca DLI wygląda mniej więcej tak:

      LDA #$C0
      LDY # <DLIaddr
      LDX # >DLIaddr
      STY $0200
      STX $0201
      STA NMIEN

      No i wyobraźcie sobie, że wchodząc i wychodząc do inventory przez parę minut (testowałem te klawisze :) ) udało mi się trafić na taki moment w którym pomiędzy rozkazami STY i STX wstrzela się DLI! :) . Baaaardzo rzadko, ale mogło się trafić. Mi na emulatorze przy półgodzinnym klikaniu wywaliło się ze 4-5 razy, ale bardzo się starałem. Tym bardziej rzadko, że wszystkie procedury DLI - poza jedną (inventory) - są na tej samej stronie pamięci, więc tylko w jednym przypadku starszy bajt adresu może zmienić się niezależnie od młodszego :)
      Dodałem więc wyłączenie przerwań przed zmianą adresu (co powinno być zrobione już dawno).

      Rozmawiałem wczoraj z Pawłem, że może podmienić pliki w release 1.51, ale on stwierdził, że trzeba 1.52 zrobić. Będzie śmieszniej :)

      Ale ważniejszy powód to porządek. Nie powinny funkcjonować w sieci dwa pliki z tym samym numerem wersji i różną funkcjonalnością, dlatego też w 1.51 wycofałem poprawkę dla turbo 2000 :)

      Więc jest 1.52 :)

      ->link<-
      • 30: CommentAuthorgorgh
      • CommentTime21 Jan 2025 19:01
       
      Pograłem pierwszy raz w tę grę i jest kapitalna jedna z lepszych gier w jakie grałem ostatnio
      Pewnie o tym wiecie, ale gdy ta spadająca błyskawica (nie wiem jak to określić) natrafi akurat na pocisk lub wybuch to pozostaje czasem fragment jej na ekranie
      • 31:
         
        CommentAuthorPecus
      • CommentTime21 Jan 2025 21:01
       
      No niestety to jest cecha tej gry :) a nie błąd.

      Meteory są rysowane na VBI i kod gry nic o nich nie wie (on tylko ustawia pewne flagi by meteory pojawiały się wtedy kiedy da się zminimalizować ewentualne problemy).
      No ale i tak procedura osypywania gleby (która dla przyspieszenia działa tylko w zakresie poziomym eksplozji) czasem osypie w dół meteor :) a wtedy działająca na przerwaniu procka kasująca ten meteor narysuje go (bo rysowanie i kasowanie są robione EORem :) )

      Zostawiłem meteory mimo to, bo urozmaicają te statyczne obrazki.
      • 32:
         
        CommentAuthorpirx
      • CommentTime22 Jan 2025 06:01
       
      panie jakeśmy pomysly mieli na efekty, normalnie ace plottera dalo sie wlozyc i rozne takie, ale ile mozna, kolejne starocie trzeba dokanczac a nie polerować ten "diament" :)
      na pewno jeśli chodzi o ilość kodu 6502 to najgęstsza gra na 5200, pewnie w pierwszej lidze na 8-bit. jakby w roku 2000 ktoś mi powiedział, że to tyle zajmie to
      • 33:
         
        CommentAuthorPecus
      • CommentTime22 Jan 2025 13:01
       
      Ech.. tego ace plottera trzeba było gdzieś wcisnąć :)
      Tablica sinusów jest, szybkie ploty som - zaprawdę powiadam wam, że w 100b by się zmieściło (jakby były wolne :P ).