LostArtefacts / TR1X

Open source re-implementation of Tomb Raider 1 (1996), along with additional enhancements and bugfixes
https://lostartefacts.dev/
GNU General Public License v3.0
579 stars 36 forks source link

In-game and cutscene subtitles #382

Open aredfan opened 2 years ago

aredfan commented 2 years ago

Adding a subtitles option to TR1X would be of benefit to either the hard of hearing, or others who might want to use the option anyway. Is this something the team would be happy to work on, even as long term goal?


Playable levels with dialogue:

Cutscenes with dialogue:

Tracks 44 and 46 are unused.


Music: Track ID Language Transcript
22 English NATLA: Back again?
LARA: And you? For a grand re-opening I assume?
NATLA: Evolution's in a rut. Natural selection at an all-time low. Shipping out fresh meat will incite territorial rages again; will strengthen and advance us. Even create new breeds.
LARA: A kind of evolution on steroids then?
NATLA: A kick in the pants. Those runts Qualopec and Tihocan had no idea. The cataclysm of Atlantis struck a race of langering wimps; plummeted them to the very basics of survival again. It shouldn't happen like that.
LARA: Or like this.
ANNOUNCEMENT: Hatching commences in fifteen seconds.
NATLA: Too late for abortions now!
LARA: Not without the heart of the operation!
NATLA: No!
ANNOUNCEMENT: Ten.
ANNOUNCEMENT: Five, four, three, two, one.
French
German NATLA: Na, wieder da?
LARA: Sie auch! Zur feierlichen Wiedereröffnung nehm' ich an.
NATLA: Die Evolution steckt in der Sackgasse. Kaum noch natürliche Auslese. Die Ausbreitung neuer frischer Wesen, wird neue Gebietskämpfe anregen, uns stärken und voranbringen, sogar neue Rassen erschaffen.
LARA: Eine Art gedopte Evolution also.
NATLA: Ja, ein Tritt in den Hintern. Die albernen Wichte Qualopec und Tihocan haben ja keine Ahnung. Der Untergang von Atlantis hat eine Rasse träger Schwächlinge getroffen, und sie zu den Ursprüngen des Überlebens zurückgeworfen. Dies ist was die Welt braucht.
LARA: Nicht auf diese Art.
ANNOUNCEMENT: Ausschlüpfen beginnt in 15 Sekunden.
NATLA: Zu spät für eine Abtreibung.
LARA: Nicht ohne das Herz der Operation.
NATLA: Nein!!
ANNOUNCEMENT: 10
ANNOUNCEMENT: 5
Japanese
23 English LARA: Well, you have my total attention now. I'm not quite sure if I've got yours though. Hello?
LARSON: I'll heel and hide ya to a barn door yet!
LARA: Of course!
LARSON: You and that driveling piece of the Scion. You want to keep it so bad? I'll harness it right up yer...
LARA: Wait! We're talking about the artefact here?
LARSON: Damn straight we are! Right up...
LARA: Hold on! I'm sorry. This piece you say. Where's the rest?
LARSON: Miss Natla put Pierre DuPont on that trail.
LARA: And where is that?
LARSON: Ha! You ain't fast enough for him.
LARA: So you think all this talking is just holding me up.
LARSON: I don't know where his little jack-rabbit-frog-legs are runnin' him to. You'll have to ask Miss Natla.
LARA: Thank you. I will.
French
German LARA: Tja, jetzt haben Sie meine volle Aufmerksamkeit. Aber ob ich auch Ihre habe? Hallo?!
LARSON: Wart's ab. Wenn ich dich in die Finger kriege.
LARA: Natürlich...
LARSON: Du und das dämliche Stück vom Scion. Wenn du's unbedingt behalten willst stopf ich dir's in deinen verdammten...
LARA: Moment, sprechen wir gerade über das Artefakt?
LARSON: Darauf kannst du Gift nehmen.
LARA: Moment, tut mir leid, Sie sagten "Stück", wo ist dann der Rest?
LARSON: Miss Natla hat Pierre Dupont darauf angesetzt.
LARA: Und wo sucht er danach?
LARSON: Hah! Den erwischst du nie.
LARA: Sie meinen also das Gerede hier hält mich nur auf?
LARSON: Ähh.. keine Ahnung wo seine krummen Ganovenbeine ihn hingebracht haben. Da musst... äh müssen Sie Miss Natla fragen.
LARA: Danke, das werd' ich tun.
Japanese
25 English "Here lies Tihocan, one of the two just rulers of Atlantis, who even after the curse of the continent, had tried to keep rule here in these barren other lands. He died without child and his knowledge has no heritage. Look over us kindly, Tihocan."
French
German "Hier ruht Tihocan. Einer der zwei gerechten Herscher von Atlantis. Die selbst nach der Heimsuchung des Erdteils, trachteten in diesem kargen fremden Landgut zu regieren. Er starb ohne Kind, und sein Wissen wurde nicht weitergegeben. Sei gnädig mit uns, Tihocan."
Japanese
26 English Welcome to my home! I’ll take you on a guided tour.
French
German Willkommen bei mir daheim. Lass uns einen kleinen Rundgang machen.
Japanese
27 English Use the D-Pad to go into the music room.
French
German Benutz das Steuerkreuz um ins Musikzimmer zu gehen.
Japanese
28 English Okay. Let’s do some tumbling. Press the jump button.
French
German Okay, dann lass uns ein bisschen herumtoben. Drück die Sprung-Taste.
Japanese
29 English Now press it again and quickly press one of the directions, and I’ll jump that way.
French
German Jetzt drück sie nochmal und dann schnell eine der Richtungstasten, dann springe ich in diese Richtung.
Japanese
30 English Ah the main hall. Sorry about the crates. I’m having some things put into storage and the delivery people haven’t been yet.
French
German Aah, die große Halle. Tut mir leid wegen der Kisten. Ich habe ein paar Sachen eingelagert und weiß nicht wohin damit.
Japanese
31 English Run up to a crate, and while still pressing forward, press action, and I’ll vault up onto it.
French
German Lauf auf eine Kiste zu und während Du das Steuerkreuz hochgedrückt hältst, drück die Handlungstaste, dann kletter' ich rauf.
Japanese
32 English This used to be the ballroom, but I’ve converted it into my own personal gym. What do you think? Well, let’s do some exercises.
French
German Das war mal der Ballsaal, aber ich benutze ihn als Turnhalle. Wie gefällt sie Dir? Dann lass uns mal ein paar Lockerungsübungen machen.
Japanese
33 English I don’t actually run everywhere. When I want to be careful, I walk. Hold down the walk button, and walk to the white line.
French
German Ich laufe natürlich nicht überall hin. Wenn ich besonders vorsichtig sein möchte gehe ich. Halt' die Geh-Taste gedrückt und beweg' mich zum weißen Strich.
Japanese
34 English With the walk button down, I won’t fall off even if you try to make me. Go on, try it.
French
German Während du die Geh'-Taste gedrückt hältst kann ich nicht herunterfallen. Selbst, wenn Du versuchst mich über die Kante zu führen - probier' es aus.
Japanese
35 English If you want to look around, press and hold the look button, then press in the direction you want to look.
French
German Wenn Du Dich umsehen willst halt' die Seh'-Taste gedrückt und drück' das Steuerkreuz in die gewünschte Blickrichtung.
Japanese
36 English If a jump is too far for me, I can grab the ledge and save myself from a nasty fall. Walk to the edge with the white line until I won’t go any further. Then press jump immediately followed by forward, and while I’m in the air, press and hold the action button.
French
German Wenn ein Sprung zu weit für mich ist kann ich mich an der Kante festklammern damit ich nicht herunterfalle. Geh' zur Kante mit dem weißen Strich bis ich stehen bleibe. Drück' dann die Sprung-Taste und gleich danach das Steuerkreuz hoch. Drück' jetzt während ich noch in der Luft bin die Handlungs-Taste und halte sie gedrückt.
Japanese
37 English Press forward, and I’ll climb up.
French
German Drück' das Steuerkreuz hoch damit ich hochklettere.
Japanese
38 English If I do a running jump, I can make a jump like that, no problem.
French
German Wenn ich Anlauf nehme bekomm' ich so einen Sprung problemlos hin.
Japanese
39 English Walk to the edge with the white line until I stop. Then let go of walk and tap backwards to give me a run-up. Press forward, and almost immediately press and hold the jump button. I won’t actually jump until the last minute.
French
German Geh' zur Kante mit dem weißen Strich bis ich stehen bleibe. Lass dann die Geh'-Taste los und drück das Steuerkreuz kurz hinunter. Jetzt nehm' ich Anlauf. Drück das Steuerkreuz hoch und sofort danach die Sprung-Taste. Halt' die Sprung-Taste gedrückt - ich springe erst im letzten Moment.
Japanese
40 English Right, this is a really big one. To do a running jump exactly as before, except while I’m in the air, press and hold the action button to make me grab the ledge.
French
German So, das ist ein richtig Großer. Leite den Sprung genauso ein wie eben erklärt. Aber wenn ich in der Luft bin drückst Du die Handlungs-Taste und hältst sie gedrückt, dann kann ich mich an die Kante klammern.
Japanese
41 English Nice!
French
German Toll!
Japanese
42 English Try to vault up here. Press forward and hold action.
French
German Versuch' mal hier hochzuklettern. Drück' das Steuerkreuz hoch und dann die Handlungstaste.
Japanese
43 English I can’t climb up because the gap is too small. But press right, and I’ll shimmy sideways until there is room. Then press forward.
French
German Ich kann hier nicht hochklettern weil die Lücke zu schmal ist. Wenn Du aber das Steuerkreuz nach rechts drückst hangele ich mich seitlich durch bis genug Platz zum hochziehen ist.
Japanese
44 English Great! If there is a long drop and I don’t want to hurt myself jumping off, I can let myself down carefully.
French
German Boah.. wenn es steil bergab geht und ich mich beim Absprung nicht verletzen will, kann ich auch vorsichtig hinunterklettern.
Japanese
45 English Tap backwards, and I’ll jump off backwards. Immediately press and hold the action button, and I’ll grab the ledge on the way down.
French
German Drück' das Steuerkreuz nach unten damit ich rückwärts hinunterspringe. Drück' dann sofort die Hangluns-Taste und halte sie gedrückt, damit ich mich im Fallen an der Kante festklammere.
Japanese
46 English Then let go.
French
German Jetzt lass los.
Japanese
47 English Let’s go for a swim.
French
German Lass uns schwimmen gehen.
Japanese
48 English The jump button and the directions move me around underwater.
French
German Mit der Sprung-Taste und dem Steuerkreuz, steuerst Du mich unter Wasser.
Japanese
49 English Ah, air! Just use forward, and left, and right, to manoeuvre around on the surface. Press jump to dive down for another swim about, or go to the edge and press action to climb out.
French
German Ah.. Luft. Drück' einfach das Steuerkreuz nach vorne, links und rechts, um an der Oberfläche zu bewegen. Drück' die Sprung-Taste wenn ich noch einmal abtauchen soll, oder geh' zur Kante und drück' die Handlungs-Taste damit ich aus dem Wasser steige.
Japanese
50 English Right. Now I better take off these wet clothes.
French
German So... jetzt lege ich erstmal die nassen Sachen ab.
Japanese
51 English BALD MAN: Say ‘cheese’!
French
German BALD MAN: Bitte lächeln!
Japanese
52 English COWBOY: Ain't nothin' personal.
French
German COWBOY: Ist nichts Persönliches.
Japanese
53 English LARSON: I still gotta pain in my brain from ya and it's tellin' me funny ideas now like to shoot you to hell!
French
German LARSON: Sie machen mir immer noch Kopfschmerzen Lady. Ein kleiner Vogel sagt mir, ich soll Sie zur Hölle schicken!
Japanese
54 English NATLA: You can't bump off me and my brood so easy, Lara!
French
German NATLA: So leicht wirst du mich und meine Brut nicht los, Lara.
Japanese
55 English PIERRE: A little late for the prize giving, no? Still, it is the taking part which counts.
French
German PIERRE: Ein bisschen spät dran für die Preisverleihung, non? Aber, dabei sein ist ja alles! Obwohl das nicht jeder so sieht. Jammerschade aber... hmm, c'est la vie.
Japanese
56 English SKATER BOY: You firin' at me? You firing at me? Huh? Ain't nobody else here, so you must be firin' at me!
French
German SKATER BOY: Du schießt auf mich! Du schießt auf mich Puppe, hä?! Hier ist kein Anderer, du musst auf mich schießen!
Japanese
Audio samples: Track ID Language Transcript
157 10C English BALD MAN: Scum sucker!
French (Not translated)
German (Not translated)
Japanese (Not translated)
175 GYM English Use the direction keys to go into the music room.
French
German Benutz die Richtungstasten um ins Musikzimmer zu gehen.
Japanese

