IF-Forum

» IF-Forum - Autorencafé - Schreiben! - PunyInform
AntwortenNeues ThemaNeue Umfrage

PunyInform

Geschrieben um 19:07 am 13.11.2020 | Zitat | Editieren | Löschen
Hannes
Avatar
Globaler Moderator
Prof Gumby
Beiträge: 475

Hat sich damit schonmal jemand auseinandergesetzt? Klingt vom Ansatz her sehr gut, gefällt mir besser als diese kompletten „Retro“-Entwicklungssysteme (DAAD und Konsorten). Wie ist es so zum Programmieren? Wie sieht es mit Übersetzbarkeit aus?

https://github.com/johanberntsson/PunyInform

Meine ersten Eindrücke:

  • Programmiert sich sehr ähnlich wie mit der Standard-Inform-6-Bibliothek

  • Sobald man komplexere Manipulationen machen möchte, gibt es grundlegende, aber nachvollziehbare Unterschiede

  • Cheap Scenery: geiler Mechanismus für irrelevante Schmuckobjekte :D

  • Absolut keine impliziten Aktionen werden standardmäßig ausgeführt. Will ein Spieler vom Wohnzimmer ins Schlafzimmer gehen, sitzt aber noch auf dem Sofa, wird ihm gnadenlos gesagt, er solle gefälligst erst vom Sofa aufstehen. Solche Komfortfunktionen muss man selbst programmieren.

  • Die herausgenommenen Verben sind tatsächlich eher sinnlos, also kein großer Verlust. Bei wirklichem Bedarf kann man sie ja wieder einbauen.

  • Einige Mechaniken hätte man meiner Meinung nach verlustlos auch noch streichen können. Wer braucht heute noch Dunkelheit oder ein Inventarlimit?

  • Library-Messages können relativ einfach überschrieben werden, aber damit wäre eine Übersetzung ja nicht getan…

Geschrieben um 14:26 am 04.10.2021 | Zitat | Editieren | Löschen
Mikawa
Avatar
Mitglied
Dr Gumby
Beiträge: 311

Das würde dann erfordern, sich mal ausführlich mit der Library auseinanderzusetzen und zu überlegen, was man weglassen kann.

Nur durch das Weglassen lässt sich eine deutliche Reduzierung der Speicherverwendung erreichen, was ja das Ziel von PunyInform ist, um die Spiele auch auf alter 8-Bit Hardware zum Laufen zu bekommen.

Hmm, aus meiner Sicht:

  • ae / oe usw. Ersetzungen unabdingbar

  • abschneiden von Wortenden (-en, -e, -es usw.) unabdingbar

wo man aber ansetzen könnte:

  • Infinitvform ("den stein nehmen") - muss nicht sein

  • Die vielen Verb-Synonyme - muss auch nicht sein, das kann der Autor, sofern sein Spiel entsprechend "klein" ist auch selbst ergänzen, genauso wie das automatische Aufstehen usw. was ja sowieso schon gekürzt wurde

Geschrieben um 14:11 am 07.10.2021 | Zitat | Editieren | Löschen
Mikawa
Avatar
Mitglied
Dr Gumby
Beiträge: 311

Was ich bisher herausgefunden habe:

Wenn .z3 das Ziel ist, kann vermutlich die Statusanzeige nicht geändert werden. Jegliches Jonglieren mit dem Parser ist wegen der fehlenden @tokenize routine unmöglich, also kein Abschneiden von Endungen, keine Textersetzungen von ä und ö, keine Manipulation der Eingabe. Das macht es für den Autor sehr schwer, denn niemand möchte 4 verschiedene Adjektiv-Formen händisch anlegen.

Bei .z5 dürfte eigentlich alles, was Deform macht, auch für PunyInform umsetzbar sein. Wie dann allerdings die Dateigröße im Vergleich zur regulären Lib aussieht und ob dann tatsächlich soviel Speicher gespart werden kann, ist fraglich.

Geschrieben um 22:51 am 11.10.2021 | Zitat | Editieren | Löschen
Mikawa
Avatar
Mitglied
Dr Gumby
Beiträge: 311

Ok, ist dann wohl doch eher ein Monolog :-)

Nur zur Info: die "cheap" scenery gibt's schon lange.

"scenic.t" heißt die Erweiterung für die Standard-Lib.

Geschrieben um 17:58 am 12.10.2021 | Zitat | Editieren | Löschen
Hannes
Avatar
Globaler Moderator
Prof Gumby
Beiträge: 475

Mikawa:

