Testing In Bulk

Like King of Dragon Pass, Six Ages is a large, complex game. That means that during development, there will be a lot of bugs.

Graph of scenes written, coded, testedThe best way to find them is to start testing early. I like to start QA as early as possible, once there’s a runnable game. For example, we can start the process of making sure every interactive scene works.

We have a really good QA tester, but like KoDP, there are a lot of scenes, with a lot of branches. One of the process improvements over KoDP is that we have a way to brute force test every response of every scene. This is only a supplement to human testing. It can make sure nothing crashes, but can’t find typos or situations where the wrong person is mentioned. But it does mean we don’t waste QA’s time with testing something that isn’t fully implemented.

Some bugs have patterns. If one scene has a problem after the player has made a major story choice, it’s likely that others will too. I usually track these in our bug database as a “sweep,” meaning once all the scenes are coded, we will have to search the code for possible occurrences. We still report fix bugs as we go, and when this situation came up again in a scene, I decided to try out an idea: change the brute-force testing to set up the story situation, and then run the brute-force test. Bingo! Ten failures. Or, ten places that a person doesn’t have to either read code and see what’s going on (in a code sweep), or write up a bug report (manual testing).

Last night I got a bug report about a scene failing when there was no chief. So I decided to do another brute-force test. This found a lot of problems in scenes that had not yet been tested.

Unfortunately, the brute-force testing of every branch of every scene takes about two minutes (and getting worse, as we code more scenes). So while I probably should run each brute-force variant, for now I’m relegating them to occasional situations. But I’m definitely going to look for more places to do this.

Thumbnails

When we work with illustrators, we’re still using much the same process as we did with King of Dragon Pass. We first get a thumbnail sketch to figure out the basic layout of the illustration, then get a more refined pencil sketch. We’ve also been reviewing an inked version, and then a colored version. Some of these terms are no longer as literal as they were back in the 1990s (more artists are using a digital process, so there may not be actual pencils or ink pens involved), but the same basic idea of refinement is the same.

One thing I’ve found a bit different in this project is what different artists consider as a thumbnail. I had never seen color used in a thumbnail before, but two artists have done so. And some of the thumbnails are very polished.

A few artists will also produce a lot of alternatives (in one case, a thumbnail was so different that it generated a new scene).

Here’s a representative sample, from five of our artists.

  

I chose these to show the range of detail. Some of these may not actually end up in the game. But they’re all perfectly good thumbnails that start the process of illustrating an interactive scene.

Header Runes

The runes in the header correspond to the seven personal skills in the game. They’re slightly different than in King of Dragon Pass, since we won’t have quite as big an emphasis on farming. Animals and Plants have been combined into a single skill, Food. And since it’s a clan-level game, we added Diplomacy as an explicit skill, rather than just averaging Bargaining and Leadership. (Bargaining, Combat, Leadership, and Magic are the same. Custom is renamed to Lore to reflect a wider use.)Trade, Death, Harmony, Man, Mastery, Truth, Magic

Most of the skills had fairly obvious runes (Combat = Death, Magic = Magic), but the Food skill gave me trouble until I remembered this:

ManMan rune
Meaning: Mortal humanoids
This Rune represents the humanoid shape, and is common among all intelligent humanoid races. Some other races interpret it as “slave” or “food”.

HeroQuest Glorantha, p. 17

April Progress Update

One big change since the last update: the development blog has moved. That’s the first step in improving the game’s web site.

A recent development focus has been combat, and what King of Dragon Pass called “heroic combat” is now in the game. These are 27 situations where the normal combat flow is interrupted by an opportunity for an individual hero. (King of Dragon Pass had only 16, though one was called “Ten Path Battle” so it’s about the same.) There are also additional opportunities that may occur, which players choose instead of another combat option. (I still need to write “A Chance for Slaughter.”) So while the game still takes a fairly abstract approach to combat that favors narrative, players will get to make more choices during battle.

The Otherworld was another recent focus. We have an artist creating the illustrations, and all but one of the Otherworld travels is written and in the game. This hasn’t been a major focus of testing yet, but they do seem playable.

We continue to test as we go. The game is not complete, but it’s possible to winTrying to lead a clan of 675 people is impossible (thanks to liberal applications of cows from the Debug dialog, Liana has twice won the game). This has given us some feel for what the game still needs, and Robin has been adding scenes to flesh things out or adapt to certain play styles.

There are now 272 scenes coded and 224 that Liana has fully tested. We’re not done creating them, but this is almost as many in the game as were written a month ago.

It’s not technically a scene, but we’re using a script to show a page on the Lore screen that reflects your choices in the initial questionnaire. I’ve probably said it before, but we’re making a lot more use of scripts (compared to King of Dragon Pass).

jewelry designWhile we completed the basic concept art for the game a while ago, we’ve been working on some more specifics (both individuals and Gloranthan cultures). The shared Dropbox folder of sketches and reference material is now 864 MB…

Big tasks coming up soon: starting to think about a tutorial, and music.