Page 1 of 1

TIME and OTIM

PostPosted: 26 Sep 2010, 00:26
by beneficii
Basically, the engine needs to keep track of the time of both sides, not just one side, right? The purpose of the commands is to keep the engine updated on both, right? That's what's meant by this whole "remaining with the engine" business, right?

Now, what if the user goes into Edit Mode (called "Force Mode" for the engines, apparently), would the engine have to swap which one it plays?

Now, what if the engine is on move 17, and it receives the following command:

level 40 60 0

What happens then? The protocol isn't clear, and the wording is confusing. Does that mean 60 minutes will be added to the clock on move 57, or move 40? Or does that mean, I should avoid messing with changing the clocks between moves and just set the clock to whatever time WinBoard tells me?

That is, I would only keep track of the amount of time the engine has left during a move, but the engine at the beginning of every move for me to make will inform me of the amount of time left for each player, so I can update my clock. That way, I only have to pay attention to making sure I move in the appropriate time, and just leave the rest to the engine?

Re: TIME and OTIM

PostPosted: 26 Sep 2010, 06:20
by H.G.Muller
The protocol specs do not guarantee that time and otim will be sent before every move; it only tells what they mean. WinBoard and all other GUIs I know that support WB protocol in practice do send these commands, though. Under such conditions the time specified in the level command will be irrelevant, as it is always overuled by the actual clock setting.

Although there are also no known GUIs that do send level commands during a game, we plan to do so in the future, and specified the meaning of such intra-game level commands to be relative. So in your example, you would indeed get the time on move 57, and should ty to last on the time received by the time commands until then.