10/05/2009, 10:25 PM
|
#1 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
Five Dice is another webOS implementation of Yahtzee, this one modeled roughly after Mirek's excellent Yahdice for PalmOS. It's a relatively simple (and very small) program that I thought would serve well as my first foray into webOS programming.
This program is released as free software under the GNU GPLv3. Source code is available from GitHub. PLANNED FEATURES: If I can acquire a reliable server, I'll make a Web-based global high scores list. REVISION HISTORY: 0.5.0, 2009-10-05 First public release. Extremely bare-bones, but perfectly playable. 0.6.1, 2009-10-10 Buttons have a larger font. The Subtotal has been moved up above the Bonus, and now shows how your subtotal compares to what it should be in order to get the bonus. 0.7.0, 2009-10-10 All button scores now start out blank. After each roll, possible scores are shown in teal. 0.8.0, 2009-10-18 Added shake support and disabled the Roll button for one second after each roll (to avoid accidental re-rolling). 0.9.0, 2009-10-24 Fixed the problem with the "Play Again" button not recognizing a tap in the middle of the button. Enlarged the button text to improve readability. Added in-game help and a preferences screen, as well as menus to get to the new screens (among other things). 0.9.1, 2009-11-15 Changed the awarding of extra five-of-a-kind points to match the official rules. 0.9.2, 2009-11-17 Added an "Undo" item to the application menu. 0.9.3, 2009-11-24 Fixed a bug that would often grant an extra 100 points the first time you score 5 of a kind. "Undo" now restores the held state of all dice. Pretty big code reorganization to pave the way for hot-seat multiplayer. It also resulted in a better separation of game logic from UI, which is just good to have anyway. 0.9.4, 2009-11-25 A missing pair of parentheses was allowing dice to be held when they were blank (such as before your first roll). That's been fixed. Also, the app title has been re-added in the "About" dialog. 0.10.0, 2009-11-29 Five Dice is now Pixi-friendly! The main screen has smaller buttons, so they can squish together tighter on Pixi screens. Along with this comes a green background and yellow score suggestions. There's also a white title bar at the top, which is where the player name will go when multi-player is done. 0.11.0, 2009-12-5 Hot-seat multi-player is fully implemented. 0.12.0, 2009-12-13 Added high score handling. 0.12.1, 2009-12-16 Changed the die-rolling function to give a more even distribution of results (thanks virsago!). Fixed spacing and spelling in one of the single-player dialogs. 0.12.2, 2009-12-20 Scores can now be deleted using a dialog from the High Score scene's menu. 0.13.1, 2010-07-23 Preferences now have a Colors group box where you can set different colors for background and text. 0.14.0, 2010-08-01 There's a new option to have all the dice freeze after each roll, so that you can select the ones you want to re-roll rather than the ones you want to hold. 0.15.0, 2010-09-11 In lieu of actual animation for rolling, the dice go blank and then show their values in turn, with a configurable speed. 1.0.0, 2010-09-17 This is exactly the same as version 0.15.0. The version number was bumped up for the first Palm App Catalog release. 1.1.0, 2010-10-06 Added a menu item in the High Scores scene to let you limit how many scores are saved. 1.2.0, 2010-10-16 Changed text color to white for dark backgrounds in the Preferences color choosers. Last edited by zelmo; 10/16/2010 at 09:31 PM. Reason: Moved the location of the source code |
10/07/2009, 10:17 PM
|
#2 (permalink) |
|
Member
![]() ![]() Join Date: Jul 2009
Posts: 607
Likes Received: 3
Thanks: 141
Thanked 243 Times in 91 Posts
|
I'm getting a new Pre tommorow, I'm going to install your program and post some feedback.
In the meantime, have you ever played Farkle? Farkle - Wikipedia, the free encyclopedia There is a version in the official app catalog called Zilch, but it kinda sucks. Scoring dice are automatically kept; you can't re-roll a low scoring die to attempt a better score. In the real game, you only keep the dice you want, so you can roll more dice to improve chances of getting a higher combo. Do you think you would be interested in creating a homebrew of this game that the community of PreCentral can help you make great? |
10/08/2009, 08:34 AM
|
#3 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
That's an interesting proposition. Zilch Lite is the first Farkle implementation I've seen, so I wasn't even aware of its limitations.
I had planned on doing a cross-sum game after getting the hang of Mojo programming, but maybe Farkle would be a good stepping stone between Yahtzee (dead simple to create) and cross-sums (a bit complex). |
10/09/2009, 12:51 PM
|
#4 (permalink) |
|
Member
![]() Join Date: Oct 2009
Location: Barrie, ON
Posts: 175
Likes Received: 0
Thanks: 23
Thanked 14 Times in 10 Posts
|
I know you said it's your first WebOS program, but maybe using the Pre's accelerometer to shake the dice would be a cool feature.
__________________
Bell Pre- running 2.1 @ 800MHz Samsung Galaxy Tab (stock) |
10/09/2009, 05:57 PM
|
#5 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
I wondered if anyone would request that feature. Now that you have, I'll put it on my to-do list, though I first need to get to the "Services" chapter in the webOS programming book
|
10/09/2009, 07:15 PM
|
#6 (permalink) |
|
Member
![]() ![]() Join Date: Jul 2009
Posts: 607
Likes Received: 3
Thanks: 141
Thanked 243 Times in 91 Posts
|
Ok I really like this app! Here is my feedback.
1. The icon looks blurry. When you create a new one, it should be more descriptive than just a dice face. If you do that, what will you use for the Farkle app? ![]() 2. I really like the layout of this one! I think I prefer it to yatz. 3. The font of the score buttons is pretty small. A larger font would be easier to read. 4. I would like to see a confirm score button, so that way you could check and see if the dice you have would score more as different stuff. For example, will I get more points on this roll as a chance or as a three of a kind? I want to click each and see the reported score, then accept that score with another click. 5. If you add shake to roll dice, watch the sensitivity! When I play yatz, it is very easy to roll again when I'm not ready to yet. 6. In actual yatzee, you earn points for a second yatzee (five of a kind). I guess the easiest way to enable this on this game would be if you roll a second yatzee, then the five of kind button come back so you can score it again. Like I said, I really like this app, keep up the good work! |
10/09/2009, 09:48 PM
|
#7 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
@cwgtex:
1. Agreed. Artwork is really not my strong point, and the icon is really just an enlarged version of the dice that are used in the game. If anyone is willing to contribute better artwork (under a Creative Commons or copyleft license), I'll gladly put it out for the world to see! As far as the Farkle icon, I was toying with calling it "Six Dice" and using the #6 die as the icon. ![]() 2. Thanks! The layout is what I like most about Mirek's version, too. 3. Will do. There's a bit of room for larger fonts if I abbreviate some of the right-side buttons, so that will be in the next release. 4. Mirek actually had a really great way of doing this, where on every roll, a second column of numbers appears to the right of each score area that hasn't been used yet. Those numbers show what the current roll is worth for each possible score item. I really want to do something like that, but there's not much room for another column of numbers without shrinking the font even further. I thought I had just now is to show that number on the button itself, so I'll play with that idea to see if it's going to work. 5. Amen to that! One thing that bugs me about Mirek's Yahdice is that it's too easy to double-tap the Roll button when you're on a bumpy bus ride, and it will roll twice. I'll be sure to put in a (reasonable) forced delay between rolls. In fact, is there any interest in having that now, while we just have a Roll button? 6. For now, the game automatically adds 100 points to your Yahtzee score if you roll five of a kind more than once, and you still get to use that roll on another score item. At least that's how it's built, and how it's worked when I've tested it. The official rules are slightly stricter than that, but again I'm going off of Mirek's game, which behaves pretty much like what I've described above (except that he also gives you a pop-up saying you just got an extra 100 points). Someone else messaged me about missing that feature though, so if it's not working for you then by all means keep me to task. |
10/09/2009, 10:16 PM
|
#8 (permalink) | ||
|
Member
![]() ![]() Join Date: Jul 2009
Posts: 607
Likes Received: 3
Thanks: 141
Thanked 243 Times in 91 Posts
|
Quote:
Quote:
|
||
10/10/2009, 01:27 AM
|
#9 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
I had a couple of spare hours tonight, so I put out a new release. See the top post for the revision history.
It's nothing big, but it does lay some groundwork for cooler things. |
10/10/2009, 02:33 PM
|
#11 (permalink) |
|
Member
![]() ![]() Join Date: Jul 2009
Posts: 607
Likes Received: 3
Thanks: 141
Thanked 243 Times in 91 Posts
|
I like the new version! The score preview is perfect. Even easier than what I suggested, with the same result.
One thing I'm not clear on: the subtotal thing. Maybe I'm just dumb, but I'm not grasping the purpose of it. What bonus is it referring to? |
10/10/2009, 03:45 PM
|
#12 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
A standard Yahtzee scorecard has a "Bonus" item at the end of the Upper Section (which is the left column in Five Dice). If your Upper Section subtotal is 63 or higher, you get a bonus 35 points. A score of 63 works out to be three dice per number score (Ones score = 3, Twos score = 6, Threes score = 9, etc.).
Mirek's game has an "expert" mode, which (among other things) compares your Upper Half score to what it would be if you had scored three dice in each of the categories you've scored on so far, and shows the difference next to your actual subtotal. So, for example, if you get four fives on your first turn and use them for your Fives score, that's five more points than you strictly needed for Fives, so you're five points ahead of the curve. If on your next turn you score two Twos, that's two points shy of what you needed to get on Twos. Coupled with your extra five points on Fives, you're now only three points ahead of the curve. |
10/18/2009, 10:34 PM
|
#16 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
FYI, I've just uploaded version 0.8.0 to the HomeBrew apps, and updated the attachment in the top post in this thread. This version adds shake support, as well as a one-second delay between rolls, during which the Roll button is disabled.
Please let me know what you think about the one-second delay (too long, too short, not needed at all, whatever). Sorry, I don't think I can do anything about the shake sensitivity (it doesn't seem sensitive enough to me), but I'll be sure to include an option to enable/disable it once I have an options page up and running.) |
10/28/2009, 10:22 PM
|
#18 (permalink) |
|
Member
![]() ![]() Join Date: Jun 2009
Posts: 92
Likes Received: 0
Thanks: 21
Thanked 34 Times in 30 Posts
|
The source code repository is now being served up by my home computer. So as long as my computer is up, you can view the code in a Web browser or check out a working copy using a Subversion client.
See the top post for the address. |
![]() |
|
| Thread Tools | |
| Display Modes | |
|
|



