Rolling Dice on iOS

This is a quick review of some dice rolling apps on iOS, specifically ones that let you make custom dice.

For this example, I’m recreating dice from Roll Through the Ages, an excellent dice game from Gryphon Games.  It’s a six-sided die (d6) with images on each side. In each app I will use the same 6 images and background to recreate these dice.

Here’s what the dice look like in Roll Through the Ages


The Apps

Dicenomicon ($4.99)

This is a deep program, that offers lots of options.  You can set up dice-rolling equations for the most complex and arcane dice math you could ever need.  However, it has so many features that it’s somewhat confusing to use.  It took reading a tutorial to figure out how to create a custom die. It is also not very stable, especially when creating custom dice.  It took me 10 or so attempts to finally get the dice created (when scaling my images to fit on the die face it would crash). The actual dice rolling works nicely, and has good physics. It requires a couple taps to “hold” a die


Photo Dice ($0.99)

The exact opposite of Dicenomicon is Photo Dice – almost no features, but what it does is very easy to use. Creating a new die (only d6, as opposed to Dicenomicon which can do any number of sides) is a couple taps, and assigning an image to each side is super fast and easy (and no crashes!).  Dice rolling is similar to Dicenomicon, but holding dice and moving them around only requires a single tap, so it’s quicker.


Mach Dice ($1.99)

The next step up from Photo Dice is Mach Dice, by the same developer.  It takes the ease of use of Photo Dice and adds the ability to create more than just d6 dice. It also has 5 playfields, so you can set each playfield with a different background image and dice configuration and switch between them.

Mach Dice does have more of a learning curve than Photo Dice, but nowhere near that of Dicenomicon. You create a custom die with a number of square images, then when you add a new die to a playfield, you specify the image set to use for it. The only difficulty here is that all image sets are square images, if you use those images to create anything other than a d6, the images will be mapped on the die face and masked to that shape, so for example a d8 will use a triangular section of the square image you have set.  Knowing exactly where the image will be cropped for any given die requires a lot of trial and error, this could have been made much easier by providing a template for each die face.

The die rolling area is similar to Dicenomicon – unlike Photo Dice, there is some space taken up by a header bar, so plan image placement accordingly for backgrounds.  Dice rolling itself is great, with the same system for holding and moving as Photo Dice.

Dice Forge ($4.99)

Similar complexity to Mach Dice is Dice Forge.  However, creating custom dice is a multi-step affair that you can’t actually do in the program itself. It will export templates (simple unfolded texture maps) that you then have to edit it Photoshop or your editor of choice, then re-import into Dice Forge. It’s not something you can easily do on the go, so you’re going to need your computer to make new dice. Once you import the texture, you add dice to your dice pool – which is an extra step compared to Dicenomicon or Photo Dice, where you just tap a die to add it directly to the table. The die rolling is lackluster, small dice fly across the screen when you click “roll dice” – rather than using the gyro to allow you to shake the dice like Dicenomicon or Photo Dice, Dice Forge uses a “shake” to simply re-trigger the throw animation, which has nothing to do with how you shake the phone. It makes the dice feel less physical. When you hold dice, instead of anchoring them on the table when you reroll, like the other apps, Dice Forge moves them offscreen to a “held” dice pool, so it’s extra steps if you want to view all the dice after rerolling some. There is also a “flyby” mode where the camera rotates around the table showing your roll. It’s pretty but serves no purpose. Overall, Dice Forge has the least satisfying rolling experience of the three. There’s also no option to change the background image.



Dicenomicon has all the features you could want, however it has a learning curve and hasn’t been updated in a while and has some annoying bugs.

Photo Dice is basic but fun to use and cheap – if all you want are custom 6-sided dice, this is the app you should get.

Mach Dice keeps the ease of Photo Dice but adds different die types. Not as many features as Dicenomicon, but also easier to use. Making dice other than d6 requires a little trial and error to see where the crops will happen, but overall this is my favorite of these dice apps and the one I’d recommend most.

Dice Forge has the flexibility to make custom dice of any type, but little else.  The dice are tiny and the rolling doesn’t “feel” as good. Overall it feels overpriced at $5.


The Tools I Use

If anyone’s curious, here’s a look at the development tools I use, day-to-day.

I use a Mac, so these are Mac-based, but many are also available for Windows.


Free all-in-one webserver package, instantly sets up Apache, MySQL and PHP. Great for developing locally without all the hassle of trying to build a server yourself.

Zend Studio (plugin for Eclipse)

Eclipse, in my opinion, is slow, bloated, and lacking in some basic features like soft text wrap. Why use it as my primary IDE, then? PHP debugging. Zend Studio (which used to be a nice stand-alone IDE, but is now just a plugin for Eclipse) has a set of tools for runtime PHP debugging which in my opinion are essential to PHP devlopment.


Although I work on big projects in Zend Studio, when I just want to try something out, I’ll often fire up TextMate. It’s small, quick, and pretty full-featured. Some people I work with prefer BBEdit, which I’ll admit has more features than TextMate, but TextMate feels cleaner and… I dunno, more *modern* to me.


For graphics and occasional mockups.


For working with MySQL, I love, love, love Navicat! If you are currently using PHPMyAdmin, ditch it and switch to Navicat. You won’t regret it. I’ve heard a couple people complain that Navicat’s icons look too “Windows-y” – good god people, get over it. They look fine, and it’s certainly a lot better-looking that PHPMyAdmin. If you’re not sure, Navicat Lite is free and does most of what the full version does, try it out!


Good for whipping up quick page wireframes and site flow diagrams for requirements documentation. Believe me, that doesn’t sound like much, but it’s important and the clients love the clean diagrams produced with it.


