30 January 2011

Status Update

It’s been a little over a month since the last status update, so it’s probably time for a new one.

Sadly, in some ways the to-do list is similar: livestock, achievements, social media, manual.

However, there has been progress! We’ve completed the UI work. All screens and dialogs work (including every myth in the Lore screen).

And all of the Game Center achievements have artwork and are entered via iTunesConnect. Now it’s just a matter of implementing them all. There are 45 achievements defined, 19 of which have code behind them. But achievements show up when you earn them, and you can see them from within the game (or of course in the Game Center app).

Also, lots of bugs have been fixed.

I expect to be wrapping up most of the achievements soon. Then I want to start the tutorial, and clean up scenes that refer to small livestock (sheep and pigs).

25 January 2011


A recent comment asked, “any chance the PC version will get some of the bug fixes too?”

A good question, but the answer is “no.”

The original King of Dragon Pass 1.0 was released for Windows and Mac in October 1999. Our last update was 1.7, which came out in October 2002. That’s not a bad record for updating a game. But, if we’re fixing bugs in 2.0, why not also do a Windows/Mac release?

Let’s ignore the fact that neither Windows nor Mac are what they were back then (for example, no Mac that can run Classic has been sold since 2006). More important: to make a new build without introducing a lot of risk of new bugs, it’s not a good idea to switch compilers in mid-stream. For a while, we kept machines with the old development systems, but those have since been recycled. So we’d be faced with either trying to install them (assuming a Mac that could run the 1999 version of CodeWarrior), or hoping that nothing changed in more recent development systems.

I know for a fact that the latter isn’t true. Looking through the development diary, it looks like the random number function changed subtly. (One change that would be for the better: the C++ Standard Template Library is a lot more reliable than when we had to work around bugs in Microsoft’s implementation.) Another change: the C type long is a 64-bit quantity on iPhone, where it was 32 bits on the 1999 machines. I updated the code to the modern world, so it’s no longer going to work with the old.

And the game is now different! I simplified the initial clan generation questionnaire, which means the answers have different numbers internally. Worse, there are new interactive scenes. This means that scene IDs and variable IDs are different. Which means that saved games would no longer work. That’s a big problem, because updates shouldn’t break the game. (We went to a lot of trouble with the original updates to avoid breaking saved games.)

So the long answer:

  • No ability to build without risking new bugs
  • Language/library changes risk introducing subtle bugs
  • Word length ties source code to current platforms
  • Design changes break compatibility
  • New scenes break compatibility

In theory some of that could be worked around, parts cannot. While some bugs could be fixed for the Windows and Mac release, only the iOS version can have all the new features planned. And if you want to replay the game, why not replay as good a version as we can make?

24 January 2011

Sneak Preview: Game Center Achievements

iOS 4.1 added Game Center, which supports the concept of achievements. These are game-specific accomplishments or events. Right now I’ve got about 40 different ones planned, though that may change. They include obvious things such as winning the game, winning as Queen of Dragon Pass, or winning as a Peace Clan. Spectacular ways to lose are also achievements, such as the Beastfolk Apocalypse.

Note that Game Center supports hiding of achievements — until the Beastfolk trash your clan, this doesn’t appear in the list. This helps prevent spoiling certain story lines.

I’ve entered 11 via Apple’s web site, though not all are hooked up yet. Here’s what it currently looks like in the Game Center app.

Let us know if there’s something you think should be an achievement.

18 January 2011

New UI, part 2: Magic & Sacrifice

Magic is a critical part of King of Dragon Pass, which may explain why the Magic screen was so complex. There’s a list of Orlanthi deities, which we can’t assume players are familiar with. So they’re explained. We also showed their rune, both for Gloranthan color, and because it’s shown on advisors. And so you could see at a glance which temples you had, the temple size.

When you selected a deity, the right side of the screen showed information about the active and available blessings. (Not shown here is rollover help for a blessing.)

The iPhone screen didn’t have enough room for all of that, even without the standing stone. But it works much the same. We experimented with different layouts, and finally came up with the one you see here. Deity information is shown in a popup description balloon, and blessing information is always shown.

The Sacrifice dialog showed available sacrifices (which might differ from permanent blessings — several are explicitly a single use, such as Chalana Arroy’s Resurrection). Most one-time blessings also require that you specify extra information, such as what question you’re asking of the Ancestors. This extra information was shown on the left of the dialog.

In some cases, there’s room to include the extra choice within the dialog, for example, Maran Gor’s Blast Earth (which is targeted on another clan). But this only works because Maran Gor is a minor deity, with only two blessings (plus the option to sacrifice for Mysteries). Lhankor Mhy has four blessings. To handle this, I added a button which brings up a dialog that lets you choose the specific divination. And, for two of the questions, the clan you’re asking about. It’s a little more tapping than you needed in 1.0, but it’s not something you do often, and it follows the typical progressive disclosure model of the iPhone.

05 January 2011

New UI, part 1

I originally prototyped the game on iOS using art from the original game, usually either shrunken or cropped. As I’ve mentioned, none of the screen shots I’ve shown before are final. (And since the game hasn’t shipped, some of the screens below may change slightly as well.)

I was lucky enough to get to work with a very talented artist from Finland, Jani Lintunen. We engaged in a fairly lengthy discussion of how to present all the information from the original game on a smaller screen. This consisted mostly of Jani mocking up a look, and me explaining that we’d need to make more tradeoffs to support the game. But we gradually iterated on a new look that I think is true to the spirit of the original game, is better suited to the small screen, and fresh and attractive. I’d like to share part of it now.

As I mentioned before, the original Tula screen (the bird’s eye view of the clan) is impractical for the iPhone screen. Here’s the replacement. It gives the same recap of the previous year, but now shows your clan reputation (which didn’t fit in the subsequent Sacred Time screen). It shows a different overview of your clan, one that used to be at the top of most screens: the illustration shows whether you’re a War, Balanced, or Peace Clan. You can also see the game’s new fonts, both from Canada Type: Dutch Mediaeval for most text, and Lorenzo for headings and buttons.

Radio buttons need to be much bigger on a touch screen, so the Sacred Time screen has room for little else. In particular, the row of advisors that was a feature of almost every screen in 1.0 is collapsed down to a single button which portrays your chief. Tap it to display advice:

As always, just tap each advisor to see what they have to say. Tap the down arrow to hide the advisors.

Once you allocate your clan magic, you’ll proceed to the Clan screen. This has all the same information as always (including the summary statistics at the bottom of each screen). But there’s no room for illustration at the top, which made things look a bit dry. So Jani came up with pictures for each of the major buttons.

If you’re familiar with the original game, you’ll note that there is some missing information: the current season and year, as well as your clan name. There’s no way to advance to the next season. And there are no icons to let you switch to a different management screen. This is where Jani and I iterated the most. Should we keep the original icons? Could Lore and Saga be combined? Could other screens be combined somehow? Was there even room to show the icons?

Well, you already know how that last one was decided. Instead, we came up with a menu, which is available from the bottom right icon. I can’t show you the animation, but here’s what the menu looks like. The left side shows the current season, while the right lets you switch to any of the original screens. (The Controls screen was available in the original game from a special icon at the bottom right. Jani redrew it to be more consistent with iOS.)

Also missing from the Clan screen is the standing stone that sat in the center of each management screen and showed you what blessings were relevant to that screen. This — along with screen-specific help — is available from the More Info button. This screen features the new filter control, which here shows blessings that you have learned. Tap one to get information about it, including which deity can provide it on the Magic screen.

That’s all for this installment, but stay tuned for the next post, with more of Jani’s great work.