Verschiedene Sprachen

  • Hallo,
    vor kurzem habe ich angefangen Scenarios zu bauen. Ich selbst lebe in Spanien und bin Deutsch Schweizer. Daher liegt es für mich auf der Hand, die Scenarios dreisprachig zu machen. Eine Möglichkeit wäre, jedes Scenario dreimal herauszugeben, jeweils in einer anderen Sprache. Jetzt habe ich aber entdeckt, dass es einen weiteren Weg gibt, nämlich mittels LUA:


    function OnEventIntroduction()
    SysCall ( "ScenarioManager:ShowInfoMessageExt", "Title of the box", "introtext.html", 0, MSG_VCENTRE + MSG_CENTRE, MSG_REG, TRUE );
    end


    Mehr über das LUA Scripting finder Ihr auf: http://trainsimlive.blogspot.c…ipting-in-lua-part-1.html


    Klar, dort hat man dann noch verschiedene Folder zu erstellen, für jede Sprache einen, ausserdem die Scripte zu schreiben und ebenso die HTML Dateien. Ziemlich viel Arbeit.


    Weiss jemand von Euch noch einen anderen Weg um mehrsprachige Scenarios zu bauen? *nurbf*

  • Also ich erstelle mehrsprachige szenarien ganz einfach über die utilities.exe die beim TS dabei ist.
    Man erstelllt das Szenario z.b. in Deutsch (je nachdem in welcher Sprache der TS eingestellt ist).
    Wenn das szenario in einer Sprache komplett fertig ist kann man über die utilities.exe die Texte in eine excel Datei auslesen. In dieser excel Datei sind dann je nachdem welche Sprachen man angeklickt beim export die entsprechenden Spalten, "de" "eng" etc. Die Spalte mit der Sprache in der man das Szenario erstellt beinhaltet dann schon alle Texte die man im Szenario verwendet hat.
    Hier trägt man einfach die übersetzten Texte in die anderen Spalten ein und importiert es wieder in das Szenario und fertig ;)
    Das fertige Szenario beinhaltet dann alle Sprachen die man eingestellt hat und je nachdem in welcher Sprache der benutzer seinen TS eingestellt hat wird dann die entsprechende Sprache angezeigt.

  • Also ich erstelle mehrsprachige szenarien ganz einfach über die utilities.exe die beim TS dabei ist.
    Man erstelllt das Szenario z.b. in Deutsch (je nachdem in welcher Sprache der TS eingestellt ist).
    Wenn das szenario in einer Sprache komplett fertig ist kann man über die utilities.exe die Texte in eine excel Datei auslesen. In dieser excel Datei sind dann je nachdem welche Sprachen man angeklickt beim export die entsprechenden Spalten, "de" "eng" etc. Die Spalte mit der Sprache in der man das Szenario erstellt beinhaltet dann schon alle Texte die man im Szenario verwendet hat.
    Hier trägt man einfach die übersetzten Texte in die anderen Spalten ein und importiert es wieder in das Szenario und fertig ;)
    Das fertige Szenario beinhaltet dann alle Sprachen die man eingestellt hat und je nachdem in welcher Sprache der benutzer seinen TS eingestellt hat wird dann die entsprechende Sprache angezeigt.


    Danke für den heissen Tip. Ja, so mit der Excel Datei geht es viel leichter. Das LUA Scripting werde ich dann nur in Verbindug mit LUA gebrauchen, so etwa bei Geschwindigkeitskontrollen.
    *super*

  • Warum haben wir eigendlich eine Wiki? Abteilung Übersetzung, da steht alles schön beschrieben.
    Auch geskriptete Szenarien mit HTML Fenstern lassen sich mehrsprachig ausführen.
    Da am besten in den Akademy-Scenarien spicken. (Routes 00000050-...)
    StS

    Keine Hilfe und Auskunft per PN, da meist von allgemeinem Interesse. Diese Fragen bitte im Forum stellen.

  • Ich greife dieses Thema mal auf, da ich es genau - auch wie im Wiki angegeben - mache.

    Das Spiel will aber partout keine .lan-Dateien erzeugen, trotz Erfolgsmeldung der Utilities.exe.

    Ich habe Deutsch, Englisch und Französisch ausgewählt und die entsprechenden Übersetzungen auch eingetragen sowie die bearbeitete Excel-Datei wieder importiert.


    Ich sehe, dass es auch in der Scenario.bin und ScenarioProperties.xml entsprechende Einträge gibt. Diese sind aber auch nach dem Import leer. Eine manuelle Bearbeitung der Einträge lässt zwar Übersetzungen anzeigen, aber dafür verschwindet der gesamte KI-Verkehr und gesetzte statische Züge :ugly:


    EDIT: Ich habe nun den Fehler gefunden, aber kann ihn nicht beheben. Die Ausgabe spuckt beim Import der Tabelle aus "Invalid character found in id: --Lok-Name--". Es ist jedoch kein solcher "invalid character" zu sehen, es ist eine ganz normale SBB Re420-Lok von TrainworX. Ich habe die Tabelle auch neu erzeugt und immer noch derselbe Fehler.


    Hat jemand einen Tipp?

  • Schau Dir mal die .bin geserzt und mit notepad++ der Lok an. Alle namenseinträge ob da ein nicht darstellbares Zeichen drin ist. Notepad++ macht da einen schwarzen Klex draus.

    das korrigieren.

    Keine Hilfe und Auskunft per PN, da meist von allgemeinem Interesse. Diese Fragen bitte im Forum stellen.

  • StS


    Danke für den Tipp. In den .bin Dateien ist alles i.O., keine schwarzen oder kryptischen Symbole. Auch nicht in den geserzten xml-Dateien.

    Mein "Workaround": Die Fahrzeug-ID in der Excel-Liste ändern. Dann erzeugt das Spiel die Übersetzungsdateien ohne Probleme. Nachteil: Die Consist-Bezeichnungen sind in der 2d-Ansicht nicht mehr sichtbar, wenn diese Lok integriert ist. Solche manuellen Eingriffe in von der Utilities erzeugte IDs soll man ja eigentlich sein lassen, aber ich weiß mir da nicht anders zu helfen.

  • StS


    Hallo, ich habe die gleiche Fehlermeldung beim Importieren der XLS-Datei mit der Utilities.exe, wie sie auch alias203 hatte. Ich habe auch schon den Lösungsansatz der Suche nach nicht darstellbaren Zeichen ausprobiert, allerdings auch ohne Erfolg. Bei mir tritt das Problem bei einer Lok des BR361_V60_Enhanced_Pack von ice auf. Die Fehlermeldung lautet auch bei mir wie folgt:


    Error: Invalid character found in id: RS_TXT_BR361_DB_orientrot dirty


    Meinst du bei deinem Workaround wirklich die scenario.bin oder doch vielleicht die ScenarioProperties.xml? In der mit der serz.exe konvertierten scenario.bin (scenario.xml) kann ich die ID aus der Tabelle nämlich nirgendwo finden. In der ScenarioProperties.xml hingegen finde ich die ID, aber ein Anpassen löst dort in meinem Falle nicht das Problem der fehlenden Zugverband-Bezeichnungen in der 2D-Ansicht. Auch verschwinden ja sämtliche Zugverbände aus dem Fahrplan-Fenster des Szenario-Editors. Ich weiß gar nicht, ob das Szenario so überhaupt noch fehlerfrei spielbar wäre.

  • Du übersetzt doch das Scenario. Die Frage ist, in welcher Datei taucht der Lokname auf? da ist der Ansatz zur Suche. Da gibts auch eine Text-ID (In der Ersten Spalte der ausgeleiteten excel-Datei), ist da was unsauber?

    Was ich noch nie probiert habe in der xls- Datei: die Zeile(n) mit der Lok rauslöschen. dann importieren, da gibts halt dafür keine Übersetzung, auch kein Beinbruch.

    Keine Hilfe und Auskunft per PN, da meist von allgemeinem Interesse. Diese Fragen bitte im Forum stellen.

  • Mit der ID in der XLS-Datei meinte ich die erste Tabellenspalte „ID“. Die betroffene ID war in meinem Falle „RS_TXT_BR361_DB_orientrot dirty“. Und diese fand ich nur in der ScenarioProperties.xml wieder, nicht in der scenario.xml. In ersterer Datei brachte eine Angleichung an die zuvor in der XLS-Datei veränderte ID allerdings nicht den von alias203 beschriebenen Erfolg.


    Vielen Dank StS für den Gedanken mit dem Löschen der gesamten Tabellenzeile. Damit ist tatsächlich ein Import möglich und in deutscher Sprache funktioniert das Szenario weiterhin gut. Lediglich von einem einzigen unbedeutenden Zugverband hat sich leider der Name verändert. Im Szenario-Editor sind die Fahrpläne noch vorhanden. Anders ist dies allerdings, wenn ich das Spiel in englischer Sprache starte. Die Übersetzungen sind vorhanden und funktionieren, aber alle Zugverbände sind wieder namenlos. Auch fehlen im Szenario-Editor wieder jegliche Fahrpläne. Das Szenario ist aber dennoch voll spielbar. Das wäre zur Not vielleicht ein Kompromiss.

  • Frage: welche Sprachen wurden erstellt, Vermutlich DE und EN, dann muss in beiden Spalten der xls (nicht xml!) auch Text vorhanden sein, ggf von der einen Spalte in die andere kopieren.

    Wenn lan dateien vorhanden sind, sind in den Editoren die Texte ausgegraut und nicht editierbar.

    Keine Hilfe und Auskunft per PN, da meist von allgemeinem Interesse. Diese Fragen bitte im Forum stellen.

    Einmal editiert, zuletzt von StS ()

  • Ohne Veränderung der problembehafteten ID innerhalb der XLS-Datei lässt sich die Übersetzung ja gar nicht importieren. Mit Veränderung funktioniert dann der Import, aber es treten die genannten Probleme auf, wie du alias203 sie ja auch beschrieben hattest:

    Mein "Workaround": Die Fahrzeug-ID in der Excel-Liste ändern. Dann erzeugt das Spiel die Übersetzungsdateien ohne Probleme. Nachteil: Die Consist-Bezeichnungen sind in der 2d-Ansicht nicht mehr sichtbar, wenn diese Lok integriert ist.

    Ich würde im Zweifel nicht an der XML fummeln. Der Worst Case ist dann, dass die Zugverbandsnamen nicht sichtbar sind

    Aber war das nicht genau der Workaround, der bei dir die Probleme gelöst hatte?

    Schau mal in der scenario.bin nach der id und pass die Deiner geänderten an.

    Ich wollte mich noch mal zurückmelden. Der Workaround hat funktioniert. Vielen Dank dafür.


    Genau, ich würde das Szenario neben der deutschen Sprache auch gerne in englischer Sprache anbieten. Wie ich gerade festgestellt habe, sind die Zugverbands-Bezeichnungen und die Fahrpläne im Szenario-Editor ja grundsätzlich nicht sichtbar, wenn ich das Szenario ohne vorherige Übersetzung in englischer Sprache starte. Auch wenn der Import und die Generierung der .lan-Dateien fehlerfrei funktionieren würde, wüsste ich gar nicht, wie ich das ändern könnte. In der von der Utilities.exe exportierten .xls-Datei tauchen die Zugnamen, abgesehen von dem Namen des Spielerzuges, nämlich gar nicht auf. Das wäre aber vielleicht zu verschmerzen. Ich werde das Szenario nachträglich bestimmt nicht mehr bearbeiten müssen, erst recht nicht im englischsprachig gestarteten Spiel. Und bei der Übersetzung geht es ja hauptsächlich um den Titel, die Beschreibung und das F1-Briefing, nicht um Zugverbands-Bezeichnungen.


    Vielen Dank für eure Hilfe! Nach so langem erfolglosem Ausprobieren habe ich jetzt nur ein wenig den Überblick verloren.


    Da ich alle spielrelevanten Texte in .html-Dateien habe, die ich skriptgesteuert einblende, und diese auch schon zweisprachig in den Unterordnern „de“ und „en“ vorliegen, ginge es auch ohne zusätzliche Übersetzung. Es wäre aber natürlich schön, wenn der englischsprachige Spieler auch schon im Spielmenü bei der Szenario-Auswahl mit einem englischen Titel und einer englischen Szenario-Beschreibung begrüßt würde.


    Die Idee mit dem Löschen der gesamten „RS_TXT_BR361_DB_orientrot dirty“ Zeile hatte bisher am besten funktioniert. Die perfekte Lösung war das allerdings auch noch nicht, weil der dem Spielerzug am nächsten liegende Zugverband merkwürdigerweise ebenfalls den Namen des Spielerzuges annahm, sogar in englischer Sprache. Die anderen Zugverbände hatten bei in deutsch gestartetem Train Simulator die richtigen Bezeichnungen, in englischer Sprache weiterhin gar keine Bezeichnungen.

  • Ah, sorry, ich habe mich womöglich falsch ausgedrückt.


    Es funktioniert, indem ich nur die ID in der XLS ändere, ebenfalls, ohne die ScenarioProperties anzurühren. Dann bleibt der Fahrplan bestehen. Lediglich die Texte lassen sich nicht mehr im Szenario Editor bearbeiten und die Consist-Namen sind unsichtbar.


    Wenn also das Bearbeiten der ScenarioProperties bei dir zu Problemen mit dem Fahrplan führt, würde ich da nichts dran machen. Für den Nutzer macht das ja am Ende nichts.

  • Probleme mit dem Fahrplan waren immer nur auf die Abwesenheit der Fahrpläne im Szenarioeditor beschränkt, nicht auf den eigentlichen Spielablauf. Ich konnte meine Beobachtung am Anfang nur noch nicht so ganz einordnen. Dass die Fahrpläne im Szenario-Editor nicht auftauchen, wird an den fehlenden Zugverbands-Bezeichnungen liegen. Ohne Namen können die Einträge wohl einfach nicht angezeigt werden. Im Grunde kann mir das aber ja egal sein. Wenn ich demnächst mein erstes Szenario veröffentliche, dann zum Spielen und nicht zum Bearbeiten. Und für nachträgliche Änderungen, behalte ich immer noch eine unübersetzte Kopie des Szenarios bei mir.


    Abschließend kann ich sagen, dass es keinen Unterschied macht, ob ich bloß die problematische ID innerhalb der XLS-Datei verändere oder ob ich die entsprechende Zeile komplett lösche. In beiden Fällen funktioniert der Import und in der deutschen Sprache bleiben sogar die Zugverbands-Bezeichnungen bestehen. In der englischen Sprache verschwinden diese nicht, sondern sind mangels Übersetzung nie da gewesen. Sie lassen sich mit einfachen Mitteln auch nicht übersetzen, da die Einträge in der XLS-Datei nicht auftauchen.


    Als einziges unschönes Detail bleibt der meinem Spielerzug nächstgelegene Zugverband, der merkwürdigerweise nach der Workaround-Übersetzung stets seinen eigenen Namen aufgibt und dafür meinen Spielerzug-Namen annimmt. Dabei handelt es sich nur um eine zur Dekoration aufgestellte Astauder BR 38 2267. Damit sie schön dampft, musste ich sie mit einem Fahrer ausstatten. Ich denke, der merkwürdige Name wird nur ganz wenigen Spielern auffallen. Da die Lok für das Szenario nicht relevant ist, wird man in der 2D-Karte nicht an sie heranzoomen. Und die F6-Ansicht kennen viele Spieler wahrscheinlich nicht oder wird nicht oft benutzt. Hätte ich die Lok nicht mit einem Fahrer ausgestattet, wäre möglicherweise ein anderer Zugverband umbenannt worden. Das wäre auch nicht besser gewesen.


    Vielen Dank alias203 und StS für eure Hilfe! Das Ergebnis finde ich nun zufriedenstellend! Abgesehen von der einen falschen Zugverbands-Bezeichnung gibt es nun keinerlei Einschränkung für den deutschen Spieler und für den englischsprachigen Spieler nur keine Zugverbands-Bezeichnungen (abgesehen von der einen falschen, die es auch in die englische Version geschafft hat).