Hi, Mark Damon Hughes here.

I write neat little strategy and role-playing games for the iPhone.

I also help other people write their apps for the iPhone; if you need a contractor, I can solve any problem for you.

You can reach me by email at

Visit my software gallery at

By Category:
By Author:
By Date:

Mark Damon Hughes

MDH's Software Blog

iPhone Development Tips 2010-03-28 01:00:00 GMT
in cocoa
by Mark Damon Hughes

Objective-C is not the easiest language ever (all the expressive power of Smalltalk, all the syntax and memory complexity of C). Cocoa is a large and complex framework. The iPhone's UIKit is new and still quirky/buggy. Xcode is an… idiosyncratic… IDE. So this blog topic will collect some of my survival/sanity notes.

Hephaestus 2.04 2010-03-19 00:26:00 GMT
in games/hephaestus
by Mark Damon Hughes

Just a maintenance fix, turns out compile.sh had the wrong line endings, which Unix shells don't like much, and there was a display bug on Mac OS X 10.6 (and maybe other platforms) with text areas.

Download Hephaestus 2.04

The iPhone App Store Blues 2009-08-30 02:42:00 GMT
in iphonedev
by Mark Damon Hughes

The iPhone App Store has some great opportunities, but also great problems for developers.

First, I agree with pretty much everything Craig Hockenberry, Marco Arment, Wil Shipley, Joe Hewitt, John Gruber, and Steven Frank said about the problems over the last year.

Quick summary of iPhone development right now:

  1. Buy a Mac, $599 for a Mac Mini or more for something good.
  2. Get a development certificate, $99.
  3. Install Xcode & iPhone SDK, and learn Objective-C and Cocoa (may be optional, if all you want to do is make fart apps).
  4. Write iAwesome, the Awesome iPhone App.
  5. Go to iTunes Connect, which is the worst-designed business webapp I've ever used in my entire life, and attempt to correctly upload your app, a description, icon, screenshots, and price before it times out and leaves a corrupted database entry. I seriously consider it likely that iTunes Connect was a malicious attempt to dispirit record company flunkies who had to use it to upload music; developers suffering are just friendly fire.
  6. Wait for app review and "approval". Roll d100 on this table:
    01-10 Rejected outright, can resubmit when you "fix" it.
    11-40 Approved in 5-8 days.
    41-80 Approved in 9-14 days.
    81-95 Approved in 15-60 days.
    96-00 Will not be approved unless a major media outlet covers the delay.

    You will receive no feedback from Apple during this time. If you call or write, they will tell you "your app is taking an unusually long time for review." No, really?

  7. If approved, your app will appear at the worst possible time, and nobody will see it on the new apps list. Hope you can market it elsewhere, not that anyone buys except from new apps list. Good luck making a profit.
  8. GOTO 4

iTunes Connect has shat on me multiple times, and I have a permanently(?) useless "APPLE DELETE THIS DUNGEON DICE" row; they can or will do nothing about it.

The approval process has rejected me once for something sort of valid: Use of a standard control in a way it wasn't meant to be used. The other rejection was for something so completely insane it still baffles me and makes me drink: I can't upsell directly from my free Lite apps to the full versions of Perilar and Castles. I can't say "Hooray, you beat the easy mode, Castles $4.99 version has challenge and nightmare!". Well, shit. Advertising without details on the front of the app has been allowed, but I'm not happy about it, and it doesn't drive as much upsell as I'd like.

Everyone I've spoken to who's published an iPhone app has had equally stupid experiences with both.

Fixing iTunes Connect really isn't that hard. Apple needs to assign a good web developer to it for a month, to rewrite the front end.

The only way to fix the approval process is to eliminate or castrate it.

Let these be the rules: If the app doesn't obviously crash, isn't doing anything obviously illegal, and seems appropriately age-rated, publish it. Period. If Apple gets a bunch of crash reports, or it seems to be flooding the phone network by sending your contact list to Russia, unpublish it. Apple knows who created the app, it's signed with your dev certificate, so they know who to send the FBI or KGB or lawyers after.

"But! What about…?", you ask?


If parents scream that little Timmy saw boobies in iBoobz (rated age 4+) and is now a deranged boob fetishist like 95% of all males, change the age rating, apologize, then beat the developer who set a false age rating. Fear will keep us in line.


The copyright holder can submit a DMCA takedown notice, like anyplace else. YouTube doesn't approve all videos, they let you uplaod what you want, and wait for complaints. Seems to work okay.


Hahahahaha, have you SEEN the shit on the iPhone App Store lately? Okay, seriously… Ahahahahahaha. Snerk.

