Guten Tag zusammen,
immer häufiger haben Leute Probleme mit der Stringtable.xml oder Fehler mit "STR_..."-Inhalten. Deshalb hier ein kleiner XML/Stringtable-Guide.
Wo finde ich die Stringtable.xml?
Im selben Verzeichnis wie die mission.sqm und in jedem Fall im selben Verzeichnis wie die description.ext
Für was gibt es die Stringtable.xml?
Für die Verwaltung aller schriften die dem Spieler im Spiel ausgegeben werden: In jeder Sprache und immer gleich.
Ein Beispiel.
"Herzlich Willkommen am Arsch der Welt" soll immer ausgegeben werden wenn man Kavala, Athira und Pyrgos betritt. Jetzt kann ich an jeder Codestelle hint ""Herzlich Willkommen am Arsch der Welt" schreiben und nenn' es dabei noch drei mal anders weil 3 verschiedene Entwickler daran gearbeitet haben oder ich mache einen hint localize "STR_NOTF_ARSCH" und finde nun unter der definierten ID den selben Eintrag.
Ein weiterer Vorteil ist dass wir so unseren Eintrag auf Deutsch, Englisch von mir aus auch auf Westfriesisch bekommen.
Wie definiere ich einen Eintrag in der Stringtable.xml?
<Package name="begruesung_txt">
<Key ID="STR_NOTF_ARSCH">
<Original>Welcome to the middle of nowhere</Original>
<German>Herzlich Willkommen am Arsch der Welt</German>
</Key>
</Package>
Wir definieren ein "Package" in diesem Fall begruesung_txt Dieses Package enthält einen Key mit der ID "STR_NOTF_ARSCH" und hat einen Original-Text und eine deutsche Übersetzung.
Je nach Spracheinstellung des Spielers wird somit der definierte Text ausgegeben.
Wie verwende ich einen Eintrag im Code?
Wie im Beispiel oben aufgezeigt kann man nun mit einem localize in jedem beliebigen hint die Key ID verwenden. Also in unserem Fall hint localize "STR_NOTF_ARSCH"
Das Tutorial ist Native Network exklusiv und darf ohne meine Erlaubnis nicht verbreitet werden. Ich freue mich immer über Anregungen und Bewertungen und konstruktive Kritik.
Liebe Grüße
Xylometachlorid