Skip to content
/ Sudoku Public

Interactive Sudoku game and step-by-step solver to demonstrate principles of OOP

Notifications You must be signed in to change notification settings

cihar29/Sudoku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sudoku

Interactive Sudoku game and step-by-step solver to demonstrate principles of OOP (inheritance, polymorphism, testing, etc)

Contents Start Instructions Gameplay Testing

Start

  1. Install SDL2 framework
  2. Get a font (.ttf file)
  3. Run with ./run.sh and you will find a few options
  4. Fun options include
    1. ./run.sh -type cp
    2. ./run.sh -type vp
    3. ./run.sh -type vcp -walkthrough y
    4. ./run.sh -type vcp -file puzzles/input3.txt -autosave y (pretty pictures)
    5. ./run.sh -type vcp -autosave y (pretty pictures with test players)
  5. After you compile once, feel free to comment it out in run.sh

Instructions

  1. Use Player class to play text-based
    1. create your own board
    2. Load a text file
  2. Use VisualPlayer class to play visual version - this includes helping numbers!!!
    1. Press 'space' to add helping number
    2. Press 'a' to add all available helping numbers (very helpful for technique)
    3. Double-click a helping number to remove it
    4. Press 'c' to clear all helping numbers
  3. Use CompPlayer class to solve a puzzle text-based (techniques are currently incomplete)
    1. Use walkThrough option to click through step-by-step solution
    2. autoSave option provides nice text file summary
  4. VisualCompPlayer class to solve a puzzle visually
    1. Use walkThrough option to click through step-by-step solution
    2. autoSave option provides nice image summary

Gameplay

Helping Numbers

Testing

  1. Get Catch2 header file
  2. ./run.sh test

About

Interactive Sudoku game and step-by-step solver to demonstrate principles of OOP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published