IF-Forum

» IF-Forum - Autorencafé - Schreiben! - Dialog
AntwortenNeues ThemaNeue Umfrage
» Mehrere Seiten: 12

Dialog

Geschrieben um 10:23 am 05.05.2023 | Zitat | Editieren | Löschen
Mikawa
Avatar
Mitglied
Prof Gumby
Beiträge: 326

Hannes:

Frage: Warum definiert die deutsche Bibliothek die Attribute "maskulin" und "feminin", obwohl "male" und "female" bereits existieren? Wäre es nicht einfacher, diese auch für die deutschen Spezifika zu verwenden?

Das hatte ich ursprünglich mal gemacht, damit ich es beim Austausch nicht verwechsle, kann man natürlich auch "rückführen" ....

Geschrieben um 21:38 am 05.05.2023 | Zitat | Editieren | Löschen
Hannes
Avatar
Mitglied
Prof Gumby
Beiträge: 596

Mikawa:

Hannes:

Frage: Warum definiert die deutsche Bibliothek die Attribute "maskulin" und "feminin", obwohl "male" und "female" bereits existieren? Wäre es nicht einfacher, diese auch für die deutschen Spezifika zu verwenden?

Das hatte ich ursprünglich mal gemacht, damit ich es beim Austausch nicht verwechsle, kann man natürlich auch "rückführen" ....

Gut, vielleicht gibt es da Vorteile, die ich mit meinen winzigen Versuchen noch nicht sehe. Bei Übersetzungen erscheint es mir potentiell hinderlich.

Geschrieben um 18:09 am 12.05.2023 | Zitat | Editieren | Löschen
Hannes
Avatar
Mitglied
Prof Gumby
Beiträge: 596

Ich habe eine Bank definiert:

#bench
(name *) Bank
(dict *) bank
(* is feminin)
(* is #in #Market)
(actor supporter *)

Dies passiert:

> sitz auf bank
y Du bist nun auf der Bank.

In der Library steht:

(narrate climbing $Obj)
    Du bist nun auf (dem $Obj).

Mir ist nicht klar, wo dieses y herkommt und wo ich anfangen soll zu suchen. Hinweise willkommen!

-----
Bearbeitet von Hannes um 18:10 am 12.05.2023
Geschrieben um 13:43 am 13.05.2023 | Zitat | Editieren | Löschen
8bit_era
Avatar
Mitglied
Student Gumby
Beiträge: 21

@Hannes: Mmmh das ist seltsam. Kann nachher mal schauen wenn ich Zuhause bin. Ich arbeite in Abstimmung mit Linus an einer minimalen Version (für Retrotargets) des Library und kenne es mittlerweile ganz gut. Da Du kein "narrate" für das Bench Objekt definiert hast, greift die Standarddefinition im Library. Ich glaube fast mich zu erinnern dass SIT und CLIMB unterschiedlich definiert waren. Eine Möglichkeit wäre zu schauen wie der Grammar für SITZ in der deutschen Version des Library (die ich nicht kenne) definiert ist.

Noch eine Grundsatzfrage: Wie hast Du Dein Story Binary getestet? War das Target die A-Machine oder die Z-Machine? Wenn Z-Machine könnte es eventuell auch was Dummes sein wie die Dateikodierung. Eventuell würde es helfen mal zwischen Western- und Unicode Encoding oder vice versa zu wechseln.

Das sind natürlich jetzt alles Vermutungen meinerseits, könnte also auch was ganz anderes sein. Ich versuche Deinen Code mal nachher zu testen / debuggen.

-----

My games: 8bitgames.itch.io | Twitter: @8bit_era | Mastodon: @8bitgames@oldbytes.space

-----
Bearbeitet von 8bit_era um 13:44 am 13.05.2023
Geschrieben um 16:13 am 13.05.2023 | Zitat | Editieren | Löschen
Hannes
Avatar
Mitglied
Prof Gumby
Beiträge: 596

Also, so wie ich die Library verstehe geschieht Folgendes:

(grammar [geh/spring/sitz/kletter/lieg/sitz/steig [in durch] [single]] for [enter $])

Wobei ich mit dem [in durch] nicht sicher bin, denn ich tippe als Spieler ja "auf".

Dann greift:

(instead of [enter (actor supporter $Obj)])
    (try [climb $Obj])

Und damit sind wir dann beim zitierten narrate.

Normal compiliere ich in Z-Machine. Habe jetzt testweise mal A-Machine gemacht, da taucht das y ebenso auf.

Geschrieben um 20:15 am 13.05.2023 | Zitat | Editieren | Löschen
8bit_era
Avatar
Mitglied
Student Gumby
Beiträge: 21

Ok, kleines Update. Hab nun mal Deinen Code mit dem englischen Library getested (muss das Deutsche noch laden) und da funktioniert er einwandfrei. Sogar, wenn ich dem Objekt den Female-Trait gebe, was in Englisch natürlich sinnfrei ist :D

Auffällig für mich ist (* is feminin) - ich bin mir nicht sicher ob das eine Besonderheit der deutschen Variante ist, denn im originalen Dialog würde ich den Trait wie folgt definieren (female *). Aber auch das hat mit hoher Wahrscheinlichkeit nichts mit Deinem Y-Fehler zu tun.

Ich gehe derzeit eher von einem Bug aus, der sich in dem deutschen Lib eingeschlichen hat. Ich versuche mal noch über das Wochenende das Problem mit dem deutschen Lib zu reproduzieren.

-----

My games: 8bitgames.itch.io | Twitter: @8bit_era | Mastodon: @8bitgames@oldbytes.space

Geschrieben um 11:08 am 14.05.2023 | Zitat | Editieren | Löschen
8bit_era
Avatar
Mitglied
Student Gumby
Beiträge: 21

Grrrr.... irgendwie wirft mich das Forum ab und an raus. Das ist besonders ärgerlich wenn man einen längeren Text schreibt, dann auf publizieren drückt und vom Forum die Meldung bekommt "Du hast nicht die erforderlichen Rechte." und der schöne Text dann weg ist.

Von daher sieh mir nach wenn ich mich nun kurz fasse :)

