Facebook

Login

Support Sailonline

If you haven't already - join the SAILONLINE YACHT CLUB!

Please also consider making a donation - all amounts are greatly appreciated!

Board » Technical Discussion » When is my command executed?

warning: I'll explain how serverjumps, commands and the client refresh rate work, but it's complicated and I cannot tell you yet how to take advantage of this knowledge (when rounding a mark for example)

Most of you know about server jumps. For rounding a mark, it's important to turn as early as possible, but absolutely not too early. This is made difficult by the server jumps, and client refresh rate, you rarely see your boat where it actually is. What you see is running a couple of seconds behind, in rare cases it could reach up to about 45 seconds.

So what is exactly happening. It's more than just the server jumps and the client update rate, but let's start with them anyway:

The server continuously checks all boats. For every boat that has not been moved by the server for at least 10 seconds, the server updates its position. This means, your boat will move every 10-12 seconds (when it's busy, it may take 2 seconds before the server notices it hasn't moved your boat yet).

When you haven't issued a command in the last 15 minutes or so, the server may skip you once or twice, and then do one big jump to catch up. This unloads the server a bit from boats that aren't actively steered.

useful tip: send a command 5-10 minutes before rounding a mark (setting a delayed command for 5-10 minutes before the mark also works). It'll make sure the server jumps for your boat are short when you reach the mark.

For the rest of this post, let's assume server jumps of 11 seconds: your boat is moved by the server every 11 seconds. I'm also assuming you have a fast internet connection.

The client polls the server every 15 seconds (roughly). Let's see what can happen with an example:
12:00:00 (jump) server moves your boat
12:00:00 (poll) client polls boat position, you see your boat at its current position (barely any delay!)
12:00:11 (jump)
12:00:15 (poll) your boat moves from its 12:00:00 position to its 12:00:11 position (running 4 second behind)
12:00:22 (jump)
12:00:30 (poll) your boat moves from its 12:00:11 position (19 seconds behind) to its 12:00:22 position (8 seconds behind).
12:00:33 (jump)
12:00:44 (jump)
12:00:45 (poll) your boat moves from its 12:00:22 position (23 seconds behind) to its 12:00:44 position (1 second behind). Note: the 12:00:33 position is not shown, it looks like you made one large jump.

A better understanding of how this works may not easily transfer into being able to steer your boat better. One useful tip is: when you see your boat make a large jump, you know two server jumps happened in the last 15 seconds, meaning the last jump happened less then 4 seconds ago. If you see a short jump, you know only 1 server jump happened in the last 15 seconds, meaning the last jump happened between 4 and 11 seconds ago.

Commands are executed independently from serverjumps. What does this mean? You might have seen your command execute at the start of a new server jump, or at the end. Both can happen. A command will never execute in the middle of a serverjump. All commands due to be executed (of every boat, in every race) are executed in one go, with 4 or 5 seconds between each go. So your command will generally be executed within 5 seconds after the time you set the command for. BUT your boat may still be at a position from 11 seconds ago. This means, your command will have an effect 11 seconds earlier than it was set to execute.

So now there are three things with an interval: the client polls ever 15 seconds, the server moves boats every 11 seconds and turns boats every 4 or 5 seconds. This is complicated, I can't tell you yet how to take advantage of this knowledge.
Up to now I've done one of two things for markroundings:
- wait until the client shows me clear to round, then send the command.
- when I expect a double jump to happen until the next client refresh, and I only need one more jump, I count, to 10. But 11 is probably safer.

Now I've researched how commands work, I might come up with a method that results in better roundings, without the risk of missing the mark. That will be something I'll post on solfans
One advantage I take of your very informative explanation is: Don’t tack (gybe) too short for rounding a waypoint/buoy. To set a tack command in advance may have the effect to round too early. Seems to be better to wait for the visible pass by of the waypoint – then tack or gybe or set new course.
(Apologies for bad english).
This is why roundings are missed even though DC Checker shows the mark as clear. DC Checker assumes that the DC is going to fire exactly at that time with no uncertainty. That is not the case in reality.
Hi kroppyer

Thanks a lot for your explanation.

This post is quite ancient so, is it still true or had the situation changed ?

At the end, you speak about another post on solfans, I didn't find it.

Thanks
The server-side hasn't changed much in this regard as far as I know. But there's a whole new client by now, so that part of the story may have changed.

I have never written that post on solfans. I think partially because I didn't find easy and reliable ways to get a significant advantage from the knowledge.

By now, I think there is software that tries to sync up with the server jumps. I believe Kipper's AGL does this, and possibly even the HTML5 client. Which makes it easier, and more intuitive to work with the server jumps.

