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

A question about "Land Ho"

ANSEL

Corsair
Storm Modder
Hearts of Oak Donator
Lately I have seen this message and teleportation more often than I use to.
It almost happens just before I defeated an enemy, and it's very annoying.
So why is it here, is there any purpose or use of it, I never had anything out
of it. I have a vague memory about it in some way involved Davy Jones?
Are there any use for it now, or are it just a leftover from old days ? If it
don't have a purpose any more, it will be nice to get rid of it.
As I say it is very annoying to be teleported away, just before a victory,or
see a good prize disappear out in the thin air.
 
This happens whenever you are on the edge between two Islands and there are no enemies around.

What you should do to avoid it is to press the regular "zero" key (NOT the Numpad one).
That will temporarily disable all DirectSail updates so you can capture the prize ship you want.

Davy Jones definitely has nothing to do with it. :no
 
As far as I know, it shouldn't happen if you're in combat. But it's very annoying if you're not in combat either because you're under a false flag and trying to get close to an enemy before hoisting a hostile flag to start the attack, or because the enemy ship has surrendered and is waiting for you to board it.

The workaround solution is indeed to press '0' to disable DirectSail. Remember to press '0' again after you've finished capturing or sinking everything so that you get the benefits of 'DirectSail' again. (Or you can leave it disabled permanently if you always travel from one island to another using the worldmap.)
 
Cheers Gentlemen,

to my experience, if in direct sail two things can happen during any encounter:
- land ho
- sail ho
Both will overwrite the actual encounter (except you are in very close range I think). I like to play or sail out any encounter, so I usually press the "0" key to prevent this from happening. It seems to be that only one encounter can exist at a time, not two or more. Unfortunately, one will never reach the next island while "0" being pressed.

While that would be interesting, I'm thinking of ... hm ... chasing a merchant convoy, and then pirates or an enemy frigate appearing. In world map travel there is the possibility of more than one faction in an encounter, in direct sail there is not. That would be an interesting mod, of any modder has time and is interestet
:pirates
 
The reason for the current situation is mainly game engine limitations.
A different island is a different scene so everything needs to be reloaded to allow you to get there.
This process erases all the ships from the previous scene.

Considering the original game developers did not believe something like DirectSail was possible at all with the Storm Engine, I suppose we should be extremely grateful that it works as well as it does. :shrug

Someone did once try to make the current ships persist even upon Land Ho.
Unfortunately he never could get that working quite like it should.
I may still have his incomplete WIP files floating around somewhere.

As far as I know, it shouldn't happen if you're in combat.
I can confirm that is true.
 
@Pieter Boelen Well I can confirm, thats not true, in this days. 3 to 4 times in
the last 2 days, it happens for me, IN THE MIDDLE OF an interesting and big
sea battle. Don't know whats going on, related to all the strange bugs we have now?
I wouldn't have mentioned it, if it wasn't for the disturbance of Sea battles.
 
It could happen if, during battle, you manage to sail out of range of all enemy ships, which would normally just result in the bit of music playing and the compass icon appearing, indicating you can now go to worldmap. But if DirectSail then detects that you're near another island, perhaps it then triggers the "Land Ho".

But if you get "Land Ho" while still close to an enemy ship then I agree that something very strange is going on. :confused:
 
I thought I had all that fixed and working 7 years ago.

The only problem I had then was two islands that were close together, and after the "land ho" screen you'd be right on top of the island. We must have had a different map at the time, because I couldn't figure it out with the new map.

There is one major problem I've found so far with that currently. Leave Santo Domingo on Hispaniola and sail east. After the "land ho" you're a couple of hundred yards from the shore... it's Isla Mona and it's not even shown on the map except as a name. It appears to be about the size of St Martin. It's not the island south of Puerto Rico that has Far Beach on it.

I could sail around the south end of the island without problems, but when I turned north, I kept going back and forth between Hispaniola and Isla Mona. Now, I *know* I fixed that problem at one time by not transitioning right at the border, but some distance past it. Hispaniola and Isla Mona may simply be too close together, and may need to be handled as a special case.

Otherwise, direct sail seems to be working quite well, and I'm glad to see a key command to disable it when necessary.

Hook
 
