Skip to content
Little GolemMake your next move.

Analyse Conhex

Public forum discussion.

#2 · Florian Jamain

27 Jan 2022

Nice one!

Need to make another stream on conHex then mmKALL :D

#3 · mmKALLL

30 Jan 2022

Thank you for adding the link, Richard!

Fixed two bugs this weekend:

  • Page should load properly on Safari now
  • Fixed a few problems with swap handling

Let me know if you run into any other issues :)

#5 · mmKALLL

2 Feb 2022

Thank you for the nice words. :)

Made a small update, now it's possible to click on a move number to jump to that move. If you have any other feedback or requests I'd be happy to hear them out!

#6 · agtoever

25 May 2022

Thanks for creating this. I'm working on an (open source) Python ConHex application. Basic gameplay is implemented. If anyone is interested, I'll share it on GitHub.

While testing this, I noticed a difference between the LittleGolem board layout and the conhex.com viewer layout: the row numbering on LittleGolem goes bottom-up (row 1 = lowest row). While on conhex.com, the top row is row number 1.

Of course this makes no difference for the game itself, only that it's vertically mirrored. But if you want to load/save games across platforms, it's annoying.

Does anyone have an opinion on what's the "best" (most preferred) numbering?

#7 · agtoever

25 May 2022

For anyone interested in playing ConHex on your own computer... I created a (basic) ConHex application using Python. You can find the first prototype here on GitHub: https://github.com/agtoever/ConHex

Feedback, suggestions, etc are welcome (here or on GitHub).

#9 · mmKALLL

30 Jun 2022

For reference, the conhex.com viewer is also open source: https://github.com/mmKALLL/conhex

The board creation logic is at https://github.com/mmKALLL/conhex/blob/main/src/utils/board-utils.ts , but due to the board topology (and lack of time) it is a bit confusing. Basically I create one-fourth of the board (top-left diagonal and the wide tiles along the top edge), then rotate it four times.

The SGF parsing logic is in src/utils/gamestate-utils.ts, and the main in-game logic is at src/components/game-board.tsx.

I originally spent a lot of time trying to determine which coordinate system would make the most sense. Little Golem, Yucata.de, and igGameCenter all have different schemes!

In the end I went with a system that's similar to LG, except with the vertical axis flipped. This was arbitrary, but I felt it's more natural due to how the implementation works, and personal influence from Go, Shogi, and Reversi. IIRC Yucata and igGC also start the numbering from the top. (Some games like Chess and Draughts traditionally start the numbering from the bottom though. I'm open to doing that if necessary.)

Thank you agtoever for creating another viewer! I'm especially curious about the computer opponent, have you implemented deep learning AIs for other games?