From what I recall, I had some thoughts that could help you navigate around a mark with the server jumps. If you are in sync with the server jumps, you basically have 10 seconds to decide when and how much you want to steer, and it should be fairly obvious when to turn and by how much. What matters a lot here is that you need to get luck with where you end up after each jump. For example: If you jump just short of the mark, you'll have to continue sailing in the same direction for another 11 second, even though you needed only 2 more seconds to reach the mark. Depending on the situation, you can reduce the effect of this by aiming a bit wider, so that when you're less than 10 second from the mark, you can already start part of your turn. Of course, beware of wind direction and performance loss. And finally, I recall that maybe I wanted to figure out and describe a somewhat reliable way to determine where you'd end up multiple jumps ahead so that you know whether you need to steer wider or not.

Please login to post a reply.

Races

Next Race: 00d 00h 00m


Current Races:

Lake Ontario 300 Challenge 2026

Lake Ontario Offshore Racing (LOOR) welcomes Sailonline sailors to a second virtual version of a race in their annual series, and for the sixth year in succession the LO300. As the name implies, the LO300 is a 300nm offshore race across the length and breadth of Lake Ontario, from and back to Port Credit YC. This year, for the first time, we will be racing the 300nm circuit in Sun Fast 3200s. As usual, there is an overall prize for the SOLer who best bosses Lake Ontario over the two races hosted by Sailonline, this LO300 and the Susan Hood raced back in May, and this year also the race and the Susan Hood count towards the title of Super Buddy 2026; so, let the competition be fierce!
Race #2044
INFOby brainaid.de
Sun Fast 3200 PARTICULARS
NAM_AWIP WX Updates:
0245 / 0845 / 1445 / 2045
Ranking: LOOR - SUPBUD - SYC
Race starts: Jul 11th 15:10 Registration will open soon

▶ Flash
GO TO RACE

Tall Ships 2026 - Harlingen to Antwerpen


Welcome to the second of four virtual Tall Ships Races in European waters which are concurrently being organized in-real-life by Sail Training International . This second race is from Harlingen in Friesland down along the coast of Holland and Friesland to Vlaanderen’s famous port of Antwerpen – circa 150nm in Sailonline’s classic Clipper 240.
NOTE: Starts and Finishes in tall ships racing are always offshore to avoid conflict with shipping and shipping lanes; online and real-life may not match exactly.
Race #1993
INFO by brainaid.de
Clipper 240 PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: TSI - SUPBUD - SYC
Race starts: Jul 06th 16:00 Registration Open!
▶ Flash
GO TO RACE

Alaska to Easter Island 2026

Welcome to yet another all-new series. The initial leg of the RNW (Round the New World), Alaska to Easter Island, also part of our Ocean Championship. The first race of OCQ3 2026. This race will be sailed in our revised 'version 2' Imoca 60 Foil. Race #2042
INFO by brainaid.de
Imoca 60 Foil v2 PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: OCQ3 - RNW - OCCH - SYC
Race starts: Jul 06th 11:00 Registration Open!
▶ Flash
GO TO RACE

Cross the Convergence 2026 - Sao Tomé to Tristan

The fifth race of our series of ocean voyages across the World’s convergence zones takes us back south down the Atlantic from Sao Tomé on the Equator to Tristan da Cunha on the edge of the Roaring Forties. It’s 2500nm; in your path the Benguela winds and current along the south west African coast, and behind that the St Helena High stretching halfway to South America. So, mind where you go in your Volvo OD65 version 3 (based on sampled real-life race data by kroppyer)!
Race #1985
INFOby brainaid.de
Volvo OD65v3 PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: CCZ - SYC
Race starts: Jul 03rd 18:00 Registration Open!
▶ Flash
GO TO RACE

New Ice Age 2026 - Neumayer Station to Scott Base


For a second-half of long-distance ice-boating, we take our DNs to Antarctica for a circumnavigation of that continent in two legs clockwise, in harmony with the prevailing winds (such as there are), beginning with a race from Germany’s Neumayer Station to New Zealand’s Scott Base. It’s about 3500nm, which, if there’s wind at all, should, well-wrapped in your DN-cockpits, not take you much more than five days. And remember: charts down here are unreliable – what is land and what is ice?!
Race #1970
INFOby brainaid.de
DN PARTICULARS
WX Updates:
0430 / 1030 / 1630 / 2230
Ranking: NIA - SYC
Race starts: Jul 02nd 07:00 Registration Open!
▶ Flash
GO TO RACE

Go to race archive

SYC Ranking

  1. Sailonline Yacht Club Member WRmirekd
  2. Sailonline Yacht Club Member KaSToR
  3. Sailonline Yacht Club Member CriticalHippo
  4. Sailonline Yacht Club Member bonknhoot
  5. Sailonline Yacht Club Member Panpyc
  6. Sailonline Yacht Club Member cdhinman
  7. Sailonline Yacht Club Member rafa
  8. Sailonline Yacht Club Member HoratioPugwash
  9. Sailonline Yacht Club Member YANN
  10. Sailonline Yacht Club Member ms0689

View full list

Series

Mobile Client

SYC members have the benefit of access to our mobile/lightweight web client!

The mobile client