Hallo Besucher, der Thread wurde 18k mal aufgerufen und enthält 69 Antworten

letzter Beitrag von Phoenix0870 am

LocoBasic vs. Basic 3.5/7.0

  • Und wenn Frutty Man sowieso zur Zur Zeit auf dem OP Tisch liegt und von Sourcecode Chirurgen untersucht wird, wäre ich dafür, evtl. das Gameplay besser zu machen. Es würde schon reichen das Gegner-Sprite einen Tick langsamer zu machen. Bisher ist Frutty technisch nett, aber dann doch eher unspielbar wenn man weiter kommen will.

    In der Z80 Version habe ich das anders gelöst. Da wird der Gegner über einen Interupt gesteuert und nicht über eine GOTO-Schleife.


    Auf die Schnelle und ohne Gewähr würde ich da sagen: Zeile 410, die Variable gs reduzieren - z. B. gs=.25 sollte das Monster nur noch halb so schnell laufen lassen...

    Ja, Geschwindigkeit sollte damit reduziert werden. Keine Ahnung mehr ob das je geklappt hatte.


    vs:

    :biglach:


    Hey Leute, das geht doch nicht. Wir können doch nicht FM64 für Odo machen. Der kriegt uns noch eine Midlife-Sinnkrise! :prof:
    Der wollte das doch selbst in 6505 ASM machen.... Nehmt ihm doch den Spass nicht weg....das ist sein Baby! :spassbremse:

    FM64 bleibt mir vorbehalten: :hammer:


    @alle
    Danke für das Fehlerfinden. :respect:

  • Yep, es ist der Wert "gs". Hier könnte man auch ansetzen mit Schwierigkeitsstufen. Die ersten Level langsam, dann schneller.


    Oobdoo hat ja die Portierung erlaubt und bei der Gelegenheit kann man doch auch Verbesserungsvorschläge und Fehler berücksichtigen.


    Oobdoo hat damals einen guten Job gemacht und ich meine, 400 Mark kassiert für das Spiel. Zurecht. :-)


    Ich würde es eher als Ehre sehen dass er einer der Anlassgeber für ein Thema ist, an dem mehrere Leute auf einmal dranhängen und Input geben. :-)

  • Yep, es ist der Wert "gs". Hier könnte man auch ansetzen mit Schwierigkeitsstufen. Die ersten Level langsam, dann schneller.

    Das ist nicht sinnvoll (tm), weil man damit die bekannten Probleme von Floatarithmetik heraufbeschwört: Wenn der Spieler bei X=1 steht und das Monster bei X=2, dann steht das Monster nach zehn Schritten mit gs=0.1 eben nicht bei X=1, sondern ganz ganz ganz knapp daneben, und dann schlägt der Positionsvergleich fehl.
    Natürlich kann man das lösen, indem man nicht auf Gleichheit prüft, sondern die Positionsdifferenz mit einer unteren Schranke vergleicht, aber für das vorliegende Problem ist es einfacher, das Monster einfach seltener zu bewegen.
    Da das Originalspiel keinerlei VSync- oder anderes Timing aufzuweisen scheint (oder ich hab es übersehen), muss das eh bei jeder Portierung bedacht werden.

  • Das könnte man wiederum über die INT-Funktion abfangen. Oder noch besser (ich gehe mal davon aus, dass Loco Basic abs kennt):
    940 IF ABS(gx-x) < 1 AND ABS(gy-y) < 1 THEN GOTO 1610


    Problem erkannt - Problem gebannt! :prof:

  • So habe ich den Kollisionstest in Z80 gelöst.


    Der JP mit dem GOTO als Namen stammt noch aus der Zeit, als ich eine 1:1 Umsetzung machen wollte.


  • ich fand es unspielbar schwierig vor ein paar Monaten... :schande:

    Auch ich hänge noch in Level 1 fest.

    Unspielbar? Nö, Du bist einfach nur alt :P

    Das hängt alles davon ab, welcher Level "Level 1" ist. :D
    In den hier im Thread vorhandenen Versionen lautet Zeile 440:

    Code
    1. 440 ON lev GOSUB 2510, 1650, 1910, 2230, 2510

    Hm, fünf Zeilennummern für vier Level? Fünf Level? Der erste und der fünfte Level identisch?
    Im Heftlisting sieht die Zeile aber so aus:

    Code
    1. 440 ON lev GOSUB 1650, 1910, 2230, 2510

    Mit dieser Änderung ist erst Level 4 der "unspielbar schwierige", und die vier Level entsprechen dann auch den Bildern auf oobdoos Homepage.

  • Kurze Info zum Thema Sprites Alive am CPC :


    Das ist ein vollwertiger Basic Compiler mit eingebauter Unterstützung für kompilierte Sprites. Der Standard Basic Befehlssatz wird hierzu erweitert.


    Ich hab aktuell nicht die Kapazität den ganzen Compiler samt Anweisungen zu lernen. Wir können festhalten dass man ohne 3rd Party Erweiterung keine Sprites am CPC abbilden kann.


    Es gibt in Basic nur den Kompromiss, den Zeichensatz zu ändern, mehrere Zeichen zu einem Pseudo Sprite zu bündeln und dieses per Tag Befehl Pixel genau zu setzen und zu löschen um eine Bewegung zu simulieren.


    Up up and Away wäre mit CPC Basic Bord Mitteln möglich, aber vergleichsweise mit Geschnaufe von hinten quer durchs Auge statt per VIC während der 6502 in der Nase popelt und sich langweilt - trotz Lahm-Kack-V2-Basic.