15 August 2012

Bugs

Like any large software product, King of Dragon Pass is not perfect. We wish it were, so we track bug reports and try to fix things when we do an update.

When we created the original game, we had a quality assurance team to find bugs. We also relied on beta testers. For the iOS version, we don’t have a paid team, and Apple limits the number of outside testers. So we have to rely on players to do much of the bug finding.

Today, a blog comment read “the game seems to be crashing often.” My first thought was “no, it doesn’t!” The second was “that’s not a very good report.” But then I thought, “what if it is crashing more often than I think it is? If so, I want to fix it!”

I remembered that Apple makes crash logs available to developers. Normally, if an app on your iPhone crashes, a log is saved on the device. When you synchronize, it’s copied to your computer. And if you’ve given the OK, it is also sent to Apple. (I believe only when you synchronize, though I’m not sure of the details.)

This is especially handy because Apple will combine duplicate reports. When I logged into iTunesConnect and checked, the top 3 crashes accounted for 71% of the reports. I grabbed these.

The logs by themselves aren’t very useful. They include a stack trace which shows exactly where the crash occurred, but only in numeric form. They need to be symbolicated — cross-referenced against the symbols (typically method or functions) of your app. For this to work, you need to save the symbols with each build. Luckily, when you make an archive to submit to the App store, the symbol table is saved. Unfortunately, Apple’s development tool Xcode is terrible about symbolicating. In fact, I was only able to symbolicate about half of the logs. Luckily, I could get one log from each of the top three crashes. And they all pointed at a method in my AdviceView. In one of them, the call stack included showQuestDialog, so I started showing advice and opening and closing the Quest dialog. Sure enough, I got the crash. From there it was pretty short work identifying what was going on (it was a message sent to zombie object, one that should have been dead). And easy to fix.

So this story has a happy ending, and one that makes me glad I’m an iOS developer and a lot of the work was done for me. (Bigger software developers often create a similar infrastructure themselves, to capture crashes in the field.)

But the moral of the story is: we can’t fix bugs we don’t know about! The 2.0.5 build has been played since February. Nobody mentioned anything until now. Please let us know about problems! http://a-sharp.com/kodp/bug.html explains how to send a report from the game itself. (This won’t do anything with crashes, but you can email bugz «at» a-sharp.com with the reproduction steps, and we can send back the somewhat picky details of finding the logs on your computer.

13 August 2012

iPad in Beta

Last month I mentioned that we were still converting screens to use final iPad-sized artwork. That process is complete, and the game has gone out to a number of beta testers, to make sure everything is good on a variety of devices and versions of iOS. (We’re making a universal release, so the same game still needs to run properly on iPhone and iPod touch.) We’re testing here too, and have been squashing a number of bugs.

It hasn’t been in testing long enough to have confidence in the code quality, but things look pretty good so far.

As a developer, most of my testing consists of looking at specific parts of the program (either something I just changed, or to investigate a problem someone else has reported). But I finally got a chance to play a complete short game from beginning to end. This did reveal some issues that needed to be fixed. But it also felt like the game is finally on its native platform. You hold the iPad much like a book, and this meant that King of Dragon Pass really felt like an interactive story (and less like a computer game).

The iPad layout was actually constrained by not having artwork at any higher resolution than you see here. But the results are that text never covers artwork, and you almost never have to scroll. The text is super crisp (on a new iPad) and the iPad screen is bright and gorgeous, so the art looks great. It’s all a really good experience. And as you can see, we don’t need to hide the extra information (the list of clans was behind a button even on the Mac/Windows version), and the manual is available from within a scene.

So if you don’t have an iOS device and want to play King of Dragon Pass, get an iPad.

08 July 2012

iPad Update

Yes, we are working on a Universal update. Yes, it is taking a long time. No, iPad users won’t have to pay for this separately. No, we don’t know when it will come out.

But that’s not really news. We do at least have some concepts and user interface artwork that can go in the game (instead of the placeholder artwork we’ve been using).

Here is a sneak preview of one of the dialogs. You can see that we’ve enlarged text and buttons (since you hold an iPad differently than an iPhone). And since there is room to fit all the advisors all the time, it’s easier to consult them. But it’s the same dialog as always — you won’t have a different play experience on iPad (although the larger screen does make some things easier, such as less need for scrolling text).