Wenn .z3 das Ziel ist, kann vermutlich die Statusanzeige nicht geändert werden. Jegliches Jonglieren mit dem Parser ist wegen der fehlenden @tokenize routine unmöglich, also kein Abschneiden von Endungen, keine Textersetzungen von ä und ö, keine Manipulation der Eingabe. Das macht es für den Autor sehr schwer, denn niemand möchte 4 verschiedene Adjektiv-Formen händisch anlegen.

Bei .z5 dürfte eigentlich alles, was Deform macht, auch für PunyInform umsetzbar sein. Wie dann allerdings die Dateigröße im Vergleich zur regulären Lib aussieht und ob dann tatsächlich soviel Speicher gespart werden kann, ist fraglich.

Das deckt sich mit den Aussagen/Interpretationen unserer französischen Kollegen. Ich sehe es so: Selbst, wenn man ein Spiel auf Deutsch doch nur auf Z5 bringt, könnte man eine englische Version dann in Z3 herausbringen. Bei "kleineren" Plattformen würde ich ohnehin mit Zeichensatzproblemen usw. rechnen.

Zitat:

Ok, ist dann wohl doch eher ein Monolog :-)

Na ja, deine erste Antwort ließ beinahe ein volles Jahr auf sich warten – insofern ist Kritik jetzt glaube ich nicht angebracht :P

Geschrieben um 16:19 am 13.10.2021 | Zitat | Editieren | Löschen
proc
Avatar
Mitglied
Retired Gumby
Beiträge: 653

Ich will jetzt nicht nörgeln, aber mir entgehen die Vorteile, soweit es jetzt nur um cheap scenery oder einige irrelevante Verben geht. Auf Github wird dargestellt, dass die directions anders behandelt werden oder die library messages anders angepasst werden können, öffentliche Beiträge darüber betonen die "smaller, faster library", was heute keine Rolle mehr spielt. Das Coding scheint weitgehend identisch zu I6 zu sein. Daher eine simple Verständnisfrage: Warum sollte man sich mit PunyInform auseinandersetzen?

-----
Geschrieben um 19:56 am 13.10.2021 | Zitat | Editieren | Löschen
Hannes
Avatar
Globaler Moderator
Prof Gumby
Beiträge: 475

Zitat:

öffentliche Beiträge darüber betonen die "smaller, faster library", was heute keine Rolle mehr spielt.

Aus deiner Sicht, ja. Aber es gibt seltsamerweise mittlerweile gefühlt mehr Spieler, die gerne Textadventures auf einem C64-Emulator spielen, als mit einem Z-Code-Interpreter.

Geschrieben um 21:20 am 13.10.2021 | Zitat | Editieren | Löschen
proc
Avatar
Mitglied
Retired Gumby
Beiträge: 653

Puny geht da genauso wie Inform-Z5 über Ozmoo Online

http://microheaven.com/ozmooonline/

Wenn es um das Retrofeeling geht, könnte Puny seine Stärken haben, ich kenne das so nicht. Aber why not.

-----
Geschrieben um 22:01 am 13.10.2021 | Zitat | Editieren | Löschen
Hannes
Avatar
Globaler Moderator
Prof Gumby
Beiträge: 475

Da machst du es dir zu einfach. Wenn ich Die schwarze Lilie (Z5) entsprechend zu verpacken versuche, geht das erstmal nicht mit dem normalen Diskettenformat - das Spiel ist bereits zu groß. Verwende ich ein Spezialimage, dann läuft es. Dann verschluckt er alle Umlaute. Also nochmal bauen mit deutschem Font. Juhu, einen Schritt weiter! Allerdings bleiben die Ladezeiten inakzeptabel. Bis sich nach dem Introtext die erste Raumbeschreibung aufbaut, sind mal locker 30 Sekunden vergangen. Testbefehl SCHAU MICH AN: 1,5 Minuten bis zur Antwort!

Geschrieben um 22:48 am 13.10.2021 | Zitat | Editieren | Löschen
proc
Avatar
Mitglied
Retired Gumby
Beiträge: 653

Wow, ein geradezu kulturhistorischer Thread. Gibt es für Retro-Diskimages überhaupt ein nennenswertes Publikum oder Apps? Ich tickere ja auch ab und zu alte Diskimages durch, stamme aber aus den 80ern und habe das Sitzfleisch, die technischen Probleme bis zum Start der Spiele zu lösen. Das macht doch heute keiner mehr...

-----
Geschrieben um 06:45 am 14.10.2021 | Zitat | Editieren | Löschen
Hannes
Avatar
Globaler Moderator
Prof Gumby
Beiträge: 475

Einen C64/Spectrum/...-Emulator haben um mehrere Größenordnungen mehr Leute installiert als einen Z/Glulx/TADS-Interpreter.

Geschrieben um 19:13 am 15.10.2021 | Zitat | Editieren | Löschen
Mikawa
Avatar
Mitglied
Dr Gumby
Beiträge: 311

