Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clocks #55

Open
yishn opened this issue Apr 3, 2016 · 2 comments
Open

Clocks #55

yishn opened this issue Apr 3, 2016 · 2 comments

Comments

@yishn
Copy link
Member

yishn commented Apr 3, 2016

No description provided.

@yishn yishn changed the title Move clocks Clocks Apr 3, 2016
@yishn yishn added the ui label May 5, 2016
@yishn yishn modified the milestone: Backlog May 11, 2016
@yishn yishn mentioned this issue Nov 24, 2017
@dbosst
Copy link
Contributor

dbosst commented Apr 12, 2019

https://github.com/dbosst/Sabaki/tree/clocks

It's not pretty on the GUI side or the code side, and hasn't been extensively tested, so I won't create a pull request for it (beta). I've worked on it long enough I think some people can enjoy testing it or for personal use if they really want to use it with clocks.

Anyone that wants to try it out, if you find bugs, let me know as an issue in my fork, not here.

Overtime using multiple periods/moves is shown as: (RemainingPeriods) RemainingMoves TimeLeft

To use it with engines you need to remove any time_settings commands for an engine (I suggest creating a separate engine for testing this fork), and for leela-zero make sure to set the lagbuffer command-line option appropriately (you have to tune this a bit to make sure it doesn't lose on time).

It has several features, including keeping track of per move timing (shown in the comment box) and allowing you to adjust the clock during a game (under Tools) as for tournament use.

The default behaviour is such that for new games, the clock will start when both player(s) or engine(s) are ready. On loading a SGF file with clock timing info, the clock will be disabled when loading the SGF (disabled clock shows the time in italics, but you can resume where you left off in a timed game by just doing Play-> Enable Clock, and then resuming the clock under Play -> Resume Clock if it's a player's turn, or if it's an engine's turn by Engine-> Start Playing.

It uses custom SGF properties for storing timing information (so it is not compatible with SGF specs for timing info. The SGF and GTP spec has various limitations when it comes using various timing modes and advanced features.. The GTP spec in particular has limitations that limit resuming the game from specific points in time using advanced timing modes (i.e. byo-yomi is not supported well at all using time_left, or even with kgs extensions such as kgs-time_left). At the moment if you use a completely unsupported timing mode, it will only show as a warning in the debugger console.

The core component is based on the gameclock package I've been working on.

If you are interested, please check the web-browser demo of the game clock demo out, especially if you need a game clock for go / chess / etc. (you need Javascript enabled)

@isty2e
Copy link

isty2e commented Mar 28, 2020

Now Sabaki is one of the major tools to play against engines. Presumably this issue is worth revisiting?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

3 participants