TR1 transcripts available online:

Richard-L commented 2 years ago

I think this would be a welcome addition. OpenLara more or less sets the standard with its implementation of this feature.

Feels low priority to me, but it's nice.

rr- commented 2 years ago

For me it's definitely low priority. Needs hardcoding a lot of things, something that we avoid doing and work to eliminate.

walkawayy commented 2 years ago

Well the main point of the project is to play the OG game, so I don't think hardcoding these would really be a major problem. Maybe we could include a subtitles folder with text files to match a cutscene in the gameflow. That way custom builders could remove / add subtitles.

But yes it's low priority.

rr- commented 2 years ago

I think we could augment loop_cine and play_fmv by adding a new subtitles key that holds an array of subtitle text and timing information.

Offtopic: I think having loop_game separate from stop_game (same with cine) is confusing and useless. How about we do it like this

-start_game
-remove_guns
-loop_game
-stop_game
+load_level
+remove_guns
+play_level

?

aredfan commented 2 years ago

I understand the team have bigger fish to fry atm, but thank you guys for hearing me out :)

I thought it might be a good idea to add links to fan-made transcripts in case the team would like them for reference in the future.

It's worth pointing out that Stella's transcripts are written to be comprehensible so it's not always accurate, for example Larson says "you" instead of "ya" in the 'Cafe' transcript.

