Hi,
GWDGUI v2 is almost done. Joost already confirmed playing a tournament with multiple concurrent games works. I am currently adding the Analyzer back in, which will be one of the available hub engines. I think except for Kingsrow most engines (like GWD) would require a dedicated directory per instance, so if you would like to have hub engine X to act as an analyzer but also to participate in the tournament you have to duplicate the directory and add it as a new hub engine.
GW

(Hub engine) GUI for International Draughts
-
gwiesenekker
- Posts: 74
- Joined: Sun Feb 20, 2011 21:04
- Real name: Gijsbert Wiesenekker
-
gwiesenekker
- Posts: 74
- Joined: Sun Feb 20, 2011 21:04
- Real name: Gijsbert Wiesenekker
Re: (Hub engine) GUI for International Draughts
Hi,
Final QA:
GW
Final QA:
GW
-
gwiesenekker
- Posts: 74
- Joined: Sun Feb 20, 2011 21:04
- Real name: Gijsbert Wiesenekker
Re: (Hub engine) GUI for International Draughts
Hi,
Version 2.0 has been released and can be downloaded from Github for testing. I would remove engines.json and all *.params.json and re-register all engines using the new engine-registration dialog box.
GW
Version 2.0 has been released and can be downloaded from Github for testing. I would remove engines.json and all *.params.json and re-register all engines using the new engine-registration dialog box.
GW
-
Joost Buijs
- Posts: 508
- Joined: Wed May 04, 2016 11:45
- Real name: Joost Buijs
Re: (Hub engine) GUI for International Draughts
Most of it seems to be working, but I have the feeling that there is still something wrong with the timing. When I play games of 1 minute with an increment of 1 second, it often happens that the engines have more than 2 minutes left on their clock at the end of the game.
DXP doesn't allow a Fisher style clock, this could be the cause, Ed Gilbert added an extension to DXP to allow fractional clocks with increment, maybe this extension can be added to the GUI as well.
The GUI uses Tickcount64 for timing, this is not very accurate because it has a resolution of 15.625 msec. maybe this can be improved, nowadays most timing routines have sub-microsecond resolution.
DXP doesn't allow a Fisher style clock, this could be the cause, Ed Gilbert added an extension to DXP to allow fractional clocks with increment, maybe this extension can be added to the GUI as well.
The GUI uses Tickcount64 for timing, this is not very accurate because it has a resolution of 15.625 msec. maybe this can be improved, nowadays most timing routines have sub-microsecond resolution.
-
gwiesenekker
- Posts: 74
- Joined: Sun Feb 20, 2011 21:04
- Real name: Gijsbert Wiesenekker
Re: (Hub engine) GUI for International Draughts
Hi,
Without increment GWD's hub and DXP reported time-used/time-left in the log-files are pretty much in sync with the GUI reported time-used/time-left (within a second). I don't think GWD handles increments at the moment, so these would be ignored bonuses.
I noticed .ini configuration using {ip}/{host} and {port} parameters were not ported over from version 1.7. I will add it back.
GW
Without increment GWD's hub and DXP reported time-used/time-left in the log-files are pretty much in sync with the GUI reported time-used/time-left (within a second). I don't think GWD handles increments at the moment, so these would be ignored bonuses.
I noticed .ini configuration using {ip}/{host} and {port} parameters were not ported over from version 1.7. I will add it back.
GW
-
Joost Buijs
- Posts: 508
- Joined: Wed May 04, 2016 11:45
- Real name: Joost Buijs
Re: (Hub engine) GUI for International Draughts
Maybe timings are right when you run under Linux, under Windows I clearly see inexplicable things happening with the clocks. Lets say a game takes 60 moves, and starts with 1 minute on the clock, each move gets a bonus of 1 second (the increment), so in total 2 minutes thinking time, how can it be that near the end of the game there are more than 2 minutes left on the clock? It looks as if the time used by the engine is calculated in a wrong way.gwiesenekker wrote: Wed Jun 10, 2026 16:42 Without increment GWD's hub and DXP reported time-used/time-left in the log-files are pretty much in sync with the GUI reported time-used/time-left (within a second). I don't think GWD handles increments at the moment, so these would be ignored bonuses.
A game with a fixed number of moves, and a fixed time for the whole game 'sudden death' is rather useless. It means that you will get games without result if the outcome is not known after the fixed number of moves have been played. It's also possible that one of the players will lose on time, or has to move so fast that it will lose anyway, playing with increment fixes this.
-
gwiesenekker
- Posts: 74
- Joined: Sun Feb 20, 2011 21:04
- Real name: Gijsbert Wiesenekker
Re: (Hub engine) GUI for International Draughts
Hi,
Version 2.1 is released. It re-instates editing of engine .ini files with macros and it provides some basic database filtering.
I will follow up the clock issue with Joost directly as I cannot reproduce the issue with GWD as Hub/DXP engines on Windows.
GW
Version 2.1 is released. It re-instates editing of engine .ini files with macros and it provides some basic database filtering.
I will follow up the clock issue with Joost directly as I cannot reproduce the issue with GWD as Hub/DXP engines on Windows.
GW
-
Joost Buijs
- Posts: 508
- Joined: Wed May 04, 2016 11:45
- Real name: Joost Buijs
Re: (Hub engine) GUI for International Draughts
I think it is because the engine under DXP does not receive any information about the increment. Therefore, the engine does not know that it gets an additional 1 second per move with a 1-second increment. Toward the end of the game (when it thinks it has almost no time left), the engine starts playing faster and faster. In endgames with kings that last many moves, the clock keeps building up.
I would try to also implement the DXP extension for increment (which Ed Gilbert once developed) into the GUI. It is only a minor change and it will likely solve the problem.
I would try to also implement the DXP extension for increment (which Ed Gilbert once developed) into the GUI. It is only a minor change and it will likely solve the problem.
-
Ed Gilbert
- Posts: 871
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: (Hub engine) GUI for International Draughts
I documented the DXP additions for Fischer time control in a forum post 10 years ago. I will paste it below. Also, to enable its use in kingsrow, there needs to be a file named "kingsrow.ini" in the directory Documents\Ed Gilbert\Kingsrow International. An empty file will work.
----------
I added a token I named in the source code DXP_GAMEREQ_FISCHER. It is similar to DXP_GAMEREQ, with version, initiator name, and follower color fields identical. An 'F' is sent as the first character in the message instead of 'R'. But at character offset 36 is a 6-character field for the initial time in seconds. Any ASCII number format (integer, fixed point, scientific notation, etc.) is valid. Then at character offset 42 is a 6-character field for the time increment, also in seconds. These 2 new fields are instead of the time and moves fields in DXP_GAMEREQ. The remaining fields for the start position are the same as with DXP_GAMEREQ, except they start at character offset 48 instead of 42.
It does not break the existing protocol. The Initiator can send a GAMEREQ message to start a game with a fixed time and number of moves, or send GAMEREQ_FISCHER message to start a game using incremental time.
----------
I added a token I named in the source code DXP_GAMEREQ_FISCHER. It is similar to DXP_GAMEREQ, with version, initiator name, and follower color fields identical. An 'F' is sent as the first character in the message instead of 'R'. But at character offset 36 is a 6-character field for the initial time in seconds. Any ASCII number format (integer, fixed point, scientific notation, etc.) is valid. Then at character offset 42 is a 6-character field for the time increment, also in seconds. These 2 new fields are instead of the time and moves fields in DXP_GAMEREQ. The remaining fields for the start position are the same as with DXP_GAMEREQ, except they start at character offset 48 instead of 42.
It does not break the existing protocol. The Initiator can send a GAMEREQ message to start a game with a fixed time and number of moves, or send GAMEREQ_FISCHER message to start a game using incremental time.
