There is now a working AI player for 301 games. Choose play a solo game from the file menu and in the dialog put your name and a skill level for the computer. Try a few different levels to see what works. I think the skill level needs tweaking but I need to test it more to get a more realistic idea of where it's at now. You might want to start around 70 if you are actually going to play a real game against it. You can throw in some fake scores for yourself to test out the app. You must press accept score after you click the board with your dart locations then press accept score again for the computer before entering your next round.... read more
A lot of code comments have been added.
Also added AIPlayer class to allow playing against the computer. The class in its current state simply throws 3 double cores. I want to describe what I have planned for it. My intention was to choose the best number to shoot for with the next dart based on the score. I expected this code to be reasonably easy but as I got into it I realized, to have a good computer opponent, it would take quite a bit of work as I was nesting If..elseif..else in a spaghetti fashion. So I rethought how to implement it and decided to choose a point on the board at the center of the best number to shoot at and use the skill level setting to decide how far from (and in which random direction) the target the dart actually lands. So I used the idea of grayscale heightmaps used in 3d terrain to create a virtual dartboard. I took my xaml dartboard and cleaned it up so all of the scoring areas had rgb values with the g set to 1, 2, or 3 and the b value set to 1-20, or 25. The area around the board all pixels had 255 in both b and g. I copied these values into an array of Target structures that hold the point value and modifier.... read more
A few days in and a lot of my time was spent getting acquainted with sourceforge. I did find a little time to code and got a basic save game feature implemented by serializing to xml.
My first experience with sourceforge has been fair. I had a great experience with AnkhSVN for visual studio. It was easier than I expected after reading several forum post about subversion. I installed it, set it up with the url, associated my project and submitted. Very smooth.... read more
The project currently consists of a user control library with two working user controls - DartBoard and ScoreBoard, supported by a class library. The focus would be - dialogs to select options and features, serializing the objects to xml to permit saved games and match reports, and general optimization of current code. Looking for any developers that can help clean up the current code and move it forward.... read more