• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

WIP Spanish translation

Where are those nails defined?
How about GiveItem on the items defined above and below it?
Apparently the item simply doesn't exist which means it's failing to initialize.
You may be on to something. I tried to GiveItem "cartridges" and I get this in compile.c
Code:
WARNING!!! Item id = cartridges not implemented

So maybe there's something wrong with ammo items?

When I load straight to the last stage of the storyline, I don't have cartridges in my inventory but not having the item doesn't prevent me from shooting the revolver, that's what I didn't realize. I just checked the stage where you receive the revolver in the fort and indeed I don't receive the item "cartridges". But in this case, unlike with the nails, having the cartridges on you isn't a condition for the quest to proceed.
 
I made a completely new game using the zip from yesterday.

test1: started the GoldBug and gave myself the nails via console.c. No problem. :onya

test2: started the GoldBug and used the jumpstart "church" from Kidd in the wreck. Played through the mine and
to the church and all items including the nails were ok. This was the english version.:onya

test3 = test1 but spanish. Ok. :onya

test4 = test2 but spanish. Ok. :onya
 
I don't have cartridges in my inventory but not having the item doesn't prevent me from shooting the revolver
Is ammomod turned of? :shock

Because nails and cartridges both goes under this condition

Code:
if ( ENABLE_AMMOMOD )
 {

Try give yourself "pistolbullets".
 
Yes, I had it disabled. When I'm playtesting I tend to have most options in the "easy" setting to be able to progress quicker. If disabling ammomod can break storylines, there should probably be a warning, like there is with BuildingSet.

Yep, that was it. So many headaches and it was as simple as that:oops:
 
But all joy must be short-lived. Now a new unexpected glitch has arisen. In the last stage, when I'm carrying the treasure to the boat, when it's time to Jupiter to lift and carry the chest with the last bit ofr treasure, he just... doesn't. He's stuck there in the lifting animation and nothing happens. I've done this part of the quest many times before and never had this happen, but now it's happened in two different fresh saves.
Sin título.jpg

Third time it worked fine. A random glitch, maybe?
 
Finally, I finished playing through the storyline. It wasn't as smooth as I would have wanted but doesn't look like any of the issues I experienced were directly caused by the translation, so I'll call it a win.

I can only commend @Jack Rackham :bow for creating a story with so many moving parts in an engine that definitely wasn't designed for half the stuff it does. No wonder it gets temperamental sometimes. It's a testament to both its potential and its limitations. And as a fellow fan of Poe, all the references and in-jokes were cracking me up:rofl.

Here go all the GoldBug dialogs, revised questbook and TEXTS files, and also some last minute fixes to some general text files, and the Hornblower questbook with some typos fixed. I've checked them with yesterday's 28th February update, so they should be all up to date.

PS. I added a Spanish copy of Poe's story to the Spanish dialog folder, like it's done in the English one. To the best of my knowledge it's freely available to share non-commercially as long as due credit is given. The pdf itself has the credit written on it so I guess that's good enough.
http://bibliotecadigital.ilce.edu.mx/Colecciones/ObrasClasicas/_docs/EscarabajoOro.pdf
So thanks to the Biblioteca Digital ©InstitutoLatinoamericano de la Comunicación Educativa ILCE
For the extracts of the story used or paraphrased ingame, I have mixed and matched from this translation, a different one hosted on Wikisource and my own translation when I was n0t happy with either of them.
 

Attachments

  • GoldBug.zip
    552.2 KB · Views: 146
Last edited:
And while maybe in the future it would be nice to have specific Spanish images for the solved cipher and the indication of of where to find the excel sheet and the Gold Bug pdf, for the moment at least I've put that information in the description of the items.
 
I can only commend @Jack Rackham :bow for creating a story with so many moving parts in an engine that definitely wasn't designed for half the stuff it does. No wonder it gets temperamental sometimes. It's a testament to both its potential and its limitations. And as a fellow fan of Poe, all the references and in-jokes were cracking me up:rofl.
:shock
:bow :bow :bow
 
@Homo eructus or @Perro Negro:
How would you translate the following:

"There is a light breeze from the NNE"
"Wind is from the SSW at 15 kts"

Weather reports are generated by "PROGRAM\Weather\WhrWeather.c", specifically:
Code:
   if (winds == 0)                   logstr = "The air is calm";
   if (winds > 0 && winds <= 2)   logstr = "There are light airs ";
   if (winds > 2 && winds <= 6)   logstr = "There is a light breeze ";
   if (winds > 6 && winds <=10)   logstr = "There is a gentle breeze ";
   if (winds >10 && winds <=15)   logstr = "There is a moderate breeze ";
   if (winds >15 && winds <=20)   logstr = "There is a fresh breeze ";
   if (winds >20 && winds <=27)   logstr = "There is a strong breeze ";
   if (winds >27)                   logstr = "There is a near gale ";

   if (winds>0)
   {
       switch (compasstype)
       {
           case "compass1": logstr = logstr + "from the " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)); break;
           case "compass2": logstr = "Wind is from the " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)) + " at " + winds + " kts"; break;
           case "compass3": logstr = "Wind is from the " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)) + " at " + winds + " kts"; break;
       }
   }
