What I’m Working On:
A Minesweeper clone written in Java, based heavily on the version included in the Gnome Desktop Environment.
I originally wrote the game for two separate project in my computer science class at the University of Georgia. The first project was to a basic implementation of the game using a command line interface (CLI). That was a breeze and I received a perfect score. The second project using the same code required two new features:
- Serialization: The game could be saved and then loaded to play at another time and,
- Recursion: If a cell was uncovered and had no surrounding mines, all the surrounding cells would have to be uncovered recursively.
I had a bit of trouble with my recursive algorithm and ended up turning in my project without a complete recursive implementation. Surprisingly, the TA that graded the project gave it a perfect score. But it still bugged me.
Later on in the course, we had the option of implementing a graphical user interface (GUI) for the game as a replacement for the lowest project score. I opted out given that my grades where fairly good.
Now that I’m done with course, I went back to try to implement everything I missed out on. The first problem I tackled was the recursively algorithm. I turns out I was calling it in the wrong place. After determining where the algorithm should be called, I made the necessary changes and it worked pretty smoothly.
Unfortunately, a new bug had occurred. It was now impossible to win a saved game. For some reason, the fields I had assigned we not being saved properly or were no longer being referred to as they where. I tried a little debugging, but I wasn’t getting a breakthrough anytime soon.
I decided to tackle the GUI instead. Using NetBeans built in Form Editor, it looked like it would be easy sailing from there. But as I got closer to trying how to tie the GUI to the game code, I hit another roadblock.
I scrapped the GUI altogether and decided to clean up and fix my current implementation.
- About 40% (aribitrary estmate)
- Currently compiles but is broken.
- Random mine generation did work
If anyone has any advice or tips, please feel free to comment.