Graoumf Posted July 2, 2010 Share Posted July 2, 2010 (edited) Hello, The french translation was sent to cmorgan; I don't know if you're the right person, cmorgan... I saw you were moderator of this forum, if it's not the case I guess you can contact the right ones. I sent you a modified tp2 file with the following changes: // Readme time is *before* installing // Isaya : use a language specific readme, if available, otherwise the default (english) // See Widescreen mod for other example of that README ~level1npcs/readme-level1npcs-%LANGUAGE%.html~ ~level1npcs/readme-level1npcs.html~ Indeed, we translated the ReadMe. LANGUAGE ~Francais (traduit par Graoumf, des d'Oghmatiques)~ ~french~ ~level1npcs/languages/french/setup.tra~ ACTION_IF (("scc" = 0x1) OR ("sdc" = 0x1) OR ("tmc" = 0x1) OR ("wpc" = 0x1) OR ("qnb" != 0x0) OR ("ctc" = 0x1) OR ("crc" = 0x1) OR ("fcc" = 0x1)) THEN BEGIN PRINT @200021 SILENT ACTION_IF (~%LANGUAGE%~ STRING_EQUAL_CASE ~ENGLISH~) THEN BEGIN OUTER_SPRINT ~unusability_match~ ~\(Not [Uu]sable [Bb]y\|Unusable [Bb]y\|Only [Uu]sable [Bb]y\)~ OUTER_SPRINT ~NOT_USABLE_BY~ ~Not Usable By:~ OUTER_SPRINT ~NEUTRAL_OR_EVIL~ ~Any Neutral or Evil Character~ OUTER_SPRINT ~DRUID~ ~Druid~ OUTER_SPRINT ~CLERIC~ ~Cleric~ OUTER_SPRINT ~MAGE~ ~Mage~ OUTER_SPRINT ~THIEF~ ~Thief~ OUTER_SPRINT ~FIGHTER~ ~Fighter~ OUTER_SPRINT ~BARD~ ~Bard~ END ELSE BEGIN ACTION_IF (~%LANGUAGE%~ STRING_EQUAL_CASE ~FRENCH~) THEN BEGIN OUTER_SPRINT ~unusability_match~ ~\(Non utilisable par\|Inutilisable par\|Utilisable uniquement par\)~ OUTER_SPRINT ~NOT_USABLE_BY~ ~Non utilisable par :~ OUTER_SPRINT ~NEUTRAL_OR_EVIL~ ~Tout personnage mauvais ou neutre~ OUTER_SPRINT ~DRUID~ ~Druide~ OUTER_SPRINT ~CLERIC~ ~Clerc~ OUTER_SPRINT ~THIEF~ ~Voleur~ OUTER_SPRINT ~FIGHTER~ ~Guerrier~ OUTER_SPRINT ~MAGE~ ~Mage~ OUTER_SPRINT ~BARD~ ~Barde~ END END I guess there is some others improvements to do with others languages for the last code. And there is also some others suggestions in the txt file "Ameliorations tp2". Edited July 2, 2010 by Graoumf Quote Link to comment
Miloch Posted September 25, 2010 Share Posted September 25, 2010 French and Spanish translations added locally (including nasty hardcoded tp2 funk). There are a bunch of new strings, but since they mainly consist of NPC names plus the existing "not found" strings, they don't really need to be (re)translated. Incidentally, the French readme seems to imply there's a German translation, but I don't think that's true (yet). Quote Link to comment
Graoumf Posted September 25, 2010 Share Posted September 25, 2010 Great! Thanks a lot! Incidentally, the French readme seems to imply there's a German translation, but I don't think that's true (yet). Indeed... it's a mistake. Can you fix it, please? Thanks again! Quote Link to comment
Miloch Posted September 26, 2010 Share Posted September 26, 2010 Indeed... it's a mistake. Can you fix it, please?Yes that's easy, but I'll be adding at least one section (on how to install via a batch file) so stay awake . Quote Link to comment
Miloch Posted October 1, 2010 Share Posted October 1, 2010 Graoumf, can you translate these WeiDU strings too? Your .tra only goes to @-1024 so the install might be a strange mix of French and English without these (more info here). @-1025 = ~]?[R]e-install, [N]o Change, ninstall, [Q]uit or choose one:~ @-1026 = ~]? [N]o, [Q]uit or choose one:~ @-1027 = ~ (currently installed)~ @-1028 = ~Would you like to display the components from [~ @-1029 = ~]? [Y]es, [N]o?~ @-1030 = ~]? choose one:~ @-1031 = ~]? [R]e-install, [N]o Change, [Q]uit or choose one:~ @-1032 = ~NOT INSTALLED DUE TO ERRORS~ @-1033 = ~INSTALLED WITH WARNINGS~ @-1034 = ~Would you like to display the readme? [Y]es [N]o~ @-1035 = ~Using Language~ (Oh and just one real string I added:)@129550 = ~Classic Adventures installed: not relevant~ Quote Link to comment
Miloch Posted October 2, 2010 Share Posted October 2, 2010 One more hardcoded string I've traified: @110850 = ~points remaining~If you notice any more, let me know and we will traify them. Quote Link to comment
Graoumf Posted October 2, 2010 Share Posted October 2, 2010 Here it is: @-1025= "] ?[R]einstaller, co[N]server, spprimer, [Q]uitter ou choisir un parmi :" @-1026= "] ? [N]e pas installer, [Q]uitter ou choisir un parmi :" @-1027= " (installe actuellement)" @-1028= "Souhaitez-vous afficher les composants de [" @-1029= "] ? [Y]Oui, [N]on? " @-1030= "] ? choisir un parmi :" @-1031= "] ? [R]einstaller, co[N]server, [Q]uitter ou choisir un parmi :" @-1032= "INSTALLATION ECHOUEE A CAUSE D'ERREURS" @-1033= "INSTALLATION AVEC DES ALERTES " @-1034= "Souhaitez-vous afficher les instructions (ReadMe) ? [Y]Oui [N]on" @-1035= "Dans la langue" @110850 = ~points restants~@129550 = ~Classic Adventures installe : non pertinent~ ------------------------------- About strings which are not traified, Isaya pointed out some suggestions in the txt file "Ameliorations tp2"; I don't know if you have it so here it is: The item usability patch is not relying on tra files but on checking the language and having the texts to patch or replace with directly in the TP2 file.In order for the French part to work, the code relative to French language shall be moved out from comments to the effective part of the installation process. I also suggest updating the current code to what follows, in order to better match the strings to search and replace: ACTION_IF (~%LANGUAGE%~ STRING_EQUAL_CASE ~FRENCH~) THEN BEGIN OUTER_SPRINT ~unusability_match~ ~\(Non utilisable par\|Inutilisable par\|Utilisable uniquement par\)~ OUTER_SPRINT ~NOT_USABLE_BY~ ~Non utilisable par :~ OUTER_SPRINT ~NEUTRAL_OR_EVIL~ ~Tout personnage mauvais ou neutre~ OUTER_SPRINT ~DRUID~ ~Druide~ OUTER_SPRINT ~CLERIC~ ~Clerc~ OUTER_SPRINT ~THIEF~ ~Voleur~ OUTER_SPRINT ~FIGHTER~ ~Guerrier~ OUTER_SPRINT ~MAGE~ ~Mage~ OUTER_SPRINT ~BARD~ ~Barde~ The "usable only by"/"Unusable by" cases are as numerous as in English, so several matches are required as well. But we don't have any uppercase/lowercase mismatch in French though. Move deprecation text ~It's broke.~, in component @300000, to the tra files. French translation is: ~Ce composant est foireux.~ The text is not currently added in the French tra file, as the string reference to use is unknown (@300002 maybe?). Quote Link to comment
Miloch Posted October 3, 2010 Share Posted October 3, 2010 Cheers. Yes, I got the stuff in Isaya's file already. We could probably move some of those hardcoded class references from the .tp2 to the .tra file. I don't know if that functionality existed when Nythrun first coded this, but OUTER_SPRINT ~whatever~ @500000 should work now. Not sure if it takes regexp syntax but I would guess so. I was mainly wondering if you see other English text while installing the mod (like "points remaining"). I'm guessing the kit and proficiency names show up in your language? Still not sure where strings like "None of these things interest me" come from - I don't see a reference either in the tp2 or the tra file. Quote Link to comment
erik Posted October 3, 2010 Share Posted October 3, 2010 I was mainly wondering if you see other English text while installing the mod (like "points remaining"). I'm guessing the kit and proficiency names show up in your language? Still not sure where strings like "None of these things interest me" come from - I don't see a reference either in the tp2 or the tra file. That one's actually a stock string, very elegant. Nythrun's way ahead of us, as usual. So that should be pre-translated already GET_STRREF 0x3f17 ~none_of_these_things~ (line 8397 of v1.3) Quote Link to comment
Isaya Posted October 3, 2010 Share Posted October 3, 2010 Cheers. Yes, I got the stuff in Isaya's file already. We could probably move some of those hardcoded class references from the .tp2 to the .tra file. I don't know if that functionality existed when Nythrun first coded this, but OUTER_SPRINT ~whatever~ @500000 should work now. Not sure if it takes regexp syntax but I would guess so. That would indeed be more flexible for the mod if that worked. Either we test or thebigg could tell. I was mainly wondering if you see other English text while installing the mod (like "points remaining"). I'm guessing the kit and proficiency names show up in your language? Still not sure where strings like "None of these things interest me" come from - I don't see a reference either in the tp2 or the tra file. This text is taken from the game, as are the kit names. This has a drawback: when they include special characters ("Prêtre"), they don't look good in the command window. Nevermind. Look for this block in the TP2 file COPY_EXISTING - ~kitlist.2da~ ~override~ GET_STRREF 0x3f17 ~none_of_these_things~ SPRINT ~kits_list~ ~0 %none_of_these_things%~ The text is indeed in the dialog.tlk file (0x3f17 = 16151) @16151 = ~None of these things interest me.~ I'm wondering whether Nythrun was forced by WeiDU to use hexadecimal for this StrRef or if she mastered it enough to write values in it effortlessly. Quote Link to comment
Miloch Posted October 4, 2010 Share Posted October 4, 2010 That one's actually a stock string, very elegant. Nythrun's way ahead of us, as usual. So that should be pre-translated alreadyYeah, I figured that out on my own not long after posting that. Wasn't a new technique to me, since I was already using it to avoid adding new .tra strings in order to display NPC stats on the initial screen (so you know what they are before you mess with them): I just didn't expect that particular string to be gleaned from dialog.tlk. This text is taken from the game, as are the kit names. This has a drawback: when they include special characters ("Prêtre"), they don't look good in the command window. Nevermind.Ugh. Yeah, that didn't occur to me, though it should have since I already converted the Spanish .tra to use DOS-based special characters for the install prompts. I could write some nasty code to substitute them in these cases. It should be (relatively) "easy" for French, Spanish, etc., but I hope no one translates this to Russian or something, else they'll be on their own there .I'm wondering whether Nythrun was forced by WeiDU to use hexadecimal for this StrRef or if she mastered it enough to write values in it effortlessly. There's no requirement or advantage that I know of to using hex values over plain decimal. Sometimes, it's easier to read when comparing code with IESDP values (which are in hex). I was just using Infinity Talker to get the string refs (which returns them in decimal); perhaps Nythrun used some other tool. Quote Link to comment
erik Posted October 4, 2010 Share Posted October 4, 2010 (edited) some nasty code to substitute them in these cases. It should be (relatively) "easy" for French, Spanish, etc., but I hope no one translates this to Russian or something, else they'll be on their own there . Hah. I'll have to try 日本語 one of these months. Edited October 4, 2010 by erik Quote Link to comment
Miloch Posted October 5, 2010 Share Posted October 5, 2010 (edited) This little piece of nastiness seems to pass mustard (yes I know it's "pass muster" - I like mustard better ): BACKUP ~0test/backup~ AUTHOR ~null~ BEGIN ~Test...~ NO_LOG_RECORD OUTER_SPRINT t1 ~Test Name: ¿Çüéâäàçêëè ÄÉôöù ÖÜáÃÂóúñÑ¡~ PRINT ~%t1% (Before Substitution)~ OUTER_PATCH_SAVE t1 ~%t1%~ BEGIN REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~¿~ ~¨~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~¡~ ~ÂÂ~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~à~ ~…~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~á~ ~ ~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~â~ ~Æ’~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ä~ ~„~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ç~ ~‡~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ê~ ~ˆ~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~è~ ~Ã…Â ~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~é~ ~‚~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ë~ ~‰~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ÃÂ~ ~¡~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ñ~ ~¤~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ó~ ~¢~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ô~ ~“~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ö~ ~â€Â~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ù~ ~â€â€~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ú~ ~£~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~ü~ ~ÂÂ~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~Ä~ ~Ž~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~Ç~ ~€~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~É~ ~ÂÂ~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~Ñ~ ~Â¥~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~Ö~ ~â„¢~ REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~Ãœ~ ~Å¡~ END PRINT ~%t1% (After Substitution)~ I have no doubt the forum will figure out a way to hose that code, but it works locally, and should cover French, Spanish, German, Italian. There's a few characters I don't have in my codepage, mainly uppercase accented characters - maybe those get converted to regular characters already. Hard for me to test without being able to display those characters. Hopefully not to much of those in the French/Spanish games. A side effect is this will convert a .tra file written with special characters into one viewable in WeiDU/DOS. If your .tra file contains both WeiDU text and in-game text, you'll have to split it and convert just the strings you need viewable in the DOS window. Edit: code seems to display more-or-less correctly if your browser is set to View > Encoding > Unicode/UTF-8. Edited October 5, 2010 by Miloch Quote Link to comment
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.