• 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!

PTBR Translation

Several other locations are going to need 'Locations[n].map' lines added, starting with "Redmond.c" - find the section for "Redmond_Dungeon_2" and add 'Locations[n].map = "mapRedmond_Dungeon";'. Some other places have copies of these dungeons, such as Antigua and Cayman. The text on the map will be wrong for these places, but then it's wrong anyway because the maps still use the stock game names such as "Cave of Douwesen".
Thanks for the tip

I've used the location model path to find "duplicate" locations, and configured the maps for those as well:
 
One more - "Cayman.c" needs a line in the section for "Cayman_Grot_02". It uses "locations\Inside\Dungeon_3" so it will need 'Locations[n].map = "mapOxbay_Cave";'.
 
Done.

Also:
"PROGRAM\Locations\init\SaintMartin.c" needs a line in the definition for "Philipsburg_Dungeon". It won't have shown up on a search by location path because it uses a different model, presumably to drop the whole location so that the lower level is flooded, but apart from that it's a duplicate of Speightstown dungeon, so needs 'Locations[n].map = "mapOxbay_Dungeon";' added. And since storyline quest locations are being added, "PROGRAM\Storyline\Ardent\Locations\init\QuestLocations.c" contains a copy of part of "KhaelRoa.c" to provide Hispaniola temple with an interior, so it will need the same 'Locations[n].map' lines.

Also:
I've added a toggle "QUICK_DUNGEON_MAPS", defined in "InternalSettings.h" and checked in "seadogs.c", to allow players to disable this feature if they want.

The attached zip file should contain all the additional or altered files.
 

Attachments

  • Crypt map.zip
    76.2 KB · Views: 15
Are there any other translations in progress?
I can provide the spreadsheet I made to translate the dialogues. It can be used in any language. It's not perfect, but it helps a lot.
 
There are French, Polish, Russian and Spanish translations, plus your Portuguese translation. Of those, Polish has not been updated for ages and French has not seen much activity. So Portuguese, Russian and Spanish are the currently active translations.
 
@Grey Roger
I cleanup up the code a bit, this is how it is going into BNH
There's a problem, at least in Build 14. If I try to view the archipelago map while on the worldmap, the game crashes. The reason is in "PROGRAM\Locations\location.c", function 'FindMapForLocation':
Code:
    int location_index = FindLocation(location_id);
    ref location;
    makeref(location, Locations[location_index]);
On the open sea on the worldmap, the location is undefined, 'location_index' is -1, and the game doesn't like 'Locations[-1]'. So:
Code:
    int location_index = FindLocation(location_id);
    if (location_index < 0) return "";    // GR: no map for invalid locations!
    ref location;
    makeref(location, Locations[location_index]);
... quit at once if 'location_index' is negative. And, as a "belt and braces" approach, check specifically for worldmap in "seadogs.c":
Code:
                string map = "";
                if (!IsEntity(&worldMap)) map = FindMapForLocation(PChar.location);
                if (QUICK_DUNGEON_MAPS && map != "" && CheckCharacterItem(PChar, map))
Don't even bother calling 'FindMapForLocation' if you're on the worldmap. (Variable 'QUICK_DUNGEON_MAPS' is set in "InternalSettings.h", default setting 1, allowing players to disable this feature if they don't want it.)
 
Back
Top