Ob es sich lohnen würde, die Programme, die Simons' Basic und Supergraphic64 brauchen, nach Basic V2 zu übersetzen, so daß das alles einfach so laufen würde?
Posts by next_i
-
-
-
Jetzt hab' ich dieses 1BitDragon Tracker tool gefunden, und ihr werdet beim ersten Anblick sicher denken, das ist komplett nur als Spielzeug gedacht. Vielleicht ist es auch so. Aber kein Witz: das Ding ist SO simpel konstruiert dass ich damit arbeiten kann.
Simpel vielleicht für den Anwender. Aber das ist ja ein hochkomplexes und hochmodernes Programm, das ich in dieser Form noch nie gesehen hab'. Musikmachen scheint damit einfach zu sein. Weil das Programm einem die Komplexität abnimmt. Die ist dann also im Programm.
Gängige Tracker, insbesondere SID-Tracker, sind davon weit, weit entfernt. Nichtmal Renoise kann sowas.
-
Menno.
(Sorry, ich würde gern meinen Beitrag löschen, kann ich aber nicht.)
-
-
Übrigens: In meinem Lieblingsbuch über Perl "Laura Lemay: Perl in 21 Tagen" ist so ein ähnliches Programm als kleine Aufgabe zu schreiben. Es ist aber nicht mit Zahlen, und auch nicht für die Schule oder so sinnvoll, aber ich fand's trotzdem ganz witzig. Anbei ein C64-".prg" davon, das ich gerade mal zusammengeschraubt hab'.
-
-
Übrigens: In Perl hab' ich's mal wieder in einer Zeile geschafft, so sieht's bei mir aus.
-
Es wirkt, als hätte man es sich damals absichtlich extra schwer gemacht - als wäre es ein sportlicher Ehrgeiz gewesen, Programme nicht möglichst gut, sondern möglichst kurz zu schreiben.
In der Perl-Szene nennt man das "Golf".
-
Die Krieger aus Barbarian sind gar keine Sprites?!
Ich weiß nur, daß es Barbarian auch auf dem ZX Spectrum gab, und der hatte gar keine Sprites. Insofern muß es schon möglich sein, sowas auch ohne Sprites zu machen. Wie? Keine Ahnung. In Assembler, wahrscheinlich.
-
Na, lieber im Spiel als im Leben.
-
Sorry, aber wenn man jemanden, der sich mit Github nicht auskennt schreibt, er solle "einfach ein Issue aufmachen", kann ich nur mit dem Kopf schütteln. Ich wüsste nicht einmal, was das überhaupt ist.
Die Funktion ist dazu da, einem anderen Programmierer mitzuteilen, daß mit seinem Programm was nicht in Ordnung ist, daß es damit also ein "issue" gibt: "I'm having an issue with your program". Das ist sozusagen eine Beschwerde an den Programmierer.
Dann kann man das Problem mit dem Programm dann da, ähnlich wie in einem Forum, diskutieren.
Es ist eben nicht so optimal, diese Funktion zu nutzen, um mit dem Programmierer wegen was anderem in Kontakt zu treten.
Zumal die Issues auch öffentlich angezeigt werden, und wenn ein Projekt da viele hat, spricht es nicht gerade für es, oder für den Programmierer.
-
Bis jetzt brauchte ich kein Github und wenn ich was veröffentlichen möchte mach ichs auf meiner HP 😌
Ist einfacher und streßfreier - zumindest für mich 🤷♂️
Wie gesagt, das Veröffentlichen und Verwalten ist auf Github sehr einfach, und funktioniert, wie es soll.
Das soll Dich aber nicht auf die Plattform locken. Sie gehört Microsoft, das ist auch noch zu bedenken.
-
Ja, Github ist schon speziell. Man kann z.B. auch andere Entwickler nicht ohne weiteres per PN kontaktieren, und wenn ich Projektbeschreibungen schreiben will, muß ich jedes Mal nachgucken wie das überhaupt geht.
Und für Leute, die nicht selbst auf der Plattform sind, ist das mit dem grünen "Code"-Button überhaupt nicht intuitiv, und das mit dem "Klonen" schonmal gar nicht.
Das ist echt alles ganz toll.
Aber das Erstellen und die Verwaltung eigener Projekten funktioniert halt schon sehr gut, das muß man Github lassen.
-
Nur am Rande (bzgl. des Spiels ist es OT): "Reisende im Wind" - Das erinnert mich an einen Youtube-Kanal, den ich regelmäßig schaue, da sind sie auf ihrem Segelboot unterwegs. Bei diesem Video war ich damals eingestiegen.
-
Bin gerade auf einem Retro Treffen und habe es mir mal geladen. Geht da schon etwas oder noch nichts?
Jedenfalls hat er schnell geantwortet der Code
Ja, sorry, daß man nur die Anfangsbuchstaben eingibt. Das war mir aus "The Hobbit" oder "Dallas Quest" so geläufig, daß man das so macht, daß ich gar nicht mehr daran gedacht hab', "north" usw. als volle Wörter für die Eingabe zu implementieren. Könnte man natürlich auch noch machen.
Aber generell natürlich vielen Dank für Dein Interesse!
Wenn man die Matrix um einige weitere Spalten erweitern würde, hätte man auch noch "NE", "NW", "SE", "SW", "UP" und "DOWN", und hätte dann also die volle "Bewegungsfreiheit".
Wie gesagt, hab' ich viele Jahre lang gerätselt, wie man das macht, und fand' das auch immer am interessantesten an Adventuren. Deshalb bin ich ein bißchen "stolz", daß eines der "großen Probleme des Lebens" damit endlich gelöst ist.
Deshalb wollte ich das mal vorstellen, vielleicht auch für das Projekt des TE. Aber wie Lynx oben schon schrieb: Wer schonmal ein etwas größeres Adventure geschrieben hat, kennt das natürlich (seit ewigen Zeiten).
-
Hat keiner Lust, meinen Code oben (".prg"-Datei) mal auszuprobieren? Bis jetzt scheine nur ich selbst meine Datei heruntergeladen zu haben.
Sonst habt ihr doch eigentlich immer Lust, C64-Beispiele auszuprobieren.
-
Hab' gerade nochmal das Bewegungssystem für Adventures in C64-Basic implementiert (das "neu" für mich ist) (Hintergrund).
Eine ".prg"-Datei ist unten:
Code- 10 dim m(5,4)
- 20 dim d$(4)
- 30 dim d2$(4)
- 40 d$(1) = "north": d$(2) = "east": d$(3) = "south": d$(4) = "west"
- 50 d2$(1) = "n": d2$(2) = "e": d2$(3) = "s": d2$(4) = "w"
- 60 room = 1
- 70 print chr$(147): rem cls
- 80 gosub 3000: rem setup data
- 90 rem main loop
- 100 print "you are in room" + str$(room) + "."
- 110 gosub 2000: rem print location
- 120 input "what now"; a$
- 130 gosub 1000: rem process input
- 140 print
- 150 goto 90
- 1000 rem process input
- 1010 x = 0
- 1020 l = 0
- 1030 for i = 1 to 4
- 1040 if d2$(i) = a$ then l = i: x = m(room, i): i = 4
- 1050 next i
- 1060 if x = 0 then print "you can't go " + d$(l) + ".": return
- 1070 print "you go " + d$(l) + "."
- 1080 room = x
- 1090 return
- 2000 rem print location
- 2000 x = 1
- 2010 for i = 1 to 4
- 2020 if m(room,i) > 0 then x = i
- 2030 next i
- 2040 s$ = "visible exits are:"
- 2050 for i = 1 to 4
- 2060 if m(room,i) > 0 then s$ = s$ + d$(i)
- 2070 if m(room,i) > 0 and x > i then s$ = s$ + ", "
- 2080 if m(room,i) > 0 and x = i then s$ = s$ + "."
- 2090 next i
- 2100 print s$
- 2110 return
- 3000 rem setup data
- 3010 for i = 1 to 5
- 3020 for u = 1 to 4
- 3030 read a
- 3040 m(i,u) = a
- 3050 next u
- 3060 next i
- 3070 return
- 3100 data 2, 3, 0, 0
- 3101 data 5, 0, 1, 0
- 3102 data 0, 0, 4, 1
- 3103 data 3, 0, 0, 0
- 3104 data 0, 0, 2, 0
-
Wenn man ein neues Text-Adventure für den C64 schreiben wollte, dann sollte man besser eine moderne, komfortablere Programmiersprache einsetzen ...
Klingt irgendwie nach einem ChatGPT-Text.
Sehe jetzt nicht den Mehrwert des Postings. C ist nicht leicht, Daten für Adventure-Räume oder Gegenstände in C zu organisieren, erst recht. Wat willste da verwenden, Zeiger auf Strukturen? Mit sowas kann ein Basic-Programmierer rein gar nichts anfangen.
P.S.: Ich hab' mal das sog. "Tenliner Cave Adventure" (von Einar Saukas) für den ZX81 nach C übersetzt. In der Atari-Version ging es mit CC65, dürfte auch für C64 gehen. Also im Prinzip wüßte ich schon, wie das (im Minimalbeispiel) geht (und ich hab' auch das Problem der Bewegung gelöst), und C hätte auch gegenüber Basic den Geschwindigkeitsvorteil. Das macht also schon Sinn. Nur das Posting, das darauf hinweist, hatte irgendwie keinen Wissensmehrwert. Daß es im Prinzip C gibt, ist ja wohl bekannt.
-
Oooh, "Magic Carpet 2" - Das muß da auch noch unbedingt mit rein.