Tor Egil Hoftun Kvæstad

— Joy in creation

Jattsi

Screenshot
Jattsi Screenshot

An implementation of the game Yahtzee, using the rules found on the norwegian wikipedia-article about the game. The name comes from how the author would pronounce it in norwegian.

System requirements

Download

FileJattsi-2_1_1.zip (67KiB)
Release2.1.1,
MD5-Sum64555a1fe74b10044cbc8e9b32cca677
SHA1-Sum259e6dad7bf07c99ddd1f6a4c275cf5e787ff25b
SHA256-Sum9c226f8395df6ce814d240754cd0465a181552b02bfcf0c3189d744503071aa3
GPG SignatureJattsi-2_1_1.zip.sig

Languages

Features

Missing Features

Things that might be implemented in later versions

Known bugs

Design

The current design is shown in the following UML diagrams.

Version 2.1.0

I’ve been fixing some bugs, and making the interface look a bit better. Under the hood I’ve also done some refactoring, either because I’ve learned something in the meantime, or because of new things in Java.

A moderately difficult AI has been added. Whereas the easy one just rolls the dice three times and then puts the score in the next free place, the moderately difficult one holds the dice to maximise the amount of points it gets. It still just puts the score in the next free place.

I’m thinking of adding a difficult AI later, one that searches for which score to use, but I need to read up on probability first. The function to choose score will probably be Maximum points available * Probability of getting the score.

If you want, you can now choose that you have to take the points in order (ones first, then twos, then threes, and so on).

There is a regression in this version, in that the window is not resized properly when you start a new game. It will be fixed in version 2.1.1.

Version 2.0.0

I’ve been doing some reading and coding since the first version, so I think I’ve managed to do it better this time around. There are still issues with it, however. The GUI is still not as good as I would like, and the AI could be more intelligent.

The current AI is rather stupid, and works like this:

StupidSequentialAI:
        While dice can be rolled
              Roll dice
        For each possible place to record a score
              If no score has been recorded here
                 Record score here
                 Return

Tools Used

Ant, ArgoUML, Gimp, Git, GNU Emacs, Java J2SE 1.7.0, JUnit