Skip to content

SudokuFX Game v1.0.0

Choose a tag to compare

@Math23Kskb Math23Kskb released this 29 Mar 00:44
· 3 commits to main since this release

SudokuFX 1.0.0 - Initial Stable Release

Welcome to the first stable release of SudokuFX! This JavaFX-based Sudoku game provides a classic and engaging puzzle experience. We've focused on a clean user interface and core Sudoku logic for this initial release.

Core Functionalities Implemented:

  • Interactive Sudoku Board: A 9x9 grid-based Sudoku board where players can enter numbers and attempt to solve the puzzle. The board is visually styled with subgrid highlighting for improved readability.
  • Number Input Validation: The game provides real-time validation of user input, preventing the placement of numbers that violate Sudoku rules. Invalid moves trigger a warning alert, explaining the specific rule violation (row, column, or 3x3 box conflict).
  • Automatic Sudoku Generation: The game automatically generates new Sudoku puzzles with a varying degree of difficulty. The puzzles are created using a combination of:
    • A Sudoku solver that creates a complete, valid Sudoku solution.
    • A number remover that removes numbers from the solved board to create a puzzle, balancing difficulty and solvability.
  • Game Over Detection: The game detects when the Sudoku board is completely filled. When the user completes the puzzle, a "Congratulations!" screen appears.
  • New Game Functionality: The "Congratulations!" screen has a start new game button where when the user clicks, a new Sudoku game starts.
  • Unit and System Tests: Includes unit and system tests that were implemented to check the software's core functionalities.

Technologies Used:

  • Java 17 or higher
  • JavaFX for the user interface
  • Maven for build management
  • JUnit 5 and Mockito for unit testing
  • TestFX for UI testing

Installation Instructions:

  1. Download the SudokuFX-1.0.0.jar file from the "Assets" section below.
  2. Make sure you have Java 17 or higher installed on your system.
  3. Run the game by double-clicking the JAR file (or using java -jar SudokuFX-1.0.0.jar in your command line/terminal).

Reporting Issues and Contributing:

Known Issues:

  • No known issues known.

Future Implementations:

We plan to add the following features in future releases:

  • Difficulty Selection: Allow users to choose a specific difficulty level (Easy, Medium, Hard, Expert) to customize their gameplay experience.
  • Timer: Implement a timer to track how long it takes the user to solve a puzzle.
  • Hints: Provide a "Hint" button that reveals a single correct number on the board, offering assistance to players who are stuck.
  • Undo/Redo: Implement undo and redo functionality to allow players to easily revert and reapply moves.
  • Save/Load Game: Enable users to save their progress and load games later.
  • Improved UI/UX: Enhance the user interface and overall user experience with improved styling, animations, and accessibility features.
  • More robust error handling: Add robust error handling for a better user experience.

Contributing:

We welcome contributions from the community! If you'd like to contribute to SudokuFX, please feel free to fork the repository, make your changes, and submit a pull request.

Credits:

  • Developed by Matheos Chiyuki Kusakabe (Math23Kskb)

Enjoy playing Sudoku! We hope you find SudokuFX to be a fun and engaging puzzle game.