Ich habe das deutsche Lib geladen (von Github) und kann den Fehler leider nicht nachvollziehen, bin aber auf einige Ungereimtheiten gestoßen weshalb mein Feldversuch mit Vorsicht zu genießen ist.

Ich habe die Bank in das Jade Beispiel eingebaut und leider versteht das Library, anders als in Deinem Beispiel sitz auf Bank nicht bei mir. Mit setz dich auf die Bank hat es aber funktioniert und ich konnte den selben Narrative triggern den auch Du hattest. Allerdings ohne das y, von daher ist es für mich nicht nachvollziehbar bzw. zu debuggen wo es herkommt.

Was mich alles andere als zuversichtlich gestimmt hat ist der Umstand, dass der Compiler mir mindestens 80 Warnungen bezüglich des deutschen Library beim Kompilieren ausgeworfen hat. Ich habe gesehen, dass das deutsche Library auf Dialog Version 0.45 basiert, ich selbst nutze den Compiler 0m/03 der zusammen mit der aktuellen Dialog Version 0.46 kam. Zwischen 0.45 und 0.46 hat sich architekturell einiges geändert. Auch wurde die Fehlererkennung in Quelltexten deutlich verbessert, was die Ursache für die zahlreichen Warnungen ist, die mir der Compiler zum deutschen Standard Library präsentiert hat.

Da ist aus meiner Sicht also noch grundsätzlich ein bisschen was auf der ToDo Liste des deutschen Library, was absolut nicht böse gemeint ist. Aber man sollte sich die Warnungen des Compiler im Detail anschauen und dann reparieren.

Hier ist meine Erfahrung (in-game) ersichtlich https://imgur.com/jeDHJwr

Und hier ein Beispiel der ausgeworfenen Warnungen: https://imgur.com/a/MTMoUkg

-----

My games: 8bitgames.itch.io | Twitter: @8bit_era | Mastodon: @8bitgames@oldbytes.space

-----
Bearbeitet von 8bit_era um 11:15 am 14.05.2023
Geschrieben um 15:58 am 14.05.2023 | Zitat | Editieren | Löschen
Hannes
Avatar
Mitglied
Prof Gumby
Beiträge: 596

So, ich hab's gefunden mittels einer neuen Minimalprojekts mit keinem sonstigen störenden Code. Es war tatsächlich rein mein Fehler, denn ich hatte selbst ein SITZ AUF $Obj definiert und da lag der Fehler. Sorry für all das Hin und Her und vielen Dank für die Mühe! (Stellt sich natürlich die Frage, warum SITZ AUF $Obj nicht Teil der Standardbibliothek ist, aber das ist eine Kleinigkeit.)

