Archive for the ‘Uncategorized’ Category

New d4 Graphics and Icons

Monday, September 15th, 2008

I’ve been sick for the last few days so progress was a bit slower than previous weekends. But I managed to start putting in some settings (so that dice formulas are saved between sessions) and worked on some graphics.

The four sided dice finally have the correct graphics on them and I’ve added icons for the four corners (history, settings, previous board, next board). You can also see the locking circle for the middle die.

I’m not totally sold on the corner graphics. I originally just had the icons without the rounded rectangle button shading, but it looked too cluttered. Adding the rounded rectangle button shading helped it look more cohesive, but I’m trying to come up with something better.

Mistakes Were Made

Saturday, September 13th, 2008

I, of course, never make mistakes. Well … okay, there was that one incident with the fire in 1988 (hoo boy, that was a doozy) but I digress. For the rest of you, I’ve implemented a backspace key! That’s right, one of the most requested features has finally made it in.

I’ve tried to create an icon that blended in with the rest of the interface in an intuitive and unobtrusive way. It only appears when you’re typing in a formula and the formula display shifts over so everything is visible.

Now that I’ve put it in, I find I’m using it just about every time I put in a new formula. (So much for never making mistakes.) I know it’s silly, but it’s kinda fun to go back and forth between different dice sizes or numbers.

Incidentally, this is a good example of a feature which seems simple but is actually pretty tricky to implement. You’d think it’s just a matter of removing a single letter in a string, right? But actually, the dice formula is internally represented by a number of states: an array of number of dice, an array of dice sizes, the current mode (number mode, size mode, color mode), whether or not the current number is negative, etc., etc. Backtracking through all of that is, as I mentioned, a bit tricky.

Next up, saving preferences between sessions so that you’ll start the program with the same dice that you ended it with. That one’s going to take some work which is why I left it until the weekend to start…

Delayed Texture Loading

Thursday, September 11th, 2008

This new features doesn’t have a screenshot to go with it, but it’s pretty important. With all the new backgrounds and dice textures added, it started taking longer and longer to start the app. So I moved around a bunch of code and added some checks so that it doesn’t load a texture until it actually uses it. The tradeoff is that there’s a second or two of delay when you first switch to another board. But that seemed much better than having to wait twenty seconds each time you started the app.

Regarding the dice color comments: yup, you should be able to select something like 1d6(red) + 1d6(blue) and I do have the “d” button switch to say “color” once a die size has been selected. Hopefully that’ll make it intuitive to select colors. The formula bar will say something like “d6a+d6b”, though, for compactness sake.

Starting to Add Colors

Monday, September 8th, 2008

I’m starting to implement an interface for colored dice. The idea is that you’ll hit the “d” button a second time (after selecting a die size) and it’ll switch to something like this where you can select a die color.

Backgrounds and Minus Signs

Friday, September 5th, 2008

Tracy took a bunch of pictures around the house and made a few new backgrounds for you all. Here’s one of them: Sidewalk. The next update will have a total of 5 backgrounds but I’m still trying to work out what they’ll be.

I also implemented a minus sign. The old “+” button now says “+-“. If you press it once, you’ll add values. If you press it twice, you’ll subtract values.

History Implemented

Thursday, September 4th, 2008

Ahh … I finally figured out how tables, table view controllers, table view delegates, table view data sources, and table view cells all work together. Well, figured it out enough to implement a simple history list as seen on the right.

One of the neat things about tables on the iPhone is that the default style is to have moving section headers. When you scroll the table, the heading for the current section is always visible. For example, in the screenshot, I’ve scrolled down a bit and you can see “5+8+2+8 = 23” is partially obscured. That’s because there are more rolls above. But the section heading “4d8” remains on top so you can always tell where the rolls came from.

Okay, now I’ve got to implement colored dice. That one’s going to be tricky. As I’ve mentioned before, it’s a balance between simplicity and flexibility. It’d be easy to have a control just changed all the dice colors at once. But most people want the ability to mix dice colors. I can do that, but it’s tricky to come up with an elegant way to specify that in the interface. I’ve got some ideas, though…

Dice Locking Implemented

Tuesday, September 2nd, 2008

I spent most of the weekend re-connecting everything to work for multiple boards and fixing a bunch of stuff that broke along the way. But I also managed to implement a new feature: dice locking. I can now tap a die to lock or unlock it. In addition, I can drag it around to move it. Also, I’ve implemented the ability to throw a single die around to re-roll just the one. In the screenshot on the right, you can see the graphics that I’ve added to indicate that two of the dice are locked.

I still need to implement a few more features (dice colors, history, saving settings between sessions) before I submit the app again for update to the iTunes store, but I’m getting closer.

Yes, I Will Accept More of Your Money

Friday, August 29th, 2008

A number of people have written in things like, “I love your app! You should totally be charging more!”, which is very flattering. But I think it’s at the right price, especially since I value having more happy customers than having more money. That said, I’m certainly not averse to having more money. For example, on my current development wish list is:

  • a Wacom Cintiq to create better graphics
  • Photoshop
  • reference manuals
  • a giant underground lair filled with a team of minions to do my bidding

And let me tell you, those things don’t come cheap. So if you’d like to support my development effort even more, feel free to click the “Donate” button on the right, below the tall image. All proceeds will go towards helping me make even better apps for you! (Either that or beer.)

Multiple Views

Thursday, August 28th, 2008

See this heinous looking screenshot? This represents the culmination of several days of effort to completely rehaul my code so that the dice rolling occurs in a custom view. Now, I can create the dice boards dynamically. More importantly, it means that I can have more than one and hopefully switch between them.

Also, I figured out a way to hide the navigation bar so I should be able to retain much of the original look, which people seemed to like.

Navigation Bar

Tuesday, August 26th, 2008

 

Apparently, there are some issues with transparent navigation bars so I won’t be using those. But I managed to get an opaque navigation bar set up. Here are three versions:

Which do you like best?

  • a) the original without any bar
  • b) the one with just a bar on top
  • c) or the one with both

Doing navigation without a bar (getting it to look back like the original) would be kinda tricky for me because I’d have to write custom code to do all the switching and the other pages (history and settings) look better with the bar since they’ll be more standard iPhone interfaces. So I wanted to get a gauge of people’s opinion as to whether it was worth putting in the effort to do something like that.

Reply in the comments section!