aredfan commented 2 years ago

Removed.

Richard-L commented 2 years ago

These are quite sweet, but subtitles in-game for gym, random lines in between like "you firin' at me?", cutscenes, are another thing. Personally I believe the gym is the most important moment, as it's the game's tutorial and ideally helps grow interest among new players.

aredfan commented 2 years ago

These are quite sweet, but subtitles in-game for gym, random lines in between like "you firin' at me?", cutscenes, are another thing. Personally I believe the gym is the most important moment, as it's the game's tutorial and ideally helps grow interest among new players.

Thank you, and I agree with you on the gym being important for helping new players to become familiar with the controls.

Hopefully there will be subtitles for all dialogue game-wise. I realise this feature probably won't happen for a while but I'm excited to see what the team can do in the future.

aredfan commented 1 year ago

This is something I noticed in openlara: the subtitles utilises drop-shadow which makes the text easier to read. A nice touch imo.

Screenshot

Richard-L commented 1 year ago

I do love his realisation of the feature yeah. Just not sure it'll look right with the very vanilla aesthetic of the game TR1M goes for.

Wonder if a textbox like you'd have in the main menu under text would work.

aredfan commented 1 year ago

That's fair, I agree it's important to keep to the TR1 aesthetics when possible. The textbox suggestion could work as it has a semi-transparent black background so subtitles would have better visibility when placed over that.