Ich wollte mir eigentlich einen ZX Spectrum next besorgen, aber die sind derzeit ausverkauft :-(

Geschrieben um 08:52 am 07.06.2022 | Zitat | Editieren | Löschen
Martin
Avatar
Mitglied
Prof Gumby
Beiträge: 591

Nachdem in einem anderen Thread diskutiert wurde, ob eine deutsche Übersetzung von PunyInform wünschenswert ist, habe ich mir die Argumente hier noch einmal durchgelesen.

Mikawa: Jegliches Jonglieren mit dem Parser ist wegen der fehlenden @tokenize routine unmöglich, also kein Abschneiden von Endungen, keine Textersetzungen von ä und ö, keine Manipulation der Eingabe. Das macht es für den Autor sehr schwer, denn niemand möchte 4 verschiedene Adjektiv-Formen händisch anlegen.

Das ist ein guter Punkt, den ich nicht bedacht hatte, als ich mich in der anderen Diskussion optimistisch gezeigt hatte, was eine Übersetzung angeht.

Unmöglich ist das aber natürlich nicht. ;)

Ich habe einmal ein kleines Testprogramm für die Version 3 der Z-Maschine geschrieben, das nichts anderes macht, als die Eingabe zu zerlegen und zu analysieren. Mit etwas Nacharbeit kann man die Version 3 schon dazu bringen, Umlaute zu verstehen und Adjektivendungen zu ignorieren.

Weil man natürlich das, was eigentlich der Interpreter machen soll, nachprgrammieren muss, wird es auf dem C64 aber immer noch langsam sein. Der Code dafür plus Hilfsfelder ist in der Spieldatei weniger als ein Kilobyte.

Quelltext für Inform 6.

Geschrieben um 20:29 am 09.06.2022 | Zitat | Editieren | Löschen
Olaf
Mitglied
Pupil Gumby
Beiträge: 19

Martin:

Mikawa: Jegliches Jonglieren mit dem Parser ist wegen der fehlenden @tokenize routine unmöglich, also kein Abschneiden von Endungen, keine Textersetzungen von ä und ö, keine Manipulation der Eingabe. Das macht es für den Autor sehr schwer, denn niemand möchte 4 verschiedene Adjektiv-Formen händisch anlegen.

Das ist ein guter Punkt, den ich nicht bedacht hatte, als ich mich in der anderen Diskussion optimistisch gezeigt hatte, was eine Übersetzung angeht.

Meinem Gefühl nach ist bei PunyInform gerade mehr Bewegung als bei jedem anderen IF Framework. Vllt kann man bei den Verantwortlichen ja mal Fragen, ob die nötigen Routinen da irgendwann mit reinkommen (könnten)? (Ich könnte das auch übernehmen, würde damit aber vermutlich nur ein Stille-Post-Spiel anfangen.) Wenn ich das richtig sehe sind die aus Schweden, die haben da doch selbst jede Menge Sonderzeichen... ;)

-----
Bearbeitet von Olaf um 20:31 am 09.06.2022
Geschrieben um 09:17 am 10.06.2022 | Zitat | Editieren | Löschen
Martin
Avatar
Mitglied
Prof Gumby
Beiträge: 591

Ach, ich weiß nicht. Der Code ist mehr so ein proof of concept, um zu zeigen, dass eine Nachbehandlung der Eingabe auch ohne @tokenise schon irgendwie ginge. PunyInform ist aber für Anwendungen auf 8-Bit-Computern gedacht und ich kann mir vorstellen, dass der Code auf einen C64 oder Spektrum langsam ist.

(Ich habe mittlerweile eine durchgängige Intervallschachtelung umgesetzt. Beide Varianten laufen auf dem PC mit einem Wortschatz von etwa 500 Wörtern so schnell, dass man es nicht merkt. Erst wenn ich den Satz hunderttausendmal untersuche, vergeht eine Sekunde. Ich weiß aber nicht, wie man die Zeit, die eine Anweisung braucht, auf der Z-Maschine am besten misst, damit man Code optimieren kann. Vielleicht muss ich doch Ozmoo auf dem C64-Emulator verwenden, wo man dann langsame Operationen mit der Uhr stoppen kann.)

Aber selbst, wenn man Umlaute und Endungen erkennen kann, hat z3 immer noch viele Einschränkungen: Wörter können nur sechs Zeichen lang sein und man kann nur bis zu vier Wörter angeben, wenn man keinen parse_name verwendet.

Mit PunyInform selbst habe ich mich noch nicht weiter befasst.

AntwortenNeues ThemaNeue Umfrage
Powered by Spam Board SVN © 2007 - 2021
Impressum / Datenschutz