Kanoodle Extreme Solver User Guide - benelder/Kanoodle GitHub Wiki
Kanoodle Extreme Solver Features
The Kanoodle Extreme Solver has four modes
- Puzzle Solver - load a pre-defined game state and find one or multiple solutions to the puzzle.
- Piece Browser - browse through all valid piece positions and observe the
RootPosition,Rotation, andLeanproperties which achieve a given position - Puzzle Builder - add pieces to an empty board to build a game state, with options to generate code to capture the result state and/or solve the puzzle for the defined state
- Piece Info - high level stats about possible positions per each color piece
Puzzle Solver
In Solver mode, you may select from a list of pre-defined game states to load onto the board. These states are codified in the GameFactory.cs class in Kanoodle.App. Note, you can use the Builder mode to generate code to easily add new game states to this class, if you want to expand the collection of pre-defined states.
Once a game state is selected, the starting state of the board is shown, and you have the option to find the first possible solution, or iterate through ALL possible piece positions and record ALL valid solutions of the puzzle. The latter option can take multiple minutes to complete for some game states.
View of finding a single solution
View of finding ALL possible solutions
Piece Browser
In Browser mode, you may choose a color piece (A-L) to browse through all valid positions for that piece. If you are interested in finding a valid position at a specific location on the board, you may filter the list of all positions to a subset which includes that location. This is an easy way to observe the attributes (RootPosition, Rotation, Lean) required to position a piece exactly as desired on the board.
Puzzle Builder
Puzzle Builder is the way to build a game state from scratch with the option to generate code or solve immediately. Builder mode uses the Piece Browser feature to find the desired position for a piece. Once found, hit SPACE to save the piece to the board. Repeat for other color pieces until the desired state is setup.
Placing the first piece
Placing the second piece
Placing the third piece and finalizing the state
Generating code to save the game state in the collection of pre-defined games
Solving for the defined game state
Piece Info
Info mode simply prints some high-level statistics about the total piece positions generated and tested, and the resulting total valid positions registered across all pieces, and per each color.