if-de :: Forum Foren-Übersicht
Autor Nachricht
<  Was ist mit Z in Gargoyle/Frotz/Bocfel los?
ChristianB
BeitragVerfasst am: So, 25 Aug 2013 - 16:43  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg

Ich bin neulich auf ein seltsames Phänomen gestoßen: Mit Gargoyle 2011.1 Linux/Windows funktioniert in keinem Z-Code-Spiel, das mit deform oder GerX compiliert wurde, das Kommando Z für WARTE.

Das Wort Z wird nicht verstanden, so als ob es nicht im Wörterbuch vorhanden sei. Gibt man jedoch das Z mit einem Leerzeichen davor ein, funktioniert der Befehl ganz normal, d.h. "Die Zeit verstreicht." Es existiert also sehr wohl der Wörterbucheintrag für Z.

Kann jemand dieses Verhalten bestätigen? Ist das vielleicht ein Fehler in Bocfel (Wirklich? Bockfell? Frotzbockfell?)? Mit anderen Interpretern (Windows Frotz und Parchment) habe ich das nicht beobachten können.

Was ist da bloß los? Ohne GerX oder deform wird Z problemlos verstanden.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Martin
BeitragVerfasst am: So, 25 Aug 2013 - 22:10  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 25.08.2002
Beiträge: 677
Wohnort: München

Christian hat folgendes geschrieben:
Was ist da bloß los?

Aaaargh! The road to hell is paved with good intentions. (And bad interpreters.)

Christian hat folgendes geschrieben:
Ohne GerX oder deform wird Z problemlos verstanden.

Ich habe das von Dir beschriebene Verhalten mit einer Konsolen-Version ohne Glk nachvollziehen können. Allerdings liegt der Fehler nicht daran, dass deform/GerX eingebunden wurde, sondern dass die Spiele, die funktionieren, auf Englisch sind. Mit einem Minimalbeispiel konnte ich das Nichtverstehen von 'z' nämlich auch reproduzieren.

Um alte Infocom-Spiele zugänglich zu machen, werden nämlich die mittlerweise üblichen Abkürzungen 'z', 'x' und 'g' stillschweigend in 'wait', 'examine' und 'again' umgewandelt. Man kann dieses Verhalten mit der Option -x beim Programmaufruf aber unterbinden.

Wie man dem Gargoyle unter Windows sagt, dass diese Abkürzungen nicht ersetzt werden sollen, weiß ich nicht. Vielleicht kann man da was in der garglk.ini konfigurieren.

Frotz geht hier übrigens den umgekehrten Weg: Man kann diese Abkürzungen mit -x einschalten. Wesentlich besser, finde ich. (Außerdem: Wieso ersetzt Bocfel 'z' nur, wenn es direkt an erster Stelle steht? Eine durchaus übliche Eingabe wie "z. z. z" oder "hit troll. g. g" wird mit dieser Ersetzung jedenfalls nicht richtig verstanden. Dafür allerdings "put z, o and g on scrabble board".)

Mit gefällt auch, wie zugänglich der Interpreter ist. Alle wichtigen Informationen liegen offen vor einem - wenn man sich gerne durch C-Quelltexte wühlt.

Nachtrag: Es gibt eine man page, die man nach dem Installieren unter Linux auch mit "man bocfel" aufrufen kann. (Ich fände es trotzdem gut, wenn nicht erkannte Optionen eine Fehlermeldung verursachen würden und man sich mit --help oder so eine Liste der verfügbaren Optionen anzeigen lassen könnte.)

Dort heißt es dann:

man cocfel hat folgendes geschrieben:
In the unlikely event that a game requires one of these letters [x, g, z. Anm. der Red.] for its own use, apart from an abbreviation, these abbreviations can be turned off with -x.

Jumping to conclusions nennt man das wohl: So wie das umgesetzt ist, wird 'z' einfach so in 'wait' umgewandelt, auch wenn es das Wort 'wait' im Vokabular des Spiels gar nicht gibt. Und damit wird dann eine gültige Vokabel annulliert. (Das macht Frotz allerdings auch, wenn die Abkürzungen eingeschaltet sind. Und bei Frotz hilft auch kein Leerzeichen wor dem Wort.)