If I had my druthers, we’d probably be using SVN or something more industry-standard, but it’s what we use at work, and someone else maintains the server so I don’t have to, which is reason enough to use it. I have no desire to become a sysadmin. Like Eclipse, the StarTeam client is also Java-based, meaning it’s slow and bloated. Plus Borland dropped Mac support, so it takes some hacking to get it working on the Mac, though once it’s set up it works fine. There might be better packages out there, but StarTeam gets the job done, and that’s all I need out of a source control system.

Parallels with Windows XP
IE Collection

For IE testing. IE Collection is great, lets me run IE6, IE7 & IE8 side-by-side.


Although I test in multiple browsers, Firefox has great plugins available that make it my favorite browser for web development. I tried Webkit for a while, but the better plugins for Firefox brought me back.

Firefox plugins:

– Download Statusbar

Better display of download status than the standard window on Firefox.

– Firebug

A super-useful suite of web development tools. Essential!

– Screengrab

Take a screenshot of the entire page, regardless of scrollbars, automatically.

– Web Developer

A handy collection of tools for web development. Essential!

– Zend Studio Toolbar

Hooks into Zend Studio, allowing PHP debugging with the click of a button.

There are other apps I use now and then, but these are the primary ones that I use every day.

MacHeist Bundle

Another MacHeist bundle is out!

$39 for a bunch of Mac apps (which are normally like $20-$40 EACH).
As usual, only a few of the apps are ones I would use, but even then, still a good deal.
If there are 2 apps there that you’d use, it’s worth picking up.
25% of the sales go to charity.

iPhone 3.0 beta

Important to note:

if you are a developer, if you download the beta of iPhoneOS 3.0, if you install it on your phone, you cannot go back to an earlier version of the OS!

This means you’d be stuck with 3.0 beta on your phone until the final 3.0 release comes out sometime this summer.

Also, if you download the 3.0 SDK, you can’t submit anything you develop with it to the app store until after the final 3.0 release this summer.

Important gotchas to keep in mind.

That said, I doubt I’ll be able to resist the temptation to try it out.

iPhoneOS 3.0

There’s an Apple announcement today, so of course the nerd world is all a-twitter.

Apple just announced the features of iPhoneOS 3.0.

To sum up:

* App paid expansion packs (i.e. Buy City Guide app, then buy a city pack for it)
* Push Notification (apps can get alerts when not running, like IM alerts for example)
* Peer-to-peer Bluetooth connection (for exchanging business cards, 2-player games, etc)
* Accessory communication (create custom accessories, like a glucose meter that talks to the iPhone via Bluetooth or dock connector)
* Turn-by-Turn navigation is no longer banned (expect to see GPS apps soon)
* Google Maps API (put Google maps in your app)
* Cut, Copy, Paste, Undo (copy and paste between apps)
* Landscape mode for standard apps (use bigger keyboard in Mail and Message)
* MMS (send photos and audio clips to other cellphones – no video tho)
* Voice Memos (record audio clips, you could do this before with 3rd party apps, but now built-in)
* New Calendar file format support (support for standards used by google cal and others)
* Stock app features (now with news)
* Spotlight Search (search in standard apps, such as iPod or Notes, plus global search)
* Stereo Bluetooth (for wireless headphones)

Available NOW as a beta for developers, later this summer for release.
Will be a free update for iPhone owners, $10 update for iPod Touch owners.

I’m excited, lots of good stuff in there, and other minor stuff not mentioned.

Betcha the servers will be bogged down when I try and get it tonight. =)

VMware Fusion 2.0

VMware Fusion 2.0 just came out. I’d been using the previous version, and 2.0 had been out as a beta, but I wanted to wait until it was more stable.

What is it? It is VM (Virtual Machine) software. Normally to run Windows on my Mac, I’d need to dual boot, and on startup choose if I wanted to run Windows or Mac. With VM software, I can run Mac OS, and then run a virtual machine within that which has Windows on it.

It’s a similar *idea* to emulation, where you have one emulated computer running virtually inside another, but with emulation, the hardware is different, so the physical machine is emulating the virtual machine. With VM software, the hardware is the same, so the virtual machine just takes a portion of the CPU and memory, and has access to the other devices as well. Some items you have to choose, like the DVD drive can only be used by the real machine or the virtual machine, not both at once, so you have to toggle which OS has the drive.

The end result is that I can have Mac OS X and Windows running at the same time on the same machine. You can also run apps in a mode where you can have Mac and Windows apps running on the same screen, with the windows intermixed, but I prefer to have each OS have it’s own desktop, and flip between them using Spaces, the virtual desktop app on OS X.

So what’s new with version 2.0 of Fusion?


2.0 adds DirectX 9 support, which means now many 3D games can run in a virtual machine (previously, I had been forced to dual-boot to play games). I tested it out by playing Galactic Civilizations II and Sam & Max, they worked great. I noticed a couple minor graphic glitches on GCII, but nothing that got in the way of gameplay. Sam & Max may have had slight animation/speech sync issues, but the animation/speech synching was always pretty loose in that game anyway, so I’m not sure. Didn’t affect gameplay.

I actually hadn’t been playing many PC games because dual-booting was kind of annoying… now that I can play some of them in a virtual machine, I’ll probably play more of them.


A new version of Delicious Library is out!

If you haven’t heard of it before, it’s a program from the Mac for organizing your books, dvds, and such.

The new version adds more categories, including gadgets, toys, and tools.

Another thing they added is an option to export to a webpage. It’s not the best export, it’s a little buggy and has some design issues, but it’s decent enough.

You can check out my library here!