This is my last post regarding the documentation for the checkers program I am developing. I thank anyone reading my blog that has bared with me and the many diagrams uploaded.
I have completed the documentation part of the development and won't start coding for a while as I have exams next week and then holidays.
I have completed the IPO chart, Data Dictionary, Structure chart, screen designs and storyboard since my last update. I have made a few version 2 diagrams after doing the IPO and data dictionary for correction.
Thank you and goodnight! (for me anyways)
A blog for my Software Design and Development Major Project in which I will be developing the classic board game Checkers.
Sunday, 25 March 2012
Friday, 23 March 2012
Level 4 Move Piece Flowchart
This is the Move Piece system flowchart this is used in both the Player 1 Turn and Player 2 Turn flowcharts.
Finished Checkers research.
I have finished researching checkers and about how to play it well. I have applied all these aspects on how to play well to me computer hard difficulty algorithm that I have completed and added to a software flowchart. These strategies are: complete piece trades such as allowing your opponent to take one of your pieces and then take two of theirs, 3 for 2 and even 3 for 1, move pieces towards the center of the board, king your pieces as they prioritise over every other move (except for the trades), do not move your back row unless you really need to (this prevents your opponent from kinging their own pieces) and avoid wasting pieces by just letting them be taken because its all about the numbers. The more pieces you have than your opponent, the easier it is to trap their pieces.
The rest of the diagrams will be fairly straight forward and a lot easier to do now that I have figured my algorithm out.
The rest of the diagrams will be fairly straight forward and a lot easier to do now that I have figured my algorithm out.
Level 2 Select Game Details Version 2 Flowchart
This is version 2 of the select game details flowchart, I have decided to remove the medium difficulty and I have added 3 processes which are, create player/s, create computer player and create game.
Wednesday, 21 March 2012
Monday, 19 March 2012
Even More Checkers Research and Ideas
I have begun to write down all of the Checker's strategies that do 2 for 1 trades, 3 for 2 trades or 3 for 1 trades in order to remember them also in the future for when I actually begin coding the program. I will create short algorithms for each of these trades that activate when the pieces on the board are in a certain positions. I may create a flowchart for each possible trade position but that may be pointless and time consuming. A few more diagrams will be scanned and uploaded soon so be prepared. Once I have figured out the computer hard difficulty algorithm, everything will be straight forward from there. I am not too far from figuring out an algorithm that has hard to beat.
Saturday, 17 March 2012
More Checkers research and Ideas
I have done more research on how to win Checkers in order to apply that to my computer hard difficulty. I have learned a few strategies. Using the force jump rule, I have noticed that your opponent would force you to jump one of his pieces and in turn he jumps two of yours. Also, he would force you to jump two pieces then he would jump three of yours. I have learned that you must do trades like these such as 2 for 1, 3 for 2 or even 3 for 1 to win the game.
Another basic strategy is to not move your very back row unless you absolutely need to. This prevents your opponent from getting Kings (the pieces that can move forward and backwards). In order to completely finish the flowchart diagrams, I need to do this research for the computer hard difficulty flowchart.
I also am thinking of adding an 'instructions' page where it tells you how to play Checkers and all the rules. For example, I did not know that if you cannot move a piece then you lose. There might be others that do not know rules such as these.
Another basic strategy is to not move your very back row unless you absolutely need to. This prevents your opponent from getting Kings (the pieces that can move forward and backwards). In order to completely finish the flowchart diagrams, I need to do this research for the computer hard difficulty flowchart.
I also am thinking of adding an 'instructions' page where it tells you how to play Checkers and all the rules. For example, I did not know that if you cannot move a piece then you lose. There might be others that do not know rules such as these.
Wednesday, 14 March 2012
Play Game Flowchart
This is a level 2 flowchart that defines the 'Play Game' process further. It will also be broken down into Player 1 Turn, Player 2 Turn, Computer Turn and Check for Winner.
Select Game Details Flowchart
This is a level 2 flowchart that has defined the 'select game details' method on the main level 1 flowchart. This flowchart will not need to be defined further.
First flowchart
This is my level 1 flowchart of my main method. It will be further broken down into the many methods.
Monday, 12 March 2012
Research
At the moment, I am creating my software diagrams, mainly the software flowcharts. I am also researching Checker's itself. I am finding strategies to win the game easily and be able to not lose at the same time. I have found that there are over 500 billion billion (or 500,000,000,000,000,000,000) possible positions of the pieces on the board. Obviously there is no way to find every possible position in time and the size of the program would become far too large. I realized I do not need to create a perfect algorithm that cannot lose for the computer hard difficulty but I need to create an algorithm that is hard to beat but sill possible otherwise it would be pointless for a user to even attempt to win.
Friday, 2 March 2012
Brainstorming of Ideas and Progress Update
I have begun to think of many extra ideas I could apply to the creation of the Checkers game. Since I will not change the rules of the Checkers game itself, I will add many extra features to enhance the users experience and eventually make the program easier to use.
I plan to add a save and load function which simply creates a text file in the PC's C: drive that it can automatically access or perhaps allowing multiple save files, so the user can come back and resume more than one game. A highscore table can be added that will calculate who won Checkers in the smallest amount of moves. This will also have to be saved to an external file.
In terms of progress, I have finished the feasibility study and have begun the Ideas and Generation. After that, I will begin the diagrams, namely the flowcharts. I plan to work on this project a lot more often now that the Year 12 exams are coming up. Study may get in the way of the planning for the Checkers game. The study will also include studying Software Design and Development itself.
In terms of progress, I have finished the feasibility study and have begun the Ideas and Generation. After that, I will begin the diagrams, namely the flowcharts. I plan to work on this project a lot more often now that the Year 12 exams are coming up. Study may get in the way of the planning for the Checkers game. The study will also include studying Software Design and Development itself.
Subscribe to:
Posts (Atom)