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

Increase Spawn Distance from World Map to 3D Sailing

KillPhil

Corsair
Storm Modder
If you enter a battle you always get thrown at like 10m from the next enemy ship, which is waay too short. Since I dont use any sail-ho info, I always get bad surprises because I spawn next to 3 warships with my Lyme frigate - which sinks in seconds. This completely takes away the fun of the game, the last 20 minutes of playing were just loading savegame, hoping nothing evil happens -> something evil happens -> loading, hoping nothing evil happens.

Same goes for some islands, where I spawn direct in front of a huge rock and break my hull crashing into it.

I think I saw some code for this long time ago, but I cant remember at all where it was stashed
 
Easiest thing to do: Enable the Open Sea Mod at the top of PROGRAM\InternalSettings.h .
 
from worldmap_reload.c
Code:
grp = "group" + i;
                encX = MakeFloat(worldMap.encounter.x);
                encZ = MakeFloat(worldMap.encounter.z);
                wdmLoginToSea.encounters.(grp).x = plsX + (encX - psX)*WDM_MAP_TO_SEA_ENCOUNTERS_SCALE;
                wdmLoginToSea.encounters.(grp).z = plsZ + (encZ - psZ)*WDM_MAP_TO_SEA_ENCOUNTERS_SCALE;
                wdmLoginToSea.encounters.(grp).ay = worldMap.encounter.ay;
                wdmLoginToSea.encounters.(grp).type = worldMap.encounter.type;
so this should check your location (psX and psZ) on the worldmap, and the location of the encounter on the worldmap. It then adds the difference to your location on the sea (plsX and plsZ) time a multiplier which is define in nk.c (make sure you pick the right one, depending on if the opensea mod is enabled or not).
 
Ah found it all, thanks.

Uhm, the Open Sea Mod has 2 bugs: 1. You spawn sometimes completely in the nowhere when 3D Sailing -> World Map. This is most likely because of the Worldmap.to.3d scaling value. The other Bug is a wrong value for battle distance - Open World Mode has only 100 yards before you can enter the world map - which results in being literally next to an enemy ship with peaceful music and being able to load to world map. If you wish, I can correct at least bug 2, because the values in bug 1 are very mythical. If you change 60 to standard value, all is fine and stock, if you go somewhere between like 30 everything messes up completely.
 
Yeah but it gets worse with the Open Sea Mod, and e.g. Jamaica has no problems at all with this - if you switch on Open Sea Mod and go to World Map when leaving Port Royale Harbor, you find yourself on the other side of the island in World Map.
 
@SuperCrumpets posted the following changes which should fix the spawn distance when going from the world map.

I hope the world map gets updated for the open sea mod eventually, I cant stand having islands suddenly appear right in front of me so i need the extra distance between islands but I also dont have the patience to direct sail everywhere all the time either.

btw here's my worldmap changes and they work well for me.

in worldmap_init.c at the bottom

//Player ship
worldMap.playerShipActionRadius = 50;

So i can engage/be engaged by fleets from around 2000 yrds without ever spawning right on top of them and getting instantly sunk by a fleet of 8 class 1 ships or from so far away i cant even see their sail to icon above them.

//Enemy ship
worldMap.enemyshipViewDistMin = 100.0; //Distance at which the ship starts to fade
worldMap.enemyshipViewDistMax = 350.0; //Distance at which the ship disappears completely
worldMap.enemyshipDistKill = 350.0; //Distance at which the kill vehicle
worldMap.enemyshipBrnDistMin = 180.0; //Minimum distance on the ship who give birth
worldMap.enemyshipBrnDistMax = 250.0; //The maximum distance at which the ship Rozsa

and this on the world map so fleets stop appearing out of thin air too close to turn away from and avoid and to lower the density of fleets in general so you dont get multiple fleets inside your action radius and become unable to choose which fleet to engage. although it would be ideal to be able to engage multiple fleets like its possible in TEHO, dont know if its possible in this.

