Screenshot and Download

image

Download hookviewer.exe which is a signed executable. You may have to click More info and allow through the SmartScreen warning.

Dependencies

License

GPLv3

Usage

Run the command (or create a shortcut) as follows:

hookviewer.exe 0 paychess.com

This will run the app as a primary instance behind your NAT or Firewall. You can run a secondary instance, on another device within your network, by incrementing the first arguement.

The above command will use www.paychess.com to retrieve some live Game ID and Match ID data, and ics.paychess.com to connect for UDP service (generating a Game ID, observing a Match ID, and getting and setting moves for play)

Firewall

Keyboard shortcuts

space bar - pull in list of Match ID's from the web server

left arrow - Go to the previous Match ID, if there is one.

right arrow - Go to the next Match ID, if there is one.

r - Refresh the current Match ID (displayed or observed moves on the board)

left mouse button - select a piece to move

right mouse button - clear any highlighting of the squares

p - Put the highlighted move (start square, end square) to the server.

F8 - flip the board view

c - clear any highlighting of the squares

g - get a fresh Game ID, which can be used for white or black side.

h - Hide or show the column of Game ID bitmaps, for selecting a game to match.

q - pull in the full list of Match ID's from the server again.

e - pull in the full list of Game ID's from the server again (for column)

n - Start a new game (visiting the match id consisting of personal Game ID and the one from the column)

Controls for the column of Game ID bitmaps:

up arrow - Move up the list of gameids by one Game ID visual.
down arrow - Move down the list of gameids by one Game ID visual.
page up - Skip up the Game ID boxes by a group.
page down - Skip down the Game ID boxes by a group.
home - Return the Game ID visual to the beginning
end - Advance the Game ID visual to the end.

1 - load the Game ID at the current position of the Game ID column as white
2 - load the Game ID at the current position of the Game ID column as black
o - observe the match id based on the loaded registers, 1 versus 2
l - return to the last match id that was created with the new game key