Minimal viable product

One thing that you will sometimes see when reading indie game developer blogs/postmortems  is the discussion of the minimal viable product (game). It’s one of those terms that have different meanings depending on who you ask, but from my point of view, it is essentially an agile development method.

Essentially, the idea is to build the bare minimum game experience necessary to find out whether people find the game fun or not. For an indie game developer, this approach is typically married with a couple of additional behaviors:

  • Code Reuse. Rather than building new game engines, reuse an existing one. It’s impossible to overstate how important this point is for indie developers, and it is one reason why I’ve occasionally during my game development “career” reached out to other developers of turn-based games to share code and experiences. Despite being very conscious of this, it’s also one of the areas where I don’t think I’m very good – the code reuse across the various projects I’ve done over the years has generally been abysmal. One of the things that I hope to do with the code for Pirates and Traders 2, is to try and reuse more elements of the same framework for some different game ideas that I have – hopefully meaning that I can create more games in future, in a shorter amount of time.
  • Reuse art and sound. I’ve been fortunate to work with some really talented guys who’ve charged me reasonably for their services, but this one is really critical for indie game devs. There’s a fair amount of free and low-cost music and sound effects out there. Art is harder, but that exists too (I suspect one reas Ion for the popularity of the pixel art aesthetic, is that there are a lot of pixel art sprite sets available for free). I did this really aggressively in the original Pirates and Traders; absolutely every piece of art in the original game was either Public Domain or Creative Commons, only replacing the art as the game began to earn revenue. For Pirates and Traders 2, I’ll be mostly reusing the art from the original, although I have plans made for stuff I want to add/replace as and when money allows. It helps, of course, that I create games where graphics are not critical to the gameplay; i.e., if you can’t enjoy the Pirates and Traders gameplay with the basic graphics of the original, you probably won’t enjoy it with professional art either.
  • Key features only. The idea in a MVP is that you want to stress your core game loop, because if it can’t stand on its own, the game isn’t going to work later either. I’ve been playing a bit of Assassins Creed 4: Black Flag lately (for Science…. research, you know 😉 ), and it’s been quite instructive. The core game loop there is of course going around murdering people in towns and doing the same to ships on sea. The game throws a ton of collectibles at the player to try and make you stick around, but (unless you’re the type that absolutely has to get 100%), the game is only going to hold your interest for as long as you enjoy the core game loop. Personally, after 6? titles, I’m pretty played out on the whole assassin game mechanic, and while I love the ship battles (and especially the visuals), it’s probably not going to get me through the entire game story. This is also why – IMO – it is a huge design flaw in the game that you have to play through almost half of it before they unlock all of the ship features. Although it’s still an interesting game, I can’t help feeling that the game series has lost sight of what made the game compelling to play in the first game (hint: it’s not collecting 399 sheets of paper and eavesdropping missions). Returning to my own games, the core game loop of Pirates and Traders are the ship battles and the port trading; the first version of the game contained little else (most of the RPG elements came later). The Pirates and Traders 2 beta will start in a similar place. When following the MVP approach, it’s critical to focus on the core game loop, and get it right.


One of the big “risks” of Pirates and Traders 2 is that I’m messing around with that core game loop – adding fleet action to the game changes the complexity and dynamics of combat. If it works out the way I hope, it will add extra depth and complexity, particularly to the later parts of the game where the player typically has a strong ship that can dominate the opposition in the current game (making the core game loop boring). If the redesign fails, then the game will have become more complex without adding any value to the core game loop. That’s the part that makes game design tricky – it’s easy enough to dream up new features, but if there’s not enough cost/benefit in the changes in terms of gameplay, it’s easy to end up with a worse game.

Even if the core game loop is perfect, though, that’s of course no guarantee of success. As Jeff Vogel commented in a post recently: Writing games for cash is a harsh, unforgiving affair. Success is rare and failure common, instead of the other way around. If an indie game fails, it shouldn’t surprise you. Success should surprise you. Focusing on the MVP is one way in which indie developers can reduce the risk in creating a game.


Regarding the beta, it is almost ready to get started. Saved games are working now (at least to the extent that my testing has uncovered), work now is focused on just running down the To-Do list to ensure that there are no (fewer) major broken features in the first release. Currently at 38 TODO items to go, but most are quite small, so with a bit of luck, the beta may be out this coming weekend. Assuming I don’t run into any major bugs while play-testing…


Beta Comments

The beta version is almost ready for release. I am currently working through the game save/loading code and fixing up some missing/out of data functionality, and once that is done, I’ll roll out the game to the testers.

Note that although I call this a Beta, that’s not really an accurate term for it. A traditional Beta is usually based around a nearly complete game; this release is more like an “early access” style approach. What those of you who have signed up for on the beta list are getting is a (hopefully) playable, but still very much unfinished game. What I’m looking for is the same as other early access efforts: feedback, suggestions, and help finding the bugs in the code.

