Anfänger dokumentiert Spielentwicklung: "Grand Sheik"

Es gibt 96 Antworten in diesem Thema, welches 10.189 mal aufgerufen wurde. Der letzte Beitrag (10. Januar 2025 um 15:17) ist von Frank Abbing.

  • Du verwendest Sprite 4, aber setzt in Zeile 6001 Sprite 2 sichtbar. Das Register will eine Bitmaske, Du musste also 2^4 = 16 hineinschreiben.

    Edit: ne, bin grade selbst verwirrt. Du nimmst Sprite 2, dann musst Du in Zeile 6005 V+41 verwenden :S

    Puh, da bin ich ja heilfroh. Ich hab da immer noch so meine Probleme mit dieser Registerordnung, aber dass ich Sprite 2 nutze, habe ich für fast sicher gehalten. V+41 probiere ich mal. Da muss ich nochmal ins Handbuch schauen und klären, was ich da durcheinander gebracht habe. Wäre ja super, wenn es das ist bzw. war. Merci!

  • Ich hab da immer noch so meine Probleme mit dieser Registerordnung

    Ich finde das auch sehr verwirrend, weil da von 0 gezählt wird. Ich glaube, das habe ich mir damals einmal falsch eingeprägt und seitdem komme ich immer durcheinander ^^.

    ────────────────────────────────────────────────────────────
    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.
    ────────────────────────────────────────────────────────────

  • Ich finde das auch sehr verwirrend, weil da von 0 gezählt wird. Ich glaube, das habe ich mir damals einmal falsch eingeprägt und seitdem komme ich immer durcheinander ^^.

    Ja, genau, das bringt mich auch immer wieder durcheinander. Aber Dein Hinweis hat mein Problem definitiv gelöst. Unklar ist mir immer noch, warum der Sprite immer wieder grün angezeigt wurde. Da der C64 keinen permanenten Speicher hat, hätte das nach meinem Verständnis weg sein müssen. Es sei denn, Hellgrün wäre so eine Art Default, was ich mir aber nicht vorstellen kann. Aber sei's drum. Das Sprite-Experiment war erfolgreich. Ein kleiner Meilenstein für das kleine Programm. Ich schreibe hier gleich mal ein Status-Update in den Thread. Danke noch einmal!

  • Wo ich gerade dabei bin, hier mal ein kleines Update zu "Grand Sheik":

    Bisher erreicht:

    • Programmlogik funktioniert einwandfrei
    • Bis dato 23 Fragen im Prototypen
    • Mehr als 30.000 Bytes scheinen noch frei zu sein - also noch viel Platz für Fragen

    Anfängerfallen, in die ich getappt bin:

    • Die Variablennamen hätte ich besser vorher gründlicher überlegt - leider viel improvisiert
    • Der Klassiker: Bei den Zeilennummern hab ich mir ein paar Engpässe gebaut - ist etwas wuselig geworden

    Was jetzt noch ansteht:

    • Einrichtung und Füllung einer würdigen Startseite
    • Prüfung, ob Soundeffekte auf meinem bescheidenen Level drin sind
    • Im Idealfall: Kontrastauswahl auf der Startseite - Hell auf Dunkel oder umgekehrt
    • Befüllung mit weiteren Fragen

    Mein bisheriges Fazit ist rundherum positiv. Es macht Spaß und ich habe jetzt schon viel dazu gelernt oder aufgefrischt. Die technische Umsetzung ist sicherlich für Pros kein Hingucker, aber was mir trotz der reinen Basic-Umsetzung gut gefällt, ist, dass man auch mit diesen einfachen Mitteln eine gewisse Ruhe hineinbringen kann. Ruhe insofern, als Texte und Abstände nicht "springen", Linien bleiben, wo sie sein sollen, und das Auge nicht unnötig gestresst wird. Das finde ich gerade für so eine Text-Nummer sehr wichtig. Ich bin gespannt, ob das Programm beim Laden von deutlich mehr Fragen beim Start sehr lange braucht. Im Moment sind die Reaktionszeiten m.E. ok.

    Ich melde mich wieder, wenn es Neuigkeiten gibt.

  • Sicher, dass es hellgrün war? Ich meine, dass der Default-Wert in $d029 (53248+41) #$f3 ist und somit türkis.

    Jetzt, wo Du es sagst. Es könnte auch Türkis gewesen sein. Gut zu wissen, dass es diesen Default gibt. Danke.

  • Ja, alle Spritefarben werden beim Start mit ansteigenden Werten initialisiert. Vermutlich um gleich mit den Möglichkeiten zu protzen :D

    ────────────────────────────────────────────────────────────
    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.
    ────────────────────────────────────────────────────────────

  • Die Routine ab $E5AA (Bitte melde dich an, um diesen Link zu sehen.) kopiert die Werte von $ECB9 (s. Bitte melde dich an, um diesen Link zu sehen.) nach $D000.

    $D029 hat also definitiv $03 als default nach einem RESET oder sonstiger Initialisierung (z.B. Run/Stop + RESTORE)

  • "Grand Sheik" schreitet unaufhaltsam voran. Technik und Gestaltung sind im Grunde abgeschlossen. Bei aktuell 50 Fragen sind im laufenden Programm noch rund 22.500 Bytes frei. Da ist also noch ordentlich Platz für weitere Fragen.

  • Es ist soweit! Grand Sheik ist in einer Version 1.0 fertiggestellt. Dazu noch ein paar Anmerkungen:

    • Es sind 130 Fragen enthalten.
    • In Basic waren danach noch rund 3.000 Bytes frei.
    • Ich habe doch noch zu einem Compiler gegriffen. Die Geschwindigkeit ist jetzt deutlich höher als im reinen Basic. Der Compiler meiner Wahl war Blitz, was man im Rest-Code auch sehen kann.
    • Ich habe unzählige Durchläufe gemacht, um Fehler, insbesondere auch inhaltlicher Art, zu finden. Wenn dennoch Fehler auffallen, bin ich für jeden Hinweis dankbar.
    • Getestet habe ich auf einem C64 Mini und in Vice (3.6.1).
    • Festgestellt habe ich, dass das Programm weder gut läuft noch gut aussieht, wenn man es aus einer Schriftumstellung (Kleinbuchstaben) heraus ausruft. Bin mir gerade nicht sicher, ob man das im Code abfangen kann oder gar sollte. Wäre so ein Thema für eine Version 1.1. Auf einem frisch gestarteten C64 sollte es hingegen problemlos nutzbar sein.
    • Auf Hintergrundmusik und Soundeffekte habe ich verzichtet, da ich mich dafür noch tiefer in die Materie einlesen müsste. Das Spiel hätte dann nicht mehr in diesem Jahr oder gar Jahrzehnt fertig werden können. Ich habe auch keine Vorstellung, ob die restlichen Ressourcen dafür gereicht hätten.
    • Ich werde das kleine Programm nur hier im Forum anbieten. Ich plane, aus meinem YT-Kanal und aus meiner persönlichen L&H-Website hierauf zu verlinken.
    • Es klingt vielleicht albern, aber ich sage es lieber doch: Ich habe größtmögliche Sorgfalt walten lassen, aber technische Fehler sind nicht ausgeschlossen. Die Nutzung des Programms erfolgt also auf eigene Gefahr. Auch übernehme ich keine Kosten für Therapiesitzungen oder sonstige Folgen, sollte jemand an den Fragen verzweifeln oder aus der Wut heraus eine Tortenschlacht oder gar eine Schienbeintrittorgie anzetteln.
    • Ich wünsche allen C64- und L&H-Freunden viel Spaß mit diesem kleinen Quiz. Ich drücke die Daumen, dass es möglichst viele in den Rang des Grand Sheiks schaffen!

    So sieht der Titelscreen in den beiden Kontrastoptionen aus:

    Bitte melde dich an, um diesen Anhang zu sehen.


    Bitte melde dich an, um diesen Anhang zu sehen.

    Und hier ist das Programm: Bitte melde dich an, um diesen Anhang zu sehen.

  • Sehr schönes gemachtes Quiz-Spiel. :thumbsup:

    Leider habe ich keine Ahnung von Stan & Ollie und muss immer mit meinem Partner in die Berge fahren.

    Na, ja. So eine Bergtour Ist ja auch nicht schlecht. Da kommt man wenigstens mal an die frische Luft.

    Festgestellt habe ich, dass das Programm weder gut läuft noch gut aussieht, wenn man es aus einer Schriftumstellung (Kleinbuchstaben) heraus ausruft.

    Da sollte doch ein PRINT CHR$(142) reichen.

  • Sieht echt gut aus SGT22 :smile:

    Ich werde das kleine Programm nur hier im Forum anbieten. Ich plane, aus meinem YT-Kanal und aus meiner persönlichen L&H-Website hierauf zu verlinken.

    Kannst du einen Link auf deinen YT-Kanal und deine Webseite hier reinstellen? Würd mich sehr interessieren, was du dazu erzählst.

    Der Compiler meiner Wahl war Blitz, was man im Rest-Code auch sehen kann.

    Denkst du daran, den Basic-Code auch zu veröffentlichen? Oder möchtest du das eben wegen Schummelgefahr nicht?

    (wie auch immer deine Antwort ausfällt: es ist ok)

    Ich gehöre leider ebenfalls zu der Fraktion, die nur mit der Frau in die Berge darf :biggrin:

    Die Gestaltung ist aber wirklich top, danke!

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Danke, das freut mich. :)

    Mein Kanal ist sehr individuell, speziell, retro ;) -> Bitte melde dich an, um diesen Link zu sehen.

    Die Website könnte helfen, eines Tages Grand Sheik zu werden :D -> Bitte melde dich an, um diesen Link zu sehen.

    Was den Basic-Code angeht, denke ich mal drüber nach. Was ich an der jetzigen Lösung gut finde, ist, dass niemand mein Code-Chaos sehen kann. ;)

  • Erst einmal: Herzlichen Glückwunsch zum Release!

    Bitte melde dich an, um diesen Anhang zu sehen.

    Ich darf natürlich mit Partnerin in die Berge.

    Auf Hintergrundmusik und Soundeffekte habe ich verzichtet, da ich mich dafür noch tiefer in die Materie einlesen müsste.

    Das würde sich evtl. für eine spätere Version lohnen, weil eine zum Thema passende Musik das Flair zusätzlich positiv beeinflussen könnte. Über einen eigenen Font würde ich an deiner Stelle auch noch nachdenken. Es gibt ja auch schon viele vorhandene Zierfonts, falls man sich das Zeichnen selbst nicht zutraut oder zeitlich scheut. Vielleicht findet man da ja was.

    Was mir noch auffiel: Ich fände es, glaube ich, besser, wenn bei Auswahl einer Antwort diese erst hervorgehoben würde und in einem weiteren Schritt (Spannungs-Aufbau) dann aufgelöst wird (vergleichbar mit heutigen Spielshows) – also bestätigt (blink-blink und Applaus) oder als falsch markiert ("Zonk"). Und erst danach zur nächsten Frage. Das würde auch die Spielzeit etwas erhöhen.

    Auf jeden Fall könnte man nach der jeweiligen Antwort etwas mehr blinky-blinky machen (das ganze mehr feiern) und nicht sofort zur nächsten Frage übergehen.

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • Was den Basic-Code angeht, denke ich mal drüber nach. Was ich an der jetzigen Lösung gut finde, ist, dass niemand mein Code-Chaos sehen kann. ;)

    Versteh ich. Auf der einen Seite sag ich immer, niemand muss sich für Code schämen, vor Allem wenn er was fertig bringt.

    Aber der Grat zwischen konstruktiver Kritik und Klugscheisserei ist halt auch oft ein schmaler :biggrin:

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Ich habe es nochmal versucht. Diesmal war ich so schlecht, dass ich in einer Tierklinik lande.

    Und dann habe ich auch noch einen Fehler entdeckt. :D

    Bitte melde dich an, um diesen Anhang zu sehen.

  • Ich habe es nochmal versucht. Diesmal war ich so schlecht, dass ich in einer Tierklinik lande.

    Und dann habe ich auch noch einen Fehler entdeckt. :D

    Bitte melde dich an, um diesen Anhang zu sehen.

    Oh, danke für den Hinweis! Hab auch noch einen gefunden. Kommt auf die Liste fürs nächste Update.

  • Hat hier eigentlich jemand etwas mehr Erfahrung mit der Random-Funktion? Ist die zu 100% sauber im C64? Ich hab manchmal den Eindruck, dass einige Fragen - gerade in den ersten Runden - zu oft und zu schnell wiederkehren. Dann denke ich immer, ich könnte da was falsch gemacht haben. Erst nach einigen Runden fühlt sich das so an, dass besser "durchgemischt" wird. Irgendwie komisch.

  • In Bitte melde dich an, um diesen Link zu sehen. aus dem C64 Wiki stehen ein paar interessante Sachen.

    Ich glaube es hilft schon, wenn Du vor der Zufallszahlenermittlung x=rnd(-ti) aufrufst, um die Ergebnisse besser "durchzumischen".

  • Ich bin sehr beeindruckt über das schnelle Ergebnis.

    Ist eine solide Sache geworden. Die Fragen sind recht knifflig. Ich kenne zwar so ziemlich alle Filme, aber das allein reicht dafür noch nicht.

    lass uns im Bitte melde dich an, um diesen Link zu sehen. treffen