I have not tested this, but he seems happy with it.

If you make any changes to worldmap_init.c you'll have to run wdmInit(). I just put the line "wdmInit();" near the top of the console.c file and press F12 to run it.

Hook
 
On the Buccaneer's Reef Discord, @Pillat suggested these values:
Code:
        WDM_MAP_TO_SEA_SCALE =                            14;
        WDM_MAP_TO_SEA_ENCOUNTERS_SCALE =                90;
@Grey Roger, do you think those might be good for us too?
 
Update: I've been trying it out while playing both "Ardent" and "Devlin Opera" to get screenshots.

Case 1: tried to engage an enemy group from worldmap, with an island in sight. The enemy were so far away that before I could close to firing range, I transferred to another island and the enemy disappeared.

Case 2: attacked by an enemy group on worldmap. The option to refuse combat was greyed out. I should have been forced to fight. Instead, as the enemy were so far away, I simply escaped back to worldmap.

Case 3: attacked a group of merchants from worldmap, out of range of any island. Wind was fairly low. Despite being in a fast galleon (the faster non-war type) and the enemy being slow merchants, it took me ages to catch them even with time *20 in the most boring "battle" it has ever been my misfortune to experience. I would not wish that on anyone else.

Case 4: engaged an enemy group from worldmap. They were a little way off on worldmap but still showing contact. I could not see them on the sea, either by looking round or by zooming the compass "radar" out to maximum.

Those were probably all the fault of changing "WDM_MAP_TO_SEA_ENCOUNTERS_SCALE".

Case 5: approached Santo Domingo on worldmap, went right into harbour, switched to sailing mode, appearing some way up the coast right next to a cliff and pointing straight at it, with no way to turn in time to avoid losing my bowsprit. The same happened at Santiago.

That's probably the result of changing "WDM_MAP_TO_SEA_SCALE".

Summary:
@Grey Roger, do you think those might be good for us too?
No!
 
On the other hand, looking at the current line in "NK.c":
Code:
WDM_MAP_TO_SEA_ENCOUNTERS_SCALE =                19.607843;    // was 60 in build, 10.0 in stock. NK 05-04-30
According to that comment, it used to be 60. So I tried putting it back to 60 and have been playing the game for a while with that setting. The result is much better. Battles don't start with me next to the enemy group, but do start close enough to be in battle range, which means little chance of a "Land Ho!" ending the battle prematurely and also means I can't exit the battle straight back to worldmap. Unless there are any objections, it's going back to 60 in the next update.
 
Unless there are any objections, it's going back to 60 in the next update.
Just checked and it IS still 60 with the Open Sea Mod enabled.
See PROGRAM\NK.c .
Should it not remain two different numbers between the settings?
 
No idea. I don't play with Open Sea Mod enabled, and even if I were to enable it for a quick test I've no idea what regular players of the mod would like. But I do know that with the mod disabled, setting WDM_MAP_TO_SEA_ENCOUNTERS_SCALE to 19.607843 means you start a battle right next to the enemy, while setting it to 60 puts you at a reasonable distance. I'm not about to change the setting for Open Sea Mod just to make it different and risk spoiling the game for players who like the mod!

Perhaps someone who regularly plays with Open Sea Mod enabled would like to comment on whether, when you switch from world map to a sea battle, you start too close, too far, or at about the right distance from the enemy?
 
Why? 60 works, I've tried it. 30 would put me too close to the enemy - not jammed right next to them as 19.607843 does, but probably not much further away. Having made the game work better with Open Sea Mod disabled, I'm not about to break it again just so that a variable can have a different value. :p

Of course, if after the next update is released, a few players complain that they're spawning too far from the enemy, then I'll try 30.
 
I'm going to experiment with this setting as well. Nothing plays hell with one's situational awareness than popping into a battle merely spitting distance from your opponent.
 
Back
Top