Mac desktop software doesn't have an approval process, most Mac software isn't signed (it can be, but it's not as meaningful). And yet Mac software is pretty fucking sweet. Mac software is so much better than anything on Linux or Windows there's no fair comparison.


Macs don't have viruses, and only have 2-3 trojans now. This is not because Macs are rare, but because they don't run a bunch of vulnerable 'Net-facing services like Windows. If the user is dumb enough to run a trojan, it can savage the user's account, but still can't turn the computer into a spam zombie like every Windows machine is. The iPhone doesn't have as much security as a desktop Mac, no firewall and it runs apps with too much permission. But it has no background apps, so no spyware or spam bots are possible.

Other phones and PDAs, like the Palm Treo and Blackberry, have had unrestricted apps for over a decade. They didn't have any significant problems.

It's safe enough that the "network security" argument doesn't fly.

Apple, please see reason. King Canute could not hold back the sea at a command, and neither can you.

Castles 2.0 2009-07-25 12:30:00 GMT
in games/castles
by Mark Damon Hughes
[Screenshot1] [Screenshot4]

Castles 2.0 is now available on the App Store!
Castles Lite is available as a free trial, limited to the Easy difficulty.
Castles is $4.99, with Challenge and Nightmare difficulties.

What's new?

Your game is now saved on exit, restored on relaunch. I originally didn't have saves because a Castles game typically lasts only 5-15 minutes. Adding game saves, or more accurately restoring the game display, turned out to be quite challenging because of the way I'd built the UI.
Knights now degrade to a Pikeman when "killed". Previously, when you charged into battle with your new Knight, there was a 10% chance you'd just die. Splat. Totally wasted. When holding ground, they only took one hit to kill. So, now Knights are better for offense and defense, but aren't godlike. At worst, you got a Pikeman to the front lines twice as fast.

I use Knights a lot more often now, not just to clean out swarms of Barbarians, but as fast attackers to supplement the Archers.

Archers can no longer do a suicide charge into an enemy. They're also a bit more likely to hit.
New Art Themes
This was the most time-consuming addition. There's now a "Knights" theme, with large medieval illustration-style figures, and a "Monsters" theme (my favorite), with creepy monsters fighting off barbarian Army humans on their alien planet.
New UI
The UI looks immensely better, and functions better. A menu replaces the teeny little help button and the overly-visible reset button. The move buttons now respond better and touches select units more accurately.

I originally wrote Castles in a mad panic the month before the App Store opened; the APIs changed often, the entire concept of the device was shifting as I developed, and my Castles strategy game, while I'd invented it some time before, needed a lot more playtesting than I had time for. That resulted in a game which was strategically very tight, nearly but not quite perfect, but the UI wasn't there at all.

I didn't go for animations and sounds in this version. While they might help clarify some action in a tight melee, they would slow down execution of turns, and probably drag the game out from a fun 10-15 minutes to an endless 20-30 minutes.

Perilar 2.0 2008-11-04 04:00:00 GMT
in games/perilar
by Mark Damon Hughes

I've shipped Perilar 2.0 to the App Store, and it should be released Monday, Nov 3!
Perilar 2.0 is "Ready for Sale", and should be available on the App Store by the time you read this!

New features:

  • Dungeons have opened, and are filled with monsters, traps, and chests of treasure.
  • Wizard and Witch offer quests, and can offer training to increase stats and learn new spells.
  • Armorer and Weaponsmith offer quests, and can offer enchantments to weapons.
  • Bards' music instruments can now inflict confusion.
  • Eight new advanced spells.
  • User Interface enhancements:
    • Changing race and job change your avatar.
    • On-screen health bars are thicker and color-coded.
    • Removed stats bar, put HP, MP, Exp, and money on game screen.
    • Increased font size of detail text.
    • New Shop, Cast, Use Item dialogs.
    • Improved audio mixing.
  • System menu option to erase score file (in 1.0, a system crash while saving scores could wreck the entire game; that shouldn't happen now, but if it does, this gives you a cure other than erasing your save game).
Blog Replacement 2008-10-21 05:38:00 GMT
in blog
by Mark Damon Hughes

I've replaced my pretty but slow and non-functional iWeb blog with this less-pretty but fast and powerful blog of my own devising. Please update your RSS feeds. Thanks!

Playing Perilar 2008-10-13 19:00:00 GMT
in games/perilar
by Mark Damon Hughes

Perilar is now up on the App Store! Apple apparently has a loose interpretation of an “October 13th” release date, so it came out last night instead of this morning, but close enough. A fan has already told me it looks pretty good, so at least I’m reaching my target players.

I think there’s going to be a steep learning curve for Perilar, especially with younger gamers who aren’t used to the old-school way of RPGs. Back then, you didn’t always win. In fact, you died a lot, until you learned caution and careful resource management. And I mean, A LOT of deaths. It took me over a year to finish Ultima II, dying and wasting resources over and over, until I learned exactly how the game worked, learned to be careful, to think before fighting, to really stock up and level up before doing anything crazy like entering a dungeon or pissing off a town guard.

In an incredible show of generosity and mercy, Perilar allows you to actually continue your game from last save, though it only auto-saves when you hit the Home button or take a phone call. The real old-school games tended to have permanent death.

I tried to make the help file as complete as possible, like the old Ultima leatherette-bound manuals, but I don’t know how many players will read it. I have a visual tutorial slideshow when you make a new character, but there’s only so much it can teach.

I’m curious to see how players react to the radically simplified inventory system. You only carry one weapon and one armor. When you defeat a monster or open a chest, if it has a weapon or armor as loot, you’re immediately offered a choice: keep your current weapon or replace it with this other. You don’t see the stats, only the descriptive name, like Magic Bronze Rapier. Once you learn how those descriptors map to increased damage or protection, you can make an informed choice. Until then, it’s kind of a gamble. The consumable items are also pretty simplified: there are only 7 different items total, though you can have a large number of each. I’d been trending towards simpler inventory systems in my games over the years, but this is the first one where I really sat down and rethought the whole idea of inventory. In my playtesting, I still had to manage resources, but I wasn’t screwing around rearranging my inventory anymore, I could focus on playing and surviving.

The current game can be played to completion, and should be winnable with any race and job, though some will be considerably harder than others: Wizards have a REALLY HARD early game, but then become unstoppable death machines and wipe out the Harbinger Lord easily; Fighters have a REALLY EASY early game, but then have a hard late game and an incredibly hard time in the Temple of Darkness. Others are in between, but I’ve won that fight with all of them.

In a couple of weeks, I should have an update out with additional dungeons, and some time after that side-quests for the Wizard and Witch, which will allow you to replace the standard spells with new ones, and the Weaponsmith and Armorer, which will allow you to upgrade existing weapons and armor.

Perilar completed! 2008-10-05 19:00:00 GMT
in games/perilar
by Mark Damon Hughes
Perilar Perilar Perilar

I’d been talking for a while about doing a little tiny RPG, before finishing Nexus Worlds (I have at least a month, maybe two, left to do on Nexus… it’s still coming!). So I adapted my last Java-based game, Perilar, for the iPhone, and it turned out great!

The tiny display of the original Java Perilar didn’t make a lot of sense on the desktop, but it was necessary for the gameplay. The new iPhone version just works perfectly. Streamlining the already simple interface and gameplay of Perilar down to even fewer elements made it even better.

Perilar is my tribute to the classic computer role-playing games of my youth, most importantly Ultima I: The First Age of Darkness and Ultima II: The Revenge of the Enchantress, for my money the best games ever made. The giant world-, time-, and space-spanning quests, the insanely hard difficulty, the final showdowns with Mondain and Minax. I can’t put a big cloth map in the App Store, but in every other way, this is my “Ultima-like”.

I just submitted it to the App Store, and it should be released on Oct 13th, if all goes well.

DungeonDice released, at long last 2008-09-07 19:00:00 GMT
in games/dungeondice
by Mark Damon Hughes
Dungeon Dice

DungeonDice, my die-rolling utility for tabletop role-playing games, has finally come out!

I’ve had a long, LONG process getting it out. Apple’s iTunes Connect is, shall we say, not the most Apple-like experience I’ve ever had with Apple. It takes anywhere from a week to 2 weeks to push an update out, or get feedback saying what went wrong.

The first version bounced because the upload failed. Weeks later, when rejected, I was able to fix it.

The second update was rejected for a user interface violation (I was misusing a list control for the add dice screen). I’m okay with that--I’d rather know if it wasn’t up to spec than put out a bad product--but I’m baffled as to how some of the things on the App Store got there, if Apple really is verifying UI design. How did “I Am Rich” go up? How do the terrible “Handy Randy” get accepted?

Entering the Nexus Worlds 2008-08-23 19:00:00 GMT
in games/nexus
by Mark Damon Hughes
Nexus Worlds

I’m getting pretty close now to a release of my new iPhone game, and I can share some information with you.

The game is “Nexus Worlds”, and it’s a multiplayer online adventure/role-playing game.

You find yourself on a primitive, medieval world, a Homeworld. Each Homeworld is unique, and only you can explore it; this part of the game is single-player, and entirely contained on your iPhone. A small city provides supplies and support. Outside of the gates is an increasingly-dangerous wilderness and eventually dungeons, awaiting your exploration.

The other way out of your city is the Nexus, a gateway between worlds. Once you pass through the Nexus, you will find yourself in an ever-expanding web of worlds, filled with dangers, rewards, and most importantly, other explorers.

There are 4 planned phases in the development of Nexus Worlds:

  • Phase I: Single-player local gameplay, with an endless dungeon, monsters, and treasures. This is nearly done; monsters and treasures need more work, but the basics are in place.
  • Phase II: Single-player online gameplay, exploring worlds created by myself and others online. This is nearly done, though not tested sufficiently.
  • Phase III: Multi-player chat in the online worlds. Not started yet.
  • Phase IV: Multi-player challenges, special online gameplay. Not started yet.

Pages: 0 1 2
Copyright © 2008 by Mark Damon Hughes | Email Feedback | [RSS 2.0]