SudokuFX Game v1.0.0
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:
- Download the
SudokuFX-1.0.0.jarfile from the "Assets" section below. - Make sure you have Java 17 or higher installed on your system.
- Run the game by double-clicking the JAR file (or using
java -jar SudokuFX-1.0.0.jarin your command line/terminal).
Reporting Issues and Contributing:
- If you encounter any bugs or have feature requests, please submit them to the Issue Tracker.
- The source code for SudokuFX is available on the GitHub Repository.
- See all releases on the Releases Page.
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.