I think a lot of changes happened to the DirectSail code over the years; some good and maybe others not-so-good.
Maybe also it just isn't as compatible with the new worldmap as it was with the old one, though we never managed to figure out why that would be the case.
Whatever the reason, we do currently have this quite annoying bug with it: :(
Confirmed Bug - DirectSail and WorldMap island transfer inconsistencies | PiratesAhoy!
 
The old code should have worked with a new map, as long as we could find the size of the "island radius". Many times in the last 7 years I've thought about ways to improve that.

There are obviously some random numbers being generated somewhere. If you look at your map immediately after a "land ho" transition, your ship is usually not where it should be. Most of the time it's been moved forward a considerable distance in the direction you were going, occasionally it's some random spot nearby. That's on my list of things to look for when I get tired of sailing.

There's something I don't understand. There's an option to increase the distance between islands, probably by increasing the size of the map while keeping the size of the islands the same? How long were you intending to sit at the computer to sail between any two islands without going to time compression? So people must be using time compression, which pretty much defeats the whole purpose of increasing the distance, and introduces problems from the time compression. We'd already taken care of game time to distance scales by adding a day each game hour.

I sail on deck with no time compression. It takes maybe an hour of real time for a typical island hop, usually less, sometimes quite a bit more. I enjoy the sailing, and I'm used to doing one to two hour trips in flight simulators anyway. It also gives plenty of time to contemplate code changes. :)

I'm impressed at how well you've modeled the scale of the game. The real clock time / speed / distance is correct. The game clock runs faster, of course, and usually a day passes each hour. Your apparent speed on the sea seems correct. Everything seems well balanced.

Increasing the distance between islands, then using time compression, destroys that balance. You might as well be playing TEHO. I haven't tried the increased distance myself, so I'm guessing a bit here.

One important concept is that you can't have a single fixed distance where the transition occurs. You have to be able to sail beyond the fixed distance before transition, then if you turn around, you have to sail that same distance beyond the border the other way before you get the land-ho. Otherwise you can be sailing along the border and jumping back and forth constantly.

The code fragment you posted a couple of times in the other tread was to prevent a random encounter if you were too close to an island. I had that happen recently when a floating object was obviously inside land. I haven't looked at that code yet.

About the only thing I miss from TEHO is their map. I doubt if we could make our islands work on their map, and we don't want to use their islands because ours are more interesting. For example, look at Guadeloupe (called Martinique in our game... check a real world map to see which one is correct). You can actually sail between the two halves of the island in our map, going north/south, and the bridge is visible from the deck of your ship. In TEHO it's one land mass with no break between islands. And I do love that port at Cayman.

I'm not sure why the simple distance system to determine land-ho transitions didn't work. Any insight into what wasn't working and why it was changed would help a lot.

Hook
 
The old code should have worked with a new map, as long as we could find the size of the "island radius". Many times in the last 7 years I've thought about ways to improve that.
@Armada redid all island radii. I think he still has an image showing them somewhere.

There's something I don't understand. There's an option to increase the distance between islands, probably by increasing the size of the map while keeping the size of the islands the same? How long were you intending to sit at the computer to sail between any two islands without going to time compression? So people must be using time compression, which pretty much defeats the whole purpose of increasing the distance, and introduces problems from the time compression. We'd already taken care of game time to distance scales by adding a day each game hour.
Somebody wanted it and made it: Mod Release - Open Sea Mod and Realism Settings | PiratesAhoy!
Since it seemed to work OK, we added it to the main mod. And I know a fair few people really quite like it.
Though I imagine they must indeed be using time compression! :shock

I'm not sure why the simple distance system to determine land-ho transitions didn't work. Any insight into what wasn't working and why it was changed would help a lot.
What simple distance system are you referring to? The old "Island Cell" method, you mean?
That actually DID work. It was just inaccurate and I think it was @Screwface who rewrote it to make it match the actual worldmap coordinates instead.
We then had the two options available for many years until we finally got rid of the old system because nobody used it.
 
Thanks, Pieter.

I'm up to my elbows in cccdirectsail.c and I think I know how to fix the island transitions.

The system I worked on used "landfalls", which were locations on the islands. These were places where you could use sail-to and moor. It was a bit of a workaround for islands that weren't quite round... like Cuba. The only problem is, the landfalls might not be that close to a point of land that interferes with determining distances between islands.

I looked at worldmap_init.c but decided that what we had was good enough for the islands in the game.

I propose adding additional "locations" in worldmap_init to mark the extreme points on any island that needs them. Only a few should be required, and they should be excluded from sail-to options.

An example that's already in use is Tortuga. There's a port there, and if this all worked right, you'd transition between Eleuthera and Hispaniola when you were about halfway between Governor's Harbor and Tortuga port. The problem is, for some reason this isn't working quite right, and you can find yourself right on top of either Tortuga or Eleuthera depending on which direction you are sailing.

I've seen a few instances where my ship's location on the map didn't seem to be quite right compared to the island, as if the 3D island was drawn in a different scale, or the map was way off. This might account for some problems, but not all, and I'll check into it.

As for Iron Man mode, I think given the other options it would be just perfect if it disabled time compression. :) Of course, you'd have to go back to the old map scale. Then again, I'm probably one of four people in the entire history of the game that doesn't use time compression.