If you’re a tester: Be prepared that P&T2 will feel like a step back compared to the existing game, at least initially.

ic_launcherA lot of the more complex functionality in P&T2 is either not implemented yet, or has been deliberately disabled in the first version, in order to focus on the core gameplay: ship to ship battles and trading. Since the former is pretty much entirely new (multiple ships), I expect there to be a lot of problems with this initially. Also, expect a high pace of updates and having to restart beta games occasionally. At this stage of development, saved games will break.

If that bothers you, I’d strongly suggest not jumping into the beta, lest it sour you on the game. I prefer to stay out of betas/early access programs myself, so I’ll think nothing less of you if you should decide it would be better to wait.

I’ll of course be using the feedback/criticism to try and improve the game, and plan to push out updates frequently to fix bugs, make the interface more user-friendly and add/release the game elements that I feel are missing. Most of the communication will occur through the MicaBytes beta community on Google+, but it’s public so those of you interested but not intending to be a part of the beta can follow it there. If you’re interested, you can also follow work as it happens on the new public Trello board for P&T2 where I plan to register issues/bugs as they get discovered.

Thanks for reading.

A cunning plan…

I am very wary of making promises wrt game development. Although I try to maintain a steady tempo in this work, it remains an activity that I primarily do in my – all too scarce – free-time.

The past few months have been harsh on my free-time. Part of this has been the move that I’ve already mentioned; that sort of stuff takes time. I begin to see the light at the end of the tunnel now, although there’s still a lot to be done (e.g., the bunch of Ikea bookshelves waiting to be collected behind me). The other part is that work is just that my bread and butter work has been hectic for the past many months. I’m not complaining, mind you – I love what I do for a living – and I pretty much decide what (and how much) I work myself. But overtime spent on day work means less time for other things – and usually means I cannot work as much on my games as I would like to.

I spent some time planning out my (real-life work) projects a couple of weeks ago, which was immensely cool (we’re going to be doing some really fun stuff if you’re into open data and apis). But it also made me realize that I’ll be immensely busy for the rest of the year – and I’ve spent some time for the past weeks considering the various projects I’m working on. And the easy conclusion is that the Pirates and Traders 2/Dwarf Kingdom games I would like to deliver in the first version are probably more ambitious than is realistic. Understood in the way that I probably won’t be able to finish either of them this year.

So after some hard planning, I’ve decided to go back to basics. For the next month or so, I’m going to be working on preparing the minimally playable version of Pirates and Traders 2. Essentially the core gameplay experience – trading, travelling, and sea battles. No land combat. No duels. Limited storylines (I’ll convert as many as I can, of course, but I won’t delay the game release because of this). As soon as I feel that this version of the game is stable, I am going to release it on open beta. I’m aiming for April or May this year. As soon as the open beta indicates that people are able to play it without things crashing constantly, the game will be released in its free version.

I’ll then iterate over the released version over the following months (and perhaps years) and slowly add in all of the features that I have planned (and – as always – listening to your feedback and comments). Those of you who have been playing the game for many years, will be familiar with the approach – it is exactly the same way that the first – very simple – Pirates and Traders game developed into the game it is today.

I know that not everyone will like this approach, but from my point of view, this seems to be the best option. It means the game comes out faster and it means I get better feedback faster (and thus am better able to gauge which ideas are good or bad, allowing me to be more effective). In fact, simply releasing the game is of benefit – it is always extra motivating to see something one has worked on being (hopefully) enjoyed.

It will soon be five years since I released Pirates and Traders on the Android market. I can – quite honestly – say that it has been a wonderful journey. I hope that very many of you will join me when Pirates and Traders 2 sets out on its journey in the hopefully not too distant future.

Moving Pains

It’s been a while since my last post, so I guess I’d better explain. I (we) moved to a new home this December, and as those of you who have done so in recent times will no doubt recollect, that is a huge drain on one’s free time. All of the weekends up till now as well as a couple of the some of the weekday evenings has gone with moving, putting together, and fixing things as required by the situation.

This is why I’ve been very quiet recently; I simply haven’t had the time and opportunity to write very much (in addition to which internet availability has also been a bit spotty – although fortunately not for long). I’ve crammed in some development work during the weekdays, but with most of my usual development time taken up by moving chores, progress has been slow.

This will probably continue in early January, but hopefully things will be back to normal (or close to it) by the end of the month. The plan in this case remains unaltered; I still hope to get the beta of P&T2 ready as early in 2015 as possible. Small Battles will not make it this year; I’ll probably push the schedule back a bit for that.

For the reasons mentioned above, my ability to reply to e-mails has also been spotty. I tried to follow up on everything before holidays got started, but if you’ve written me more than a week ago and are still waiting for a reply, please ping me again.

Thanks to all of you for your support in 2014; have a Merry Christmas (if that is your thing) and a Happy New Year.


Plans and Progress

