Let us continue my development diary for the threes game. The alpha build of this game is now on the blazing games coming soon page.
12:30 Time to break for lunch.
13:15 The next phase is to get the player scores and overall multi-player management code into the game. This consists of creating a rough version of the player class and a rough version of the game management class. As with my earlier 36 game, this game will support up to 6 players, with the option of having the computer take as many positions as desired. Color coding seems to work great for separating players. The order will have to be randomly selected, but the first goal is simply to lay out the game.
14:45 Now we want to get the player class actually working. There are five pieces of information that needs to be dictated to the player. The rolling order is going to be randomly determined for every round of the game so that bottom colors do not have an advantage over earlier players. By randomizing the order every round, no position has an advantage over others over the long run. There are 6 players and there are 6 sides to a dice, so having a die indicate the order would be ideal. Next to the order indicator is the human/ai toggle. Then we have the point score followed by the score for the round. Finally, there needs to be a message for indicating if the player has won or tied the game.
16:00 We are still not ready for a new build of the game as we still need for the manager of the game to actually manage the game. First task is to determine the proper order. This uses my basic shuffle algorithm where each item in a list is randomly swapped with another item in the list. Next we have the manager send notice to the player in control a notice that it is their turn. The game will alert the player when the final score is reached. The player then is suppose to call the manager once the game is done. Just before my supper was ready, I compiled the second pre-alpha build.
18:00 We last left with the game flow not quite working so our first goal is to make sure that the next player is properly accessed. Once this is done, the problem with the dice not properly reseting themselves is obvious so that bug is fixed by simply having the start game reset the dice positions. Finally, we add support for ending the game and make the two buttons on the bottom activate themselves. Now that the game is fully playable, I am changing the designation of the game to alpha and have made the first alpha build.