Consider that in the real world, you can sail from Trinidad to Santiago, Cuba (about 1000 nautical miles) in just over 5 days at 6 knots.

Hook
 
It is absolutely great to have you look into this, @LarryHookins! :bow

Hopefully @Armada drops by soon to give some comments of his own. He's the big expert on the new worldmap (because he made it :wp ).

As for Iron Man mode, I think given the other options it would be just perfect if it disabled time compression. :) Of course, you'd have to go back to the old map scale. Then again, I'm probably one of four people in the entire history of the game that doesn't use time compression.
Wouldn't really be playable without time compression, would it? And I wouldn't want to take that option away from players if they want to use it.

Personally I like the idea of the Iron Man Mode (I added it myself!), but always play on Arcade because I just have no time to do anything else.

I suppose this toggle in InternalSettings.h could be rewritten:
Code:
#define OPEN_SEA_MOD           0     // BOOL - 1=ON - Worldmap enlarged for realistic DirectSail
It could be made to work something like "INT - 1=DEFAULT: Controlled by Realism Mode - 0 or 2 override the Realism Mode setting" instead.
That way, players could use Iron Man Mode with regular DirectSail (instead of the Open Sea Mod) if they so choose.

Usually when people ask for the toggles to be rewritten for increased flexibility, I have obliged them.
In this case though, nobody ever asked for it. Until now! ;)
 
Pieter, if no one else has ever asked for a toggle, don't bother. I can do my own if I want to use Iron Man mode. Aside from the map scale, I think the Iron Man mode is a pretty cool idea.

Wouldn't really be playable without time compression, would it?

That's kind of the whole idea. :) I'd prefer not to take the time compression option away either.

OK, it appears that the direct sail code I wrote is a little flakey handling some of our current conditions. This is my fault for not making the code more robust at the time. I'm looking at fixes for it now.

As a side note, what do you want me to do with the HUD/Interface scale changes? I think it's as good as I can get it, and I need someone with one of those monster resolution monitors to test it. My monitor only goes to 1920x1080.

Hook
 
You're very welcome to modify the Open Sea Mod toggle so it can be disabled in Iron Man Game Mode.
I agree it does make sense to have that, especially since now somebody actually wants it! :onya

Sounds like we're agreed on time compression too.

For your HUD change, you could make a thread for it on Build Brainstorming and request somebody to try it.
That should hopefully give it some more visibility and give you some feedback. l

If you're pretty sure it's already OK, please submit it also the http://piratesahoy.net/threads/new-content-post-build-14-beta-4-0-public-release.27077/ thread! :cheers
 
Well, well... guess what works. :)

I added a location to Eleuthera for the direct sail code to find, and now the island transition is in a reasonable place going either direction. I sailed to Turks, which was also affected by the new point, and it looked like it was good... I got chased by pirates and it delayed the transition. The rest of the code was nice enough to ignore it for the purposes of sail-to.

Cuba is going to need an extra point, Hispaniola will need 3 or 4, Puerto Rico 2. Not sure what to do about Isla Mona yet, but it'll probably get 4. Jamaica is going to need one, and probably Curacao and Aruba. Guadeloupe and Martinique might need a couple.

I haven't even been around the mainland, so I don't know what's going to happen there.

Looks like I'm finally getting around to finishing the direct sail code I started long ago. :D

Hook
 
I read through some of the other threads and noticed a common problem.

One thing you need to know is, if you make any changes to worldmap_init.c, you'll have to run wdmInit(); to have the changes appear in a saved game. I just put that line of code in console.c, pressed F12 and it works.

Hook
 
The mainland probably isn't a very big issue, because only Cartagena is there.
There's no other place to go....
 
Back
Top