If you have a cheap compass then wind reports are one of the descriptions, followed by " from the ", then the direction. If you have anything better then wind reports are "Wind is from the ", then the direction, then " at " and wind speed. If Spanish follows the same format then translating this is just going to be a matter of running the various parts through "TranslateString" and adding them to "interface_strings.txt". But if Spanish rearranges the parts then this is likely to be very messy...
 
@Homo eructus or @Perro Negro:
How would you translate the following:

"There is a light breeze from the NNE"
"Wind is from the SSW at 15 kts"

Weather reports are generated by "PROGRAM\Weather\WhrWeather.c", specifically:
Code:
   if (winds == 0)                   logstr = "The air is calm";
   if (winds > 0 && winds <= 2)   logstr = "There are light airs ";
   if (winds > 2 && winds <= 6)   logstr = "There is a light breeze ";
   if (winds > 6 && winds <=10)   logstr = "There is a gentle breeze ";
   if (winds >10 && winds <=15)   logstr = "There is a moderate breeze ";
   if (winds >15 && winds <=20)   logstr = "There is a fresh breeze ";
   if (winds >20 && winds <=27)   logstr = "There is a strong breeze ";
   if (winds >27)                   logstr = "There is a near gale ";

   if (winds>0)
   {
       switch (compasstype)
       {
           case "compass1": logstr = logstr + "from the " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)); break;
           case "compass2": logstr = "Wind is from the " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)) + " at " + winds + " kts"; break;
           case "compass3": logstr = "Wind is from the " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)) + " at " + winds + " kts"; break;
       }
   }
If you have a cheap compass then wind reports are one of the descriptions, followed by " from the ", then the direction. If you have anything better then wind reports are "Wind is from the ", then the direction, then " at " and wind speed. If Spanish follows the same format then translating this is just going to be a matter of running the various parts through "TranslateString" and adding them to "interface_strings.txt". But if Spanish rearranges the parts then this is likely to be very messy...

Hi.

A good translation could be:

"Hay una ligera brisa del NNE"
"El viento sopla del SSO a unos 15 nudos"

case "compass2": logstr = "El viento sopla del " + GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0)) + " a unos " + winds + " nudos"; break;

The structure does not change much, I hope it serves you.
 
Thanks for that, @JTem! :cheers

The Spanish phrases won't replace the English in "WhrWeather.c". Instead, the phrases will go through 'TranslateString', e.g.:
Code:
case "compass2": logstr = TranslateString("Wind is from the", GetCompassDirFromHeading16(fWindA + Degree2Radian(180.0))) + " " + TranslateString("", "at") + " " + winds + " " + TranslateString("", "kts"); break;
Then English, Spanish and other languages can translate them in their respective versions of "interface_strings.txt".
 
