i18n: transcribe missing english subtitles (#3199)

Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
Co-authored-by: ManDude <7569514+ManDude@users.noreply.github.com>
Co-authored-by: blahpy <68830177+blahpy@users.noreply.github.com>
This commit is contained in:
Tyler Wilding 2023-11-18 14:06:01 -05:00 committed by GitHub
parent cca829aecd
commit 014cbb04da
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 22328 additions and 38 deletions

View file

@ -12,3 +12,13 @@ files:
- "en-GB" - "en-GB"
- source: /game/assets/jak2/text/game_custom_text_en-US.json - source: /game/assets/jak2/text/game_custom_text_en-US.json
translation: /game/assets/jak2/text/game_custom_text_%locale%.json translation: /game/assets/jak2/text/game_custom_text_%locale%.json
- source: /game/assets/jak1/subtitle/subtitle_lines_en-US.json
translation: /game/assets/jak2/subtitle/subtitle_lines_%locale%.json
excluded_target_languages:
- "fr"
- "de"
- "es-ES"
- "it"
- "ja"
- "ko"
- "en-GB"

View file

@ -1,5 +1,40 @@
{ {
"cutscenes": {}, "cutscenes": {},
"other": {}, "other": {},
"speakers": {} "speakers": {
"agent": "Agent",
"ashelin": "Ashelin",
"baron": "Baron Praxis",
"brutter": "Brutter",
"citizen-female": "Citizen",
"citizen-male": "Citizen",
"computer": "Computer",
"darkjak": "Dark Jak",
"daxter": "Daxter",
"errol": "Erol",
"grim": "Grim",
"guard": "Krimzon Guard",
"guard-a": "Guard A",
"guard-b": "Guard B",
"jak": "Jak",
"jinx": "Jinx",
"keira": "Keira",
"keira-before-class-3": "Mechanic",
"kid": "Kid",
"kor": "Kor",
"krew": "Krew",
"metalkor": "Metal Kor",
"mog": "Mog",
"onin": "Onin",
"oracle": "Oracle",
"pecker": "Pecker",
"precursor": "Precursor",
"samos": "Samos",
"sig": "Sig",
"tess": "Tess",
"torn": "Torn",
"vin": "Vin",
"youngsamos": "Young Samos",
"youngsamos-before-rescue": "Samos"
}
} }

View file

@ -1,5 +1,40 @@
{ {
"cutscenes": {}, "cutscenes": {},
"other": {}, "other": {},
"speakers": {} "speakers": {
"agent": "Agent",
"ashelin": "Ashelin",
"baron": "Baron Praxis",
"brutter": "Brutter",
"citizen-female": "Citizen",
"citizen-male": "Citizen",
"computer": "Computer",
"darkjak": "Dark Jak",
"daxter": "Daxter",
"errol": "Erol",
"grim": "Grim",
"guard": "Krimzon Guard",
"guard-a": "Guard A",
"guard-b": "Guard B",
"jak": "Jak",
"jinx": "Jinx",
"keira": "Keira",
"keira-before-class-3": "Mechanic",
"kid": "Kid",
"kor": "Kor",
"krew": "Krew",
"metalkor": "Metal Kor",
"mog": "Mog",
"onin": "Onin",
"oracle": "Oracle",
"pecker": "Pecker",
"precursor": "Precursor",
"samos": "Samos",
"sig": "Sig",
"tess": "Tess",
"torn": "Torn",
"vin": "Vin",
"youngsamos": "Young Samos",
"youngsamos-before-rescue": "Samos"
}
} }

File diff suppressed because it is too large Load diff

View file

@ -1,5 +1,40 @@
{ {
"cutscenes": {}, "cutscenes": {},
"other": {}, "other": {},
"speakers": {} "speakers": {
"agent": "Agent",
"ashelin": "Ashelin",
"baron": "Baron Praxis",
"brutter": "Brutter",
"citizen-female": "Citizen",
"citizen-male": "Citizen",
"computer": "Computer",
"darkjak": "Dark Jak",
"daxter": "Daxter",
"errol": "Erol",
"grim": "Grim",
"guard": "Krimzon Guard",
"guard-a": "Guard A",
"guard-b": "Guard B",
"jak": "Jak",
"jinx": "Jinx",
"keira": "Keira",
"keira-before-class-3": "Mechanic",
"kid": "Kid",
"kor": "Kor",
"krew": "Krew",
"metalkor": "Metal Kor",
"mog": "Mog",
"onin": "Onin",
"oracle": "Oracle",
"pecker": "Pecker",
"precursor": "Precursor",
"samos": "Samos",
"sig": "Sig",
"tess": "Tess",
"torn": "Torn",
"vin": "Vin",
"youngsamos": "Young Samos",
"youngsamos-before-rescue": "Samos"
}
} }

View file

@ -158,15 +158,6 @@
"asha054": [ "asha054": [
"On va se les faire !" "On va se les faire !"
], ],
"asha055": [
"Ugh..."
],
"asha056": [
"Hm-agh..."
],
"asha057": [
"Hah...agh..."
],
"asht002": [ "asht002": [
"Vous aviez raison, Jak. Ce que fait mon père est mal.", "Vous aviez raison, Jak. Ce que fait mon père est mal.",
"Je veux vous aider. Nous pourrons peut-être l'arrêter si", "Je veux vous aider. Nous pourrons peut-être l'arrêter si",
@ -449,9 +440,6 @@
"bf094": [ "bf094": [
"Allez approche !" "Allez approche !"
], ],
"bf095": [
"To the end!"
],
"bf098": [ "bf098": [
"ARGHHH !" "ARGHHH !"
], ],
@ -668,9 +656,6 @@
"cityv009": [ "cityv009": [
"Ravie de vous voir vivant." "Ravie de vous voir vivant."
], ],
"cityv010": [
"Security clearance granted."
],
"cityv011": [ "cityv011": [
"Entrée refusée. Vous n'avez pas l'autorisation." "Entrée refusée. Vous n'avez pas l'autorisation."
], ],

View file

@ -1,5 +1,40 @@
{ {
"cutscenes": {}, "cutscenes": {},
"other": {}, "other": {},
"speakers": {} "speakers": {
"agent": "Agent",
"ashelin": "Ashelin",
"baron": "Baron Praxis",
"brutter": "Brutter",
"citizen-female": "Citizen",
"citizen-male": "Citizen",
"computer": "Computer",
"darkjak": "Dark Jak",
"daxter": "Daxter",
"errol": "Erol",
"grim": "Grim",
"guard": "Krimzon Guard",
"guard-a": "Guard A",
"guard-b": "Guard B",
"jak": "Jak",
"jinx": "Jinx",
"keira": "Keira",
"keira-before-class-3": "Mechanic",
"kid": "Kid",
"kor": "Kor",
"krew": "Krew",
"metalkor": "Metal Kor",
"mog": "Mog",
"onin": "Onin",
"oracle": "Oracle",
"pecker": "Pecker",
"precursor": "Precursor",
"samos": "Samos",
"sig": "Sig",
"tess": "Tess",
"torn": "Torn",
"vin": "Vin",
"youngsamos": "Young Samos",
"youngsamos-before-rescue": "Samos"
}
} }

View file

@ -1,5 +1,40 @@
{ {
"cutscenes": {}, "cutscenes": {},
"other": {}, "other": {},
"speakers": {} "speakers": {
"agent": "Agent",
"ashelin": "Ashelin",
"baron": "Baron Praxis",
"brutter": "Brutter",
"citizen-female": "Citizen",
"citizen-male": "Citizen",
"computer": "Computer",
"darkjak": "Dark Jak",
"daxter": "Daxter",
"errol": "Erol",
"grim": "Grim",
"guard": "Krimzon Guard",
"guard-a": "Guard A",
"guard-b": "Guard B",
"jak": "Jak",
"jinx": "Jinx",
"keira": "Keira",
"keira-before-class-3": "Mechanic",
"kid": "Kid",
"kor": "Kor",
"krew": "Krew",
"metalkor": "Metal Kor",
"mog": "Mog",
"onin": "Onin",
"oracle": "Oracle",
"pecker": "Pecker",
"precursor": "Precursor",
"samos": "Samos",
"sig": "Sig",
"tess": "Tess",
"torn": "Torn",
"vin": "Vin",
"youngsamos": "Young Samos",
"youngsamos-before-rescue": "Samos"
}
} }

File diff suppressed because it is too large Load diff

View file

@ -463,14 +463,18 @@ void SubtitleEditor::draw_subtitle_options(GameSubtitleSceneInfo& scene, bool cu
if (!line_meta.merge) { if (!line_meta.merge) {
if (ImGui::BeginCombo( if (ImGui::BeginCombo(
"Speaker", "Speaker",
m_subtitle_db.m_banks[m_current_language]->m_speakers.at(line_speaker).c_str())) { fmt::format("{} ({})",
m_subtitle_db.m_banks[m_current_language]->m_speakers.at(line_speaker),
line_speaker)
.c_str())) {
for (const auto& [speaker_id, localized_name] : for (const auto& [speaker_id, localized_name] :
m_subtitle_db.m_banks[m_current_language]->m_speakers) { m_subtitle_db.m_banks[m_current_language]->m_speakers) {
const bool is_selected = speaker_id == line_speaker; const bool is_selected = speaker_id == line_speaker;
if (is_selected) { if (is_selected) {
ImGui::SetItemDefaultFocus(); ImGui::SetItemDefaultFocus();
} }
if (ImGui::Selectable(localized_name.c_str(), is_selected)) { if (ImGui::Selectable(fmt::format("{} ({})", localized_name, speaker_id).c_str(),
is_selected)) {
line_meta.speaker = speaker_id; line_meta.speaker = speaker_id;
} }
} }
@ -524,14 +528,16 @@ void SubtitleEditor::draw_new_scene_line_form() {
current_speaker = current_speaker =
m_subtitle_db.m_banks[m_current_language]->m_speakers.at(m_current_scene_speaker); m_subtitle_db.m_banks[m_current_language]->m_speakers.at(m_current_scene_speaker);
} }
if (ImGui::BeginCombo("Speaker", current_speaker.c_str())) { if (ImGui::BeginCombo("Speaker",
fmt::format("{} ({})", current_speaker, m_current_scene_speaker).c_str())) {
for (const auto& [speaker_id, localized_name] : for (const auto& [speaker_id, localized_name] :
m_subtitle_db.m_banks[m_current_language]->m_speakers) { m_subtitle_db.m_banks[m_current_language]->m_speakers) {
const bool is_selected = speaker_id == m_current_scene_speaker; const bool is_selected = speaker_id == m_current_scene_speaker;
if (is_selected) { if (is_selected) {
ImGui::SetItemDefaultFocus(); ImGui::SetItemDefaultFocus();
} }
if (ImGui::Selectable(localized_name.c_str(), is_selected)) { if (ImGui::Selectable(fmt::format("{} ({})", localized_name, speaker_id).c_str(),
is_selected)) {
m_current_scene_speaker = speaker_id; m_current_scene_speaker = speaker_id;
} }
} }

View file

@ -29,7 +29,7 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defconstant PC_SUBTITLE_FILE_SIZE (* 192 1024)) ;; 192K heap for subtitles. adjust later if necessary. (defconstant PC_SUBTITLE_FILE_SIZE (* 384 1024)) ;; 384K heap for subtitles. adjust later if necessary.
(defconstant PC_SUBTITLE_FILE_NAME "subti2") (defconstant PC_SUBTITLE_FILE_NAME "subti2")
(defconstant PC_SUBTITLE_QUEUE_SIZE 5) ;; up to 8 things that display subtitles can be detected at once (defconstant PC_SUBTITLE_QUEUE_SIZE 5) ;; up to 8 things that display subtitles can be detected at once
(defconstant PC_SUBTITLE_QUEUE_MAX_LINES 2) ;; up to 2 lines can be queued per queueable thing (defconstant PC_SUBTITLE_QUEUE_MAX_LINES 2) ;; up to 2 lines can be queued per queueable thing