Ja, die zahlreichen Warnungen laufen auch an meinen Augen jedes Mal vorbei. Das ist ja genau das Thema meines Ausgangsposts von "Stand deutscher Entwicklungssysteme". Meine aktuellen Versuche gehen genau in die Richtung, mal den echten Status herauszufinden: Ist eine Entwicklung in Dialog auf Deutsch überhaupt möglich? Bislang denke ich: ja, zumindest haben mir die Warnungen noch funktional nichts zerschossen. Aber trotzdem natürlich unschön.

Ich will jetzt aber nicht das andere Thema hier nochmal redundant aufrollen, sondern mache erstmal weiter.

Geschrieben um 19:12 am 14.05.2023 | Zitat | Editieren | Löschen
8bit_era
Avatar
Mitglied
Student Gumby
Beiträge: 21

Bei meinem Test mit dem Jade-Abenteuer hat tatsächlich auch alles funktioniert. Das deutsche Library ist also definitiv einsetzbar. Die Warnungen weisen aus meiner Sicht auf obsoleten Code hin, der wahrscheinlich bei der Portierung auf die deutsche Sprache entstanden ist. Das müsste man einmal "abarbeiten", damit keine Warnungen mehr ausgeworfen werden. Das ergibt sich dann wahrscheinlich bei der weiteren Entwicklung des deutschen Library. Hoffe ich. :D

-----

My games: 8bitgames.itch.io | Twitter: @8bit_era | Mastodon: @8bitgames@oldbytes.space

Geschrieben um 00:59 am 17.05.2023 | Zitat | Editieren | Löschen
Hannes
Avatar
Mitglied
Prof Gumby
Beiträge: 596

In der Anleitung heißt es:

Doors usually appear in (from $ go $ to $) rules, and are therefore automatically treated as floating objects. So in the above game, you'll be able to EXAMINE DOOR, OPEN DOOR, CLOSE WOODEN etc. from either side of the door.

Folgender Code (aufs Wesentliche gekürzt), kompiliert mit der deutschen Bibliothek, erlaubt das Ansprechen der Tür in den Räumen jedoch nicht:

#ParkingLot
(room *)
(name *) Auffahrt
(dict *) parkplatz auffahrt
(* is feminin)
(look *) ...
(from * go #east through #MayorsDoor to #MayorsHouse)

#MayorsDoor
(door *)
(openable *)
(name *) Tür
(dict *) tür eingangstür eingang
(descr *) ...

#MayorsHouse
(room *)
(name *) Haus des Bürgermeisters
(dict *) haus des bürgermeisters
(look *) ...
(* is neutrum)
(from * go #west through #MayorsDoor to #ParkingLot)

Im Spiel:

Auffahrt
...

> b tür
(Ich habe dich nur soweit verstanden, du willst etwas Bestimmtes untersuchen.)

Ist dieses automatische "Floating" eine Änderung zwischen 0.45 und 0.46?

Geschrieben um 14:11 am 17.05.2023 | Zitat | Editieren | Löschen
StJohn Limbo
Mitglied
Master Gumby
Beiträge: 104

So wie ich es sehe, liegt das am Umlaut. Die deutsche Library ersetzt "ü" (etc.) in Eingaben durch die Umschreibungen mit "ue" (usw.), ebenso "ß" durch "ss".

Man muss deshalb die dict-Einträge ebenfalls mit Umschreibungen vornehmen, also "(dict *) tuer", dann wird "u tür" im Spiel erkannt.

(Randbemerkung: in der englischen Library funktionieren die Umlaute und "ß" allerdings anscheinend auch direkt so, also "(name *) Tür" und "x tür" ist kein Problem. Von daher bin ich mir nicht sicher, ob die Ersetzung in der deutschen Library strikt nötig ist. Aber ich bin nicht tief genug in die Materie eingestiegen, um das komplett zu beurteilen.)

Geschrieben um 15:32 am 17.05.2023 | Zitat | Editieren | Löschen
Hannes
Avatar
Mitglied
Prof Gumby
Beiträge: 596

Danke, das hat's gelöst!

» Mehrere Seiten: 12
AntwortenNeues ThemaNeue Umfrage
Powered by Spam Board SVN © 2007 - 2021
Impressum / Datenschutz