1. GNOME Sudoku
By Chris Baines
The Gnome Sudoku game, currently written in python, is not up to the standards set out here [1]. My project will complete the Vala port, and make sure its easy and worth to play.
[1] https://live.gnome.org/GnomeGames/Modernisation
1.1. Links
Google Summer of Code Proposal: https://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/cbaines/12002
GitHub repo: https://github.com/cbaines/gnome-games
1.2. Reports
1.3. Achievements
- Use GMenu to better integrate with the shell
Use GtkApplication to give the shell more information about the game
- Addition of a number picker
- Warning the user if a cell becomes unfillable
- Display of possible numbers
- Display of hints for the user
- Display of broken cells to the user
- Complete direct port of the python solver (not rigorously tested)
- Partial direct port of the python generator
- New game screen
- Victory condition and animation
- General Improvements
- Better separation of view and model
Syntax support for the SudokuBoard model
- Better breakage system for the model
1.4. Remaining Tasks
- Complete the port of the generator (with improvements if possible)
- Persistent state (you close the app, and can reopen it to continue with your game)
- Saving games and management of saved games (on the new games screen)
- Score/Timing (Need to discuss/think about this to decide if it should be implemented)
- Implement a highscore table
- Complete the game timing along with the ui
- General UI work (Allan Day offered/provided mockups to help with this)
- Logic Help screen
- Improve the implementation and animation of the end game animation
- Printing
1.5. The Code
The code that I am submitting for this project is available here: https://github.com/cbaines/gnome-games/tree/sudoku-vala-submission . To compile it, you can use jhbuild to build the current gnome-games module, then add my remote, then checkout the above branch, and do jhbuild make to build it. I have not tested these instructions, and I am not sure if this is the best way of doing this, but if you have any problems, just contact me.
I am also continuing developing outside the project on this branch: https://github.com/cbaines/gnome-games
1.6. Images
1.7. Video
Early demo of the entry systems: https://www.youtube.com/watch?v=oFRmXnZfDg0
More videos becoming soon, once I can find some software to record my desktop well
1.8. Contact
Email: <cbaines8 AT SPAMFREE gmail DOT com>
IRC: chrisb (gimpnet - #gnome, #gnome-hackers, #gnome-love, #gnome-shell, #soc)