This is the only dialog that’s completely converted to the new look, so there is a lot more work to do. And we still don’t have all the new artwork. But there has been progress.

25 June 2012

Gone Missing?

A recent App Store review (five stars, if you were wondering) wrote:
I have noticed some things are missing from the iPhone version (this one) that the old PC version had. Like allotting magic points to children and hunting and the ability to slaughter sheep, pigs and horses for food when the clan is starving. I can only guess what else is missing, though I hope it's not a lot. I'm not sure exactly what is affected but I personally am something of a perfectionist and would love to have the entire full game same as before.
I’ve written about this before, but in summary: I disagree. The new edition is better. A lot better. It removes a lot of fiddly bits that made little difference (Children magic, for example, was very rarely used), and we added over two dozen new scenes and a bunch of treasures. We improved the maps and added Game Center achievements. There are new advisors, and a lot of new advice. And you can play the game via VoiceOver.

One thing that was removed for practical, rather than design reasons, was the Tula screen. It was certainly a fun screen, but it really didn’t impact game play a lot. (And to answer another App Store review, no, it will not be in a Universal update.)
list of fixed bugs
Fixed Bugs

We also made a lot of bug fixes, many of which were impossible to fix for the original.

Oh, and you can still slaughter horses if you’re desperate for food.

So, I too am a perfectionist, which is why the game is not the same. I believe it’s a much better game than the original.



For more details about what’s changed, see these articles:

What’s New
Crafters
Livestock
Treasures
Map
Automatic Save
Choices
Back-Patching
(Or search all Design articles)

22 May 2012

Skills, Expanded

I wrote before about the seven skills a leader is rated in. But we wanted to support OSL code such as

test Deception(expeditionLeader) vs Crankiness d6

In other words, like many roleplaying games, people have all sorts of abilities. But seven was already a fairly large number. So we came up with the idea of composite skills. Deception is the average of Bargaining and Leadership.

Including the composite skills, a leader can be tested in
Animals
Bargaining
Combat
Custom
Deception (Bargaining + Leadership)
Diplomacy (Bargaining + Custom)
Exploring (Bargaining + Combat)
Farming (Animals + Plants)
Hunting (Animals + Combat + Plants, special for Odayla worshippers)
Leadership
Magic
Plants
Poetry (Custom + Leadership)
Prophecy (Magic + Leadership)
Strategy (Combat + Leadership) 
Note that not every attempt to compose a poem is automatically use of the Poetry skill — it would depend on the context. But without some obvious reason to do things differently, that’s how we would have coded the scene.

15 May 2012

Still Not Universal

Unfortunately, there isn’t a lot of progress to report on the Universal build of King of Dragon Pass. Due to unforeseeable issues, our artist wasn’t able to complete the work. We’ve arranged for another artist.

Since we sometimes get asked: we are making a Universal build. That is, a single app that will run on iPhone or iPad, and take advantage of the screen size of each. If you already have the app on an iPad, it will be a free update.

(While the game doesn’t fill the screen of the new 3rd generation iPad, that device does use its Retina Display to display text, so the game looks very nice when blown up to 2x.)

We’ll let you know when there’s more progress.

24 March 2012

News: Sale(s), Move


We here at A Sharp have a couple pieces of news to share.

King of Dragon Pass for iOS has sold 15000 copies! We don’t have an exact count for the original (the second printing sold slower and our record-keeping got worse as time went on), but this is several times as many copies as we sold for the CD-ROM version. Thank you all so much for trying the game, and letting your friends know so they’d give it a try. Obviously this is not as many copies as Angry Birds has sold, but it’s not the same sort of game. And we’re really pleased that so many people have enjoyed it.

To celebrate, we’re putting the game on sale for 20% off until 1 April!

The other news is a bit different. With David’s new job as Development Manager at Shenandoah Studio, we will soon be relocating to Philadelphia. Hopefully this won’t result in any interruption of our web server (which is currently in the house where we created King of Dragon Pass). It will mean we’ll be a bit slower to respond before, during, and after the move.

And this isn’t news at all: we don’t have anything to report on the Universal version of King of Dragon Pass. At least on the new iPad, the text looks wonderful even when you magnify the iPhone screen to 2x (this wasn’t the case with the previous iPads). We still intend to release a Universal build when the art’s ready.