Ich werde einmal ein Ticket aufmachen und vorschlagen, dass die Abkürzungen nur dann ersetzt werden sollen, wenn es die Ersetzung auch im Wörterbuch gibt.
_________________
Every silver lining has a cloud.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ChristianB
BeitragVerfasst am: Mo, 26 Aug 2013 - 13:01  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg

Martin hat folgendes geschrieben:
Um alte Infocom-Spiele zugänglich zu machen, werden nämlich die mittlerweise üblichen Abkürzungen 'z', 'x' und 'g' stillschweigend in 'wait', 'examine' und 'again' umgewandelt. Man kann dieses Verhalten mit der Option -x beim Programmaufruf aber unterbinden.

Aha! Das ist ja interessant, danke für die Erklärung. Vielleicht sollten wir dann die Vokabeln 'wait', 'examine' und 'again' -- zumindest zeitweise, bis sich da was geändert hat -- wieder ins Lexikon der deutschen Lib mit aufnehmen, um einer derartigen Interpreter-Praxis zu begegnen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Martin
BeitragVerfasst am: Mo, 26 Aug 2013 - 14:27  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 25.08.2002
Beiträge: 677
Wohnort: München

Christian hat folgendes geschrieben:
Vielleicht sollten wir dann die Vokabeln 'wait', 'examine' und 'again' -- zumindest zeitweise, bis sich da was geändert hat -- wieder ins Lexikon der deutschen Lib mit aufnehmen, um einer derartigen Interpreter-Praxis zu begegnen?

Hmmm. Eigentlich ist für mich die Sache klar: Der Fehler liegt auf Seiten des Interpreters und dort sollte er auch behoben werden.

Andererseits ist Gargoyle ein beliebter Interpreter, der viele verschiedene Formate abspielen kann. Ich selbst nutze ihn auch gerne. (Allerdings nicht so gerne, dass ich ihn alle naslang aktualisieren würde: In meinem Z-Maschinenraum läuft noch Frotz.)

Dass 'z' in einem weit verbreiteten Interpreter nicht geht, fällt eh auf GerX zurück, egal, wo der Fehler nun liegt. Man kann zwar in der garglk.ini bzw. .garglkrc "terp frotz" und in .bocfelrc "disable_abbreviations" setzen, aber das ist für die Klick-Kundschaft nicht sehr bedienerfreundlich.

Da es kein Aufwand ist und man eigentlich auch nichts kaputt macht, könnte man also 'examine' und 'wait' als zusätzliche Verben definieren. Die Vokabel 'again' kennt GerX schon. Trotzdem ärgerlich, dass man kaputten Interpretern hinterherprogrammieren muss.
_________________
Every silver lining has a cloud.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ChristianB
BeitragVerfasst am: Mo, 26 Aug 2013 - 15:22  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg

Martin hat folgendes geschrieben:
Trotzdem ärgerlich, dass man kaputten Interpretern hinterherprogrammieren muss.

Stimmt. In diesem speziellen Fall müssen in GerX nur drei Zeilen geändert werden, das nehme ich dann mal in Kauf.

Im Rahmen der Textlastig-Podcasts hat sich jedoch herausgestellt, dass Spatterlight (iOS) Textboxen und wahrscheinlich auch nichtproportionalen Text überhaupt nicht ausgibt, sondern dem Spieler eine Fehlermeldung präsentiert. Das fällt dann alles auf die armen Textadventure-Autoren zurück, klar.

Edit 28.08.2013:

Martin hat folgendes geschrieben:
Ich werde einmal ein Ticket aufmachen und vorschlagen, dass die Abkürzungen nur dann ersetzt werden sollen, wenn es die Ersetzung auch im Wörterbuch gibt.

Das klingt nach einer sehr guten Idee! Momentan ist es wirklich Murks.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Alle Zeiten sind GMT + 1 Stunde (MEZ)

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Seite 1 von 1
if-de :: Forum Foren-Übersicht  >  Inform & Glulx

Neues Thema eröffnen   Neue Antwort erstellen


 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.



Kontakt: Administrator

Powered by phpBB and NoseBleed v1.05