dango.lua
is a cross-platform, lightweight Go board
dan•go [だんご]
noun
- A Japanese dumpling made from mochiko (rice flour)
- A Japanese go term, meaning "dumpling shape"; a solid mass of stones without eyes, and with few liberties
To make a no-frills Go client that supports GTP engines out of the box.
A lightweight, cross-platform alternative to Sabaki, especially for embedded systems that don't have the resources for an Electron-based program.
Still a work in progress, basic game is implemented:
git clone https://github.com/gsobell/dango.lua.git && cd dango.lua
make
love ./
Requires: LÖVE 2D
Work in progress, for now see build above.
Planned:
Platform specific binaries to be available under Releases in the future.
There are three default profiles, automatically detected at runtime:
- Desktop - cross-platform, mouse and keyboard
- Touchscreen - Phones, tablets, and eInk Tablets
- Embedded - RetroArch or Ludo
For the third category, care was taken only to use the API implemented by Lutro, a subset of LÖVE 2D.
This will allow dango
to run on any embedded device that supports Libretto's RetroArch. (i.e. handheld console, TV, smart toaster, etc.)
Navigate with arrow keys, vim keys, or mouse. Click, enter
or space
places a stone.
Keyboard shortcuts:
n
: new gameu
: undop
: passesc
: exit
- Any size board
- Stone and group capture
- Legal move detection
- Adjustable scaling for board, grid and stones
- GTP protocol
- Ko
- Undo
- SGF Import/export
- Zero configuration GTP engines
- Menu
- Profile auto-detection
- Branching game tree
- Themes
- eInk theme
- Low-res theme
See TODO for the project roadmap.
While any and all GTP engines should work, some require additional setup:
Engine | Linux | Windows | Android | macOS | Embedded | Notes |
---|---|---|---|---|---|---|
gnugo |
✅ | ⬜ | ⬜ | ⬜ | ⬜ | |
pachi |
✅ | ⬜ | ⬜ | ⬜ | ⬜ | |
michi |
⬜ | ⬜ | ⬜ | ⬜ | ⬜ | requires python2 |
lichi |
❌ | ❌ | ❌ | ❌ | ❌ | in development |
ray |
⬜ | ⬜ | ⬜ | ⬜ | ⬜ | |
katago |
⬜ | ⬜ | ⬜ | ⬜ | ⬜ | eigen cpu, openCL on AMD GPU tested |
leela zero |
⬜ | ⬜ | ⬜ | ⬜ | ⬜ |
✅ = just works
⬜ = untested
❌ = not available on this platform
See also:
dango - a nCurses Go board for the terminal
Made with LÖVE