A rudimentary implementation of Sudoku made in Godot that puts code structure first.
Note
GUI is not finalized, all art shown is placeholder.
- Playable sudoku
- Candidate marking
- Board highlighting
- Custom highlighting options
- 800,000+ Unique puzzles1
- Ability to play puzzles not included via a board code
- Major UI overhaul
- Game saving
- Hotkeys
- SFX
- Reworked Board Codes
- Multiple candidate display types
- Multiplayer2
- Multiple puzzle types (N x N board size, killer, crazy, etc.)
- Dynamic board generation3
If you've got any ideas that aren't currently outlined in the roadmap and that aren't available in the game itself, make a feature request. Is it on the roadmap? Still let me know, I want to know what people want.
Board codes take the following format: 81 digit-long string of numbers from 0 to 9, representing digits from top to bottom, left to right in the board.
Example string: 000200160561309020400006050047060031000802000320070680010600008030507412075008000
Example board:
0 0 0 2 0 0 1 6 0
5 6 1 3 0 9 0 2 0
4 0 0 0 0 6 0 5 0
0 4 7 0 6 0 0 3 1
0 0 0 8 0 2 0 0 0
3 2 0 0 7 0 6 8 0
0 1 0 6 0 0 0 0 8
0 3 0 5 0 7 4 1 2
0 7 5 0 0 8 0 0 0
Note
There is no agreed-upon way to represent sudoku boards as a string, this format will likely change to allow for a more dynamic and customizable sharing / storing of puzzles in the future.
Footnotes
-
This project makes use of this public domain sudoku puzzle dataset. ↩
-
This project was at one point refactored to better anticipate a code structure that supports multiplayer, but that "solution" ended up not being viable due to limitations / security concerns with the engine. I am still trying to figure out the best way to implement this (let me know). ↩
-
Once functional, this project will generate its puzzles directly, or have a list of puzzles compiled by this generator. This will also allow for custom generated N x N puzzles. ↩