By far the most frequent question I get is “when will Pirates and Traders 2 be done”. The answer to that is the annoying – but unfortunately accurate – “when it is done”. Software development is my passion, but developing games is only the part of that which I do for fun. This means I have to balance game development time with all the other activities of my life, which means my work hours are limited, irregular, and ultimately need to be at least a little fun (otherwise I burn out). The latter is one of the reasons why I decided to combine the three projects that I’m currently working on – it may not be the most efficient way to develop, but being able to switch contexts every once in a while or experiment on something different, is one of the ways in which I maintain motivation. But I digress; the point of this, of course, is to note that this situation makes it completely impossible for me to say when anything will be done. There are just too many variables that can affect the situation.

What I can do, is try to describe the status of things right now, and what I hope to do in the coming months. Just … keep in mind that all developers (myself included) are invariably hopelessly overconfident, so take any timelines here with the huge grain of salt that it deserves.

Small Battles is currently in a playable state; i.e., you can start up a battle, take your turns, have the AI take turns, and at some point you either win or lose. There are a few bugs in the gameplay still and the AI is still not good, but overall, I believe that the game engine is solid now (testing has not turn up any crash bugs). At the moment, I am working on adding some of the remaining missing features (e.g., making it possible for the player to deploy their forces) and handling the end of multiplayer games, but once that is in place, the game is pretty close to being release-worthy. Assuming no unforeseen issues, I hope to get most of this work done by the end of the month, and would like to try and release an open beta of Small Battles before the end of the year.

Pirates and Traders 2 development is going well. The story engine is looking good, sea combat works, and map movement is OK (the latter two still need some tweaks, though). A big part of the work remaining is to script the port interactions, and develop the user interface to give proper feedback. It’s not difficult work, but it is time-consuming; and given the things on my calendar for December-January, I’m not going to get through that work on this side of the New Year. Once I’m done, though, I plan to do the first round of beta testing. I would love it if this was possible to do before the end of the February, but that is probably my optimism talking.

Dwarf Kingdom shares a lot of code with Pirates and Traders 2, so a lot of the work that needs to be done there is stuff I’ll be doing while working on the latter. In addition to that, of course, there is a bunch of game specific mechanisms that need to be implemented. Some has been done already during earlier work on the game; the rest is waiting to be done. This has been taking longer than I would like it to, but my hope would be to move right from the beta of  P&T2 to implementing the last remaining bits of this game, and hopefully starting up that beta during the summer of next year.

So that’s the plan. In a perfect world, where I could guarantee spending 15-20 hours of my free-time a week working on that plan, this might even be doable. In the real world, though? Not a chance… one, if not all, of these goals are guaranteed to slip. So when they do… don’t be too disappointed. But there you have it.

TLDR; games are done when they are done.

Character Generation in Pirates and Traders 2

Seeing as how I just posted a peek at the character generating screen from Pirates and Traders 2, I thought it might be an idea to write a few words about it.

intro_traitsPlayers of the original game will feel that they are in familiar territory with this screenshot. I am retaining the basic character creation structure from the old game, as I’ve always been fond of defining the character through “backstory”, rather than just doing a +1/-1 skill choice.  The mechanism is a classical one, of course – it was used to excellent effect in several old RPG games such as Ultima IV and Challenge of the Five Realms. I’ve never heard anyone complain about it, so I assume most of the people playing the game are OK with this as well.

A new element in the starting creation is that your character now also starts out with personality traits (as shown in the screenshot). These personality traits provide bonuses (e.g., your fearless character gains a bonus to willpower in combat – i.e., less chance of breaking) and also affect what other characters think of you (e.g., fearless characters tend to be admired by others). The traits are not equally useful, but none of them are useless. For example, being craven might seem like a bad trait (since it is a social handicap and can negatively affect your battle performance), but it comes with a hefty bonus to perception (being afraid, means that you are always attentive to danger), and the likelihood of suffering fatal wounds in battle are significantly reduced.

As a player, you should want to chose traits that fit with your playstyle, and the kind of character that you wish to play. Did I mention that you can both gain and lose traits during the game? So, e.g., if your “Fearless” character continually turns down challenges to duels and runs away from battles, people will eventually see through the facade, and you lose both the trait and the benefits that come with it.

One element in character creation that exists in the old game that disappears is the ship selection. In the new version, here, the starting ship is tied to the character template you choose. Instead, the full version of the new game will contain a number of different starting backgrounds (I’ve got 10 planned, so far) leading to a variety of starting ships.

Another difference from the current game is that the difficulty level will be customizable, even beyond the current level. I haven’t decided on exactly which parameters will be possible to tweak yet, beyond those already mentioned (i.e., wind effects on the world map). Generally, I would like to make it so that players can tailor the game to their preferences within reason.

Of course, the quick-start option will remain, for those people who prefer to just jump right into the game with a reasonable, pre-generated character.