Here's a neat trick. Download and unzip this, then copy the whole folder into "RESOURCE\Textures\Loading". Then start a new game as a corsair, merchant, or anything else that begins at one of the standard starting ports - Speightstown, St. Pierre, Kralendijk, San Juan, Sao Jorge.

There's a sub-folder "RESOURCE\Textures\Loading\English". Anywhere else that you find an "English" sub-folder, you can add a "Spanish" equivalent for the translation. So, as an experiment, I made versions of the loading screens for those five ports, replacing "Port" with "Puerto", then put them into "RESOURCE\Textures\Loading\Spanish". And sure enough, if I start a game in English and go ashore to Speightstown, the loading screen shows "Port" - but if I start a game in Spanish and do the same, it now shows "Puerto".

But someone else can make Spanish versions of the rest of the loading screens. Whoever does this will need:
 

Attachments

  • Spanish.zip
    4 MB · Views: 159
Yep, in fact, when playing in Spanish now, if you have the Spanish version of the stock game that is, you get some of the stock game loading screens, which are in Spanish, and the mod-specific ones in English. I planned to update them but that's fairly low in the list of priorities.

EDIT: Incidentally, with the Spanish version of the stock game, you also get the hilariously terrible Spanish voice acting with outrageous accents for the different nations. And I think you get it even playing in English, because the cd was only localized in Spanish (to save disc space, presumably), so the only Enhglish voices IU have are the ones added by the mod.

About the weather reports, I have them translated in my old 2017 files, I can fish them out.

Code:
The air is calm{El aire está en calma}
There are light airs{Sopla una ventolina}
There is a light breeze{Sopla una brisa muy débil}
There is a gentle breeze{Sopla una brisa ligera}
There is a moderate breeze{Sopla una brisa moderada}
There is a fresh breeze{Sopla una brisa fresca}
There is a strong breeze{Sopla una brisa fuerte}
There is a near gale{Sopla un viento fuerte}
from the{del}
Wind is from the{El viento sopla del}
atk{a}
kts{nudos}

"atk" is like that because "at" is defined earlier in the file with a different meaning in Spanish. It could be at1 or whatever

The abbreviated compass directions are all the same, only replacing W by O
 
Last edited:
About the weather reports, I have them translated in my old 2017 files, I can fish them out.
That might help, otherwise just translate these:
Code:
The air is calm{The air is calm}
There are light airs{There are light airs}
There is a light breeze{There is a light breeze}
There is a gentle breeze{There is a gentle breeze}
There is a moderate breeze{There is a moderate breeze}
There is a fresh breeze{There is a fresh breeze}
There is a strong breeze{There is a strong breeze}
There is a near gale{There is a near gale}
from the{from the}
Wind is from the{Wind is from the}
wind_at{at}
That is what I've added to "interface_strings.txt" in English. I've used the codeword "wind_at" instead of simply "at", in case "at" by itself is used somewhere else (or might be used elsewhere in the future as it is a common word).
 
That might help, otherwise just translate these:
Code:
The air is calm{The air is calm}
There are light airs{There are light airs}
There is a light breeze{There is a light breeze}
There is a gentle breeze{There is a gentle breeze}
There is a moderate breeze{There is a moderate breeze}
There is a fresh breeze{There is a fresh breeze}
There is a strong breeze{There is a strong breeze}
There is a near gale{There is a near gale}
from the{from the}
Wind is from the{Wind is from the}
wind_at{at}
That is what I've added to "interface_strings.txt" in English. I've used the codeword "wind_at" instead of simply "at", in case "at" by itself is used somewhere else (or might be used elsewhere in the future as it is a common word).
Yep, look at my post above, I edited them in.
 
Google translates "una ventolina" as "a whirlpool"! Does it really also translate to "light airs"? That is the lowest wind rating above "The air is calm", for winds up to 2 knots.

Likewise, are you sure about "un viento fuerte"? That translates to "a strong wind", but the original is "a near gale". This is the highest level reported by "WhrWeather.c" and is for wind speed over 27 knots.

I already used "wind_at" for the same reason that you used "atk". ;)
 
Back
Top