Kappa971 commented 6 months ago

Hi, I translated some things in Italian:

Unfortunately it is not possible to add the rest of the subtitles.

aredfan commented 6 months ago

Hey! The attached Italian menu texts should be added to #715.

I've also made English subtitles for FMVs in the past and it's a lot of work, so well done for doing that too.

Whilst this issue is for in-game subtitles and #1097 is for FMV subtitles, ideally we should have everything in text. I'd also point to #885 which is useful for keeping track of all localization issues in one place.

Kappa971 commented 6 months ago

Hey! The attached Italian menu texts should be added to #715.

Done.

I've also made English subtitles for FMVs in the past and it's a lot of work, so well done for doing that too.

Fortunately, much of the work was done by an Italian group (Load Word Team) of enthusiasts for the PS1 version (translation and sync). I transcribed, with some modifications, the already translated texts into the FMVs of the PC version, I hope there are no problems with this (on their site, the translation is free and they specified that they will not support other platforms).

Whilst this issue is for in-game subtitles

This is currently the "most serious" shortcoming for those who don't have dubbing in their own language. Tomb Raider 1 is only dubbed and translated in English, French and German (fortunately from Tomb Raider 2 onwards they added other languages for audio and text like Italian, Spanish from Tomb Raider 3, etc).

and #1097 is for FMV subtitles

Done.

ideally we should have everything in text.

I have the SRT/SSA subtitle files (they are also included in the FMV package), it shouldn't be difficult to transcribe everything to TR1X in the future. There are also the scaled videos without subtitles for this eventuality.

I'd also point to #885 which is useful for keeping track of all localization issues in one place.

Thank you.

Kappa971 commented 5 months ago

It is necessary that the menu strings are separated from the files in the cfg folder and moved to external files, otherwise each new version of TR1X will replace the translated files. I'm not a programmer so I can't help you with this, but it could be structured like this: Lang/[LANG]/menu.txt (the extension is just an example) Lang/[LANG]/subtitles-[GAME].txt

Another problem is the use of special characters (e.g. à, ì, etc), but I imagine this could be addressed later.