Posted May 01, 2015
*The following instructions are in german, because the issue only affects german players
Schnell und unkompliziert gehts mit Zyankalis Uncut-Patch.
-----------------------------------------------------------------
Meine Lösung (aufwendig):
tl;dr: Die englischen Sprach-, Text- und Videodateien müssen durch die deutschen ersetzt werden. Beginne bei "Ersetzen der Sounddateien".
Wie ihr wahrscheinlich wisst, ist die deutsche Version von JK2 geschnitten (keine abgetrennten Gliedmassen), d.h. sie ist geschnitten sobald ihr die Sprache im Spiel auf deutsch stellt.
Erfreulicherweise habe ich nach langem Rumprobieren eine funktionierende Methode gefunden, um dies zu umgehen. Im Netz gibts einige Anleitungen dazu, die sich jedoch alle als unbefriedigend herausstellen, entweder weil sie veraltet sind (für prä 1.04 Version) oder zu aufwendig (Sprache in Windows-Systemeinstellungen ändern, Schreibschutz für Konfigurationsdatei aktivieren und Teilungen nach jedem Reload wieder manuell aktivieren). Der erste Beitrag auf dieser Seite führt allerdings auf die richtige Fährte, ist aber ebenfalls nicht hundertprozentig korrekt (zumindest für die GOG-Version).
Die folgende Lösung ist simpel, kann sich jedoch ohne entsprechendes tool etwas langwierig gestalten. Wir ersetzen einfach die englischen Sprach- und Textdateien durch die deutschen Entsprechungen und gaukeln dem Spiel eine englische Spracheinstellung vor. Im folgenden nun die dazu notwendigen Schritte:
Ersetzen der Sounddateien
-Sicherungskopie von Gamedata/base/assets1.pk3 erstellen
-extrahiere Gamedata/base/assets1.pk3 in beliebigen Ordner (hier Assets1)
-kopiere alle Dateien und Ordner in Assets1/sound/chr_d/ nach Assets1/sound/chars/
-füge alle Dateien und Ordner in Assets1/ zu einem neuen zip-Archiv (keine Kompression, nur Speicherung) und benenne es in assets1.pk3 um
-kopiere assets1.pk3 nach Gamedata/base/ und überschreibe alte Version
Ersetzen der Textdateien
-Sicherungskopie von Gamedata/base/assets2.pk3 erstellen
-extrahiere Gamedata/base/assets2.pk3 in beliebigen Ordner (hier Assets2)
-in jeder Datei unter Assets2/strip/ muss nun "TEXT_LANGUAGE3" durch "TEXT_LANGUAGE1" ersetzt werden:
--ich hab das unter Linux mit einem Einzeiler gelöst:
for i in * ; do sed -i 's/TEXT_LANGUAGE3/TEXT_LANGUAGE1/g' $i ; done
--entweder ihr findet einen Weg das unter Windows (edit: z.B. damit) ebenso einfach zu bewerkstelligen oder ihr müsst die Suchen/Ersetzen-Funktion des Editors bemühen, dann aber für jede einzelne Datei
-füge alle Dateien und Ordner in Assets2/ zu einem neuen zip-Archiv (keine Kompression, nur Speicherung) und benenne es in assets2.pk3 um
-kopiere assets2.pk3 nach Gamedata/base/ und überschreibe alte Version
Ersetzen der Videodateien
tl;dr: es müssen noch zwei Videos mit deutschen Tonspuren versehen werden (dazu wird ffmpeg (unter Linux) benutzt. Die Videos sind ziemlich kurz, wer also vorm Reencodieren zurückschreckt bzw. das nötige tool vermisst, der kann getrost zu "Einstellungen in Konfigurationsdatei" springen. Ansonsten gehts bei den Bindestrichen weiter.
Es gibt im Spiel zwei Cinematics (werden nach Tavions Niederlage gezeigt), in der Gespräche vorkommen. Im Englischen werden die Videos mit integrierter englischer Tonspur wiedergegeben. Bei deutscher Spracheinstellung gibts kein deutsches Video, sondern nur eine mp3-Datei, welche mit dem Originalvideo abgespielt wird. Leider wird bei englischer Spracheinstellung (also auch der bisher angewandten Methode des Ersetzens) diese deutsche Tonspur nicht gelesen und ich habe auch kein nichtbinäres Skript o.ä. gefunden, das das regelt. Uns bleibt demnach nur die Möglichkeit eine Version der Videos mit deutscher Tonspur zu erstellen und die alten zu überschreiben.
Nach ärgerlichen, fruchtlosen Versuchen, dies mit dem eigentlich dafür geschaffenen "Quake Video Maker" zu lösen, habe ich mit ffmpeg (unter Linux, gibts aber auch für Windows, sollte also prinzipiell machbar sein) eine bessere Möglchkeit dafür gefunden. Hier also die nötigen Schritte:
-Sicherungskopie von Gamedata/base/assets0.pk3 erstellen
-extrahiere Gamedata/base/assets0.pk3 in beliebigen Ordner (hier Assets0)
-kopiere Assets0/video/jk05.roq und Assets0/video/jk06.roq in in beliebigen Ordner (hier Videosdeutsch)
-kopiere Assets1/sound/char_d/video/cinematic_05.mp3 und Assets1/sound/char_d/video/cinematic_06.mp3 nach Videosdeutsch/ (das Verzeichnis Assets1 solltet ihr ja von vorhin noch haben)
-wechselt nach Videosdeutsch/ und führt die folgenden ffmpeg-Befehle aus:
ffmpeg -i jk05.roq -i cinematic_5.mp3 -ar 22050 -acodec roq_dpcm -ac 2 -qscale 0 -aq 0 -shortest -map 0:1 -map 1:0 jk05_deutsch.roq
ffmpeg -i jk06.roq -i cinematic_6.mp3 -ar 22050 -acodec roq_dpcm -ac 2 -qscale 0 -aq 0 -shortest -map 0:1 -map 1:0 jk06_deutsch.roq
-überschreibe die Originalvideodateien in Assets0/video/ mit den eben erzeugten deutschen Videos
-füge alle Dateien und Ordner in Assets0/ zu einem neuen zip-Archiv (keine Kompression, nur Speicherung) und benenne es in assets0.pk3 um
-kopiere assets0.pk3 nach Gamedata/base/ und überschreibe alte Version
Einstellungen in Konfigurationsdatei
-ändere folgende Einstellungen (oder füge sie bei Nichtvorhandensein hinzu) in Gamedata/base/jk2config.cfg
seta ui_iscensored "0"
seta sp_language "0"
seta s_language "english"
seta g_dismemberment "3" (bestimmt, welche Teilungen möglich sind: 0-keine 1-Hände,Arme 2-plus Beine 3-plus Torso und Kopf)
seta g_dismemberProbabilities "0" (dem Worlaut nach sollte dieser Wert die Wahscheinlichkeit für Teilungen bestimmen, mit 0 gibts aber anscheinend mehr Teilungen als mit positiven Werten)
optional:
seta helpusobi "1" (ermöglicht die Eingabe von Cheats, wird von der folgenden Option benötigt)
seta g_saberRealisticCombat "1" (Lichtschwert tötet schon bei Berührung, also auch mehr Teilungen, auch an Leichen)
Wer wieder zur englischen Sprachausgabe wechseln möchte, muss einfach nur die originalen assets*.pk3 ins base-Verzeichnis zurückkopieren.
Schnell und unkompliziert gehts mit Zyankalis Uncut-Patch.
-----------------------------------------------------------------
Meine Lösung (aufwendig):
tl;dr: Die englischen Sprach-, Text- und Videodateien müssen durch die deutschen ersetzt werden. Beginne bei "Ersetzen der Sounddateien".
Wie ihr wahrscheinlich wisst, ist die deutsche Version von JK2 geschnitten (keine abgetrennten Gliedmassen), d.h. sie ist geschnitten sobald ihr die Sprache im Spiel auf deutsch stellt.
Erfreulicherweise habe ich nach langem Rumprobieren eine funktionierende Methode gefunden, um dies zu umgehen. Im Netz gibts einige Anleitungen dazu, die sich jedoch alle als unbefriedigend herausstellen, entweder weil sie veraltet sind (für prä 1.04 Version) oder zu aufwendig (Sprache in Windows-Systemeinstellungen ändern, Schreibschutz für Konfigurationsdatei aktivieren und Teilungen nach jedem Reload wieder manuell aktivieren). Der erste Beitrag auf dieser Seite führt allerdings auf die richtige Fährte, ist aber ebenfalls nicht hundertprozentig korrekt (zumindest für die GOG-Version).
Die folgende Lösung ist simpel, kann sich jedoch ohne entsprechendes tool etwas langwierig gestalten. Wir ersetzen einfach die englischen Sprach- und Textdateien durch die deutschen Entsprechungen und gaukeln dem Spiel eine englische Spracheinstellung vor. Im folgenden nun die dazu notwendigen Schritte:
Ersetzen der Sounddateien
-Sicherungskopie von Gamedata/base/assets1.pk3 erstellen
-extrahiere Gamedata/base/assets1.pk3 in beliebigen Ordner (hier Assets1)
-kopiere alle Dateien und Ordner in Assets1/sound/chr_d/ nach Assets1/sound/chars/
-füge alle Dateien und Ordner in Assets1/ zu einem neuen zip-Archiv (keine Kompression, nur Speicherung) und benenne es in assets1.pk3 um
-kopiere assets1.pk3 nach Gamedata/base/ und überschreibe alte Version
Ersetzen der Textdateien
-Sicherungskopie von Gamedata/base/assets2.pk3 erstellen
-extrahiere Gamedata/base/assets2.pk3 in beliebigen Ordner (hier Assets2)
-in jeder Datei unter Assets2/strip/ muss nun "TEXT_LANGUAGE3" durch "TEXT_LANGUAGE1" ersetzt werden:
--ich hab das unter Linux mit einem Einzeiler gelöst:
for i in * ; do sed -i 's/TEXT_LANGUAGE3/TEXT_LANGUAGE1/g' $i ; done
--entweder ihr findet einen Weg das unter Windows (edit: z.B. damit) ebenso einfach zu bewerkstelligen oder ihr müsst die Suchen/Ersetzen-Funktion des Editors bemühen, dann aber für jede einzelne Datei
-füge alle Dateien und Ordner in Assets2/ zu einem neuen zip-Archiv (keine Kompression, nur Speicherung) und benenne es in assets2.pk3 um
-kopiere assets2.pk3 nach Gamedata/base/ und überschreibe alte Version
Ersetzen der Videodateien
tl;dr: es müssen noch zwei Videos mit deutschen Tonspuren versehen werden (dazu wird ffmpeg (unter Linux) benutzt. Die Videos sind ziemlich kurz, wer also vorm Reencodieren zurückschreckt bzw. das nötige tool vermisst, der kann getrost zu "Einstellungen in Konfigurationsdatei" springen. Ansonsten gehts bei den Bindestrichen weiter.
Es gibt im Spiel zwei Cinematics (werden nach Tavions Niederlage gezeigt), in der Gespräche vorkommen. Im Englischen werden die Videos mit integrierter englischer Tonspur wiedergegeben. Bei deutscher Spracheinstellung gibts kein deutsches Video, sondern nur eine mp3-Datei, welche mit dem Originalvideo abgespielt wird. Leider wird bei englischer Spracheinstellung (also auch der bisher angewandten Methode des Ersetzens) diese deutsche Tonspur nicht gelesen und ich habe auch kein nichtbinäres Skript o.ä. gefunden, das das regelt. Uns bleibt demnach nur die Möglichkeit eine Version der Videos mit deutscher Tonspur zu erstellen und die alten zu überschreiben.
Nach ärgerlichen, fruchtlosen Versuchen, dies mit dem eigentlich dafür geschaffenen "Quake Video Maker" zu lösen, habe ich mit ffmpeg (unter Linux, gibts aber auch für Windows, sollte also prinzipiell machbar sein) eine bessere Möglchkeit dafür gefunden. Hier also die nötigen Schritte:
-Sicherungskopie von Gamedata/base/assets0.pk3 erstellen
-extrahiere Gamedata/base/assets0.pk3 in beliebigen Ordner (hier Assets0)
-kopiere Assets0/video/jk05.roq und Assets0/video/jk06.roq in in beliebigen Ordner (hier Videosdeutsch)
-kopiere Assets1/sound/char_d/video/cinematic_05.mp3 und Assets1/sound/char_d/video/cinematic_06.mp3 nach Videosdeutsch/ (das Verzeichnis Assets1 solltet ihr ja von vorhin noch haben)
-wechselt nach Videosdeutsch/ und führt die folgenden ffmpeg-Befehle aus:
ffmpeg -i jk05.roq -i cinematic_5.mp3 -ar 22050 -acodec roq_dpcm -ac 2 -qscale 0 -aq 0 -shortest -map 0:1 -map 1:0 jk05_deutsch.roq
ffmpeg -i jk06.roq -i cinematic_6.mp3 -ar 22050 -acodec roq_dpcm -ac 2 -qscale 0 -aq 0 -shortest -map 0:1 -map 1:0 jk06_deutsch.roq
-überschreibe die Originalvideodateien in Assets0/video/ mit den eben erzeugten deutschen Videos
-füge alle Dateien und Ordner in Assets0/ zu einem neuen zip-Archiv (keine Kompression, nur Speicherung) und benenne es in assets0.pk3 um
-kopiere assets0.pk3 nach Gamedata/base/ und überschreibe alte Version
Einstellungen in Konfigurationsdatei
-ändere folgende Einstellungen (oder füge sie bei Nichtvorhandensein hinzu) in Gamedata/base/jk2config.cfg
seta ui_iscensored "0"
seta sp_language "0"
seta s_language "english"
seta g_dismemberment "3" (bestimmt, welche Teilungen möglich sind: 0-keine 1-Hände,Arme 2-plus Beine 3-plus Torso und Kopf)
seta g_dismemberProbabilities "0" (dem Worlaut nach sollte dieser Wert die Wahscheinlichkeit für Teilungen bestimmen, mit 0 gibts aber anscheinend mehr Teilungen als mit positiven Werten)
optional:
seta helpusobi "1" (ermöglicht die Eingabe von Cheats, wird von der folgenden Option benötigt)
seta g_saberRealisticCombat "1" (Lichtschwert tötet schon bei Berührung, also auch mehr Teilungen, auch an Leichen)
Wer wieder zur englischen Sprachausgabe wechseln möchte, muss einfach nur die originalen assets*.pk3 ins base-Verzeichnis zurückkopieren.
Post edited May 22, 2020 by russellskanne