Archive for the ‘Road of Kings’ Category

End of the Road

A couple days ago I got the following message submitted to the blog:

Did you run into legal problems with barbarian prince?  If so that’s very unfortunate. Is there any future hope for road of kings?

For those who have not noticed, Road of Kings was indeed pulled from iTunes and Google Play at the end of last December.  Likewise the Dancing Sorcerer website has been taken down.  It was a tough choice for us, but we decided by the end of the year that it was time to pull the plug on the project and wrap things up.  The timing was chosen specifically to avoid any tax implications for the following year.

No, we did not encounter any legal issues.  I had a very nice e-mail exchange with Richard Hendrick, the original designer of the Barbarian Prince board game.  He was very supportive.  I never heard anything out of Reaper, the current holder of the Barbarian Prince license.  Barbarian Prince did have a strong inspirational influence on our game, but so did our D&D hex crawl adventures, which I expect was also the original inspiration for Barbarian Prince itself.  All 30,000+ words of content in Road of Kings were written by us, and the mechanics while inspired by Barbarian Prince, were modified and added to by us based on our play testing and to better fit the mobile video game platform.  I believe Road of Kings was quite sufficiently its own beast such that there never an issue of claims arising from any quarter.

So what happened?  Ultimately, the game was taken down entirely for financial reasons.  It had reached that tipping point where it was going to cost us money simply to keep it up there, so we made the difficult decision to take it down.  This problem was further compounded when one of our three members moved across the country making collaboration a bit more difficult.  The terms that bound Dancing Sorcerer together were an all or nothing deal, so if one of us was out, we were all out, and so the group dissolved.  There are no hard feelings on any side here, we all agreed that the best choice was to call it quits.  The game had a small but dedicated fan base, and I’m sorry to all who enjoyed the game that we couldn’t develop it more.

Road of Kings was a great learning experience for us all.  When I first started the project, I knew nothing about smart phone game development.  I’d been in the video game industry for ten years, and knew PC development pretty well, and even spent some time making games for the old dumb phones, but that has little bearing on the current technology.  Furthermore, the market shifted as we created the game.  Premium titles were making money when we started, and by the time we shipped it was already a dying model.

Of course, all those lessons would be wasted if there wasn’t another project on the horizon.  I have been talking with the remaining member of the group about starting something new.  It will still be table top gaming inspired, though we’re now inventing from whole cloth with the current mobile market firmly in view.  We’re still spare-time hobbyists here, so we’re trying to keep that in mind and keep the scale small enough such that we’ll hopefully get something out before the entire market changes under us.

There will be more info about the new project here in the future, but I thought for now I really should make some kind of public statement regarding Road of Kings to all our fans.  I really am sorry that Road of Kings didn’t have longer legs than it did, and I hope the next project does better, and that you all are willing to come along for the ride with me once more.

Road of Kings Released!

Hey everyone , I’m super excited to report that Road of Kings has officially been released on both iTunes and Google Play.  I won’t bother you with more blabbering on about how awesome our game is.  I’ll just leave with these nice two buttons:

app-store-badge google-play-badge

Countdown to Release

I’ve posted this everywhere else, why not my own blog?  Road of Kings has an official release date: January 18th.  Also, we’re officially supporting iPhone/iPad in addition to Android, which is very exciting, as we expected it to take much longer to support that platform.  Things went pretty smoothly though, thanks very much to the good folks over at libgdx and robovm.

Finally, here’s the new trailer we just released.  Enjoy!

Road of Kings Update

In other news, progress on Road of Kings is going strong.  In fact, a large part of why I’ve missed updating my blog so much recently is due to my focus instead being on the social media marketing campaign we’ve started.  Granted, none of us are marketers and we don’t really know what we’re doing, but we’re trying very hard to have a much stronger visible presence on social media as we approach launch.  As such, I’ve been posting to Facebook and Twitter much more than my own blog.

If you’re not following us there, here’s what you’ve missed:

  • I’ve been posting a dramatized actual play report bit by bit on Twitter.  You can find that at #TaleOfSoryl.
  • We’ve posted a couple lore posts to our website, and promoted them on Facebook and Twitter.  The first was on the race of the Aesir, a strong group of sea-going raiders that you can join or fight against.  The second is on the staring location of the game, Delm Island.
  • Finally, I recently dropped several new screenshots of the game on our website’s front page.  Here’s a little teaser, follow the link for more:

Road of Kings

So, if you dig what we’re doing or just want to give us a little moral support, please consider liking us on Facebook or following us on Twitter.  I promise you’ll get much more frequent updates over either of those channels than waiting for me to remember to post to this blog about such stuff.

The Feminist Barbarian

Making a game rooted in 30’s era pulp fantasy presents some tricky situations for the modern developer. Let’s be straight (or not, whatever) — I wholeheartedly agree with modern ideals of equality for all, regardless of race, religion, gender, or any other detail that makes us a little different from each other. This modern ideal though sometimes works at cross purposes with the source material. Barbarian themed fantasy if full of slave-girls, savages, and other very non-PC portrayals. How can we avoid being offensive to our player base without cutting the legs off our genre?

It’s a tough line to walk. In some cases we allowed ourselves to play into old stereotypes. Yes, the main character of our game is a powerful, brutal, white guy. There is some content in the game where you can go rescue a swooning captive woman being sacrificed to evil demonic gods. That said, two of the more powerful allies you can get to join your band are a tough female Aesir warrior and a deadly spell-packing sorceress. I can also promise you that neither of these characters will be wearing chain-mail bikinis or other skimpy unrealistic articles of clothing.

There are slaves in our game, though they are not of any specific race or culture. We made the conscious decision to not have any case where you end up buying or fighting a slave. You can free them or you can ignore them, but we shied away from everything else. The difficulty was that we do want the game to feel like an old school roleplaying game where you can “do anything”. That said, we still have to author all possible outcomes, and we were just not comfortable going down those roads.

I hope our players appreciate the game for what it is and enjoy the stories they create with it. I hope we can attract a wide and diverse player base who all enjoy pillaging the lands and declaring themselves king. What is best in life? Hopefully just crushing your enemies without the lamentations of anyone.

libGDX

Road of Kings is built on top of a third party library known as libGDX, and I think it’s worth taking a moment to give the maintainers of that project their proper due. I happened upon libGDX quite by accident. Originally I started writing code for this project in java only because I had the vaguest idea that Android phones used java code. I chose Android as a target because that was the phone in my pocket, though to be honest, I think ease of developing code was one reason I chose an Android phone in the first place. But I digress…

When the code base first formed up it was just game logic, a simple combat emulator run on the command line. I started very early with a strong model-view-controller architecture, knowing I would want to replace the IO down the road. Eventually I did this, adding a Swing based UI so I could render the earliest map. Still I kept the game logic (model) very separate from the rendering (view) and user input (controller) portions, and one day I finally decided it was time to port to Android.

I looked into some of the Android docs, and quickly realized the complex UI system used by most Android apps was overkill for a game. I wanted something that would just let me blit images to the screen. So I hunted for a library that would do that, and discovered libGDX. I started playing with it and it seemed easy to use, and so the game soon had a third view/controller scheme based on libGDX. It would take a while before the console and swing alternatives would completely die, though once they did some bits of libGDX did seep into the codebase at large. I still keep my model pretty pure, though libGDX’s pool based collection objects did seem like a good optimization over the standard java.util packages.

I had no idea the many further benefits libGDX would bring, and these days I think if I were starting a mobile game fresh I would certainly choose libGDX as my engine. Here’s why:

1. Abstraction – What originally brought me to this library is still worth quite a lot. Having an abstraction layer between your game and the hardware is key for porting. The good news is, libGDX provides several already functioning ports, including desktop builds for Win32, linux, and OSX, Android, and HTML 5 (GWT). iOS is still a work in progress (see below). Plus, it wraps all the bits you’d want in a game: rendering, audio, input, file i/o, and even network communication.

2. UI – Wow, the 2D ui code that comes standard with libGDX is fantastic. It’s scene graph based, it includes an html table-like layout system, support for 9-patches, and skinning. I’ve worked with many less robust UI systems, and certainly few as elegant.

3. Animation – I was tempted to include this under UI, but it’s worth calling out on its own. Nate has implemented a very sweet system for moving actors around the scene using standard transformations including translation, scaling, rotation, etc. all easily modifiable by a pluggable interpolator to give non-standard motion over time (eg. sine waves, bouncing, etc.) You want an image to swoop in from the side and scale in, with a little bounce at the end? It’s about one line of code. And as it’s all built into the 2D scene graph, it’s just as easy to do that to a whole chunk of UI as it is to a single image.

4. Tools – Besides some helpful utility classes (hello xml and json parsing), there’s also some very nice support tools. For example, there’s a very nice tool for packing many small images into a single large texture. It’s even clever enough to determine that two images are identical and only actually pack a single copy and create two differently named references in its metadata. And then there are some approved optional extensions to the library that add some nice flourishes like loading and rendering TTF fonts.

5. Free – Yeah, it costs not a dime. Also, that means you have full source access so when you discover some little “I wish they did…” it’s actually pretty trivial to just go change it yourself.

OK, lest I come off as a complete fan-boy, it’s worth noting there are a few detriments:

1. Programmer Oriented – Those sweet UI and animation systems are great, provided you don’t mind layout out your UI and specifying your animation sequences in code. You want artist and designer friendly tools for this stuff, you’re going to have to write them. Good news is, you can write them, and I’ve found I can even add some libGDX rendering to a swing JPanel to use convenient swing UI stuff for the heavy lifting but still have a WYSIWYG display.

2. Early iOS Support – This is a big one, but the iOS support is pretty new. The current system is based on Xamarin (née MonoTouch) which requires a pretty hefty licensing fee (about $500). The maintainers seem to want to move away from this and are actively working on a new backend based on the free RoboVM, but that’s only started in the past month or two. I’m really crossing my fingers they get this stable by the time I need it, but if I have to I guess I’ll fork over the dough for a Xamarin license.

Well, there you have it, libGDX. I really can’t recommend these guys enough. If you’re thinking of making a mobile game and you’re not keen to jump on the Unity bandwagon, definitely check these guys out. You won’t be sorry.

Road of Kings Update

Progress on Road of Kings continues at a good pace thanks chiefly to our tireless intern Max. While he continues to pound out scripts I have been tuning the combat UI, and I think we’re really just about done with that. It’s very nice to see the combat screen look so good now, it was in rough shape for a long time. I’m sure James will want to take second and third passes on several of the individual pieces, but I think it’s quite passable now and can only get better.

Next on the hit list for me and James visually is the map screen. We’ve let it lag a bit behind and actually broke it a little when we experimented with a new slightly 3D look to the map. The direction is good but we need to come back and add a bit of spit and polish. Once that’s complete James can get back to adding more character art to the game. Right now we have just three characters, and it is a bit disconcerting to see that one sword-wielding dude stand in for everything from peasant girls to dragons.

I did take a little time this weekend though to sit back and just play the game, and I have to say, it’s pretty darn fun! With all the content Max and Mike have been adding the world is starting to feel like there’s some actual variety in it, which is a far cry from the HelgaCon playtest where the winning strategy was to farm dragons in the same ruins over and over again. Unfortunately with all this feature development the game has also become a bit buggy, so we’ll have to come back and do a serious bug fixing pass.

Tracking down those bugs in so many events will be a serious chore, but that’s where you come in dear reader. My goal is that once we have a passible amount of content in the game and nothing that’s really too visually jarring we’ll begin a closed beta. The system is all set up for the beta, with builds already pushing to a website that can be played right in the browser, as well as special Android beta builds for those willing to install unverified software manually to their devices. I’m giving a rough estimate of another 1-2 months before we’re there, so keep your eye on this site for more updates. I’m not sure how many seats we’ll have for the beta, but the good news is once it starts it will really be the end run and official ship will not be far off.

Officially, I’m not tying us to any specific dates here. With 3/4 of the group working only nights and weekends and the other 1/4 going to leave us at the end of the summer, even the smallest road bumps can severely alter the road map. Still, I’m hopeful we’ll have this thing out there in your hands soon. In the meantime, I’ll try to keep giving you little sneak peeks into the process here.

Back to Blogging

This blog has been ignored for too long. My apologies readers, if any of you are still out there listening. What happened? Well, it’s probably no coincidence that my last post was from late March, just when my attempts to sell my house started getting very involved. But I’m not going to get into that, suffice it to say that I’ve been trying to sell my house for a very long time and it’s not been a pleasant experience. I continue to be hopeful for the future, but I no longer have any expectation of when I might actually escape this quagmire.

Table top gaming has been non-existent for me for a long time, like a lot of hobbies that have been packed into boxes or put on hold until we move. Perhaps that has what has blocked me from posting, as this blog has basically been about table top gaming for a long time. But as the tagline says, this blog is about “whatever else comes to mind”, so it’s time to take a detour into something positive that has been consuming my free time — video game development.

Production of Road of Kings continues at a nice clip. In fact, things have picked up this summer with the introduction of our intern Max. Max is actually my younger brother who is currently pursuing a computer science degree, and wanted to spend his summer working full time on a real project. Thus Dancing Sorcerer was happy to bring him on and he’s already been hard at work for the past couple of weeks fixing bugs and making many of Mike’s more involved event designs a reality.

For three guys working nights and weekends, adding someone who can put full 40 hour weeks into the project has been a real shot in the arm. And it doesn’t hurt that Max is a pretty good writer and DM — his style fits right in with the content we already had.

When will it be done? That’s a tough question to answer. We’ve been working on this project for a little over a year now, and we’d like to wrap this thing up soon. That said, the part time nature of our schedules just doesn’t lead to very rapid production. The good news is that we’ve got pretty much all the unknowns nailed down. The design for the combat screen and characters has been resolved, and we know how many more events we have to author to make the world feel full. Now it’s just a matter of buckling down and creating all that content. There are still many scripts to be written and characters to be drawn, but hopefully the more we make the faster we’ll get at doing so.

Official announcements of the game will always appear first and foremost on our facebook page.  Please follow us there (and maybe drop a like our way) if you want the latest news.  That said, I’d like to get in the habit of updating this blog, and Road of Kings development seems like good fuel for that fire. So if you’re interested in following the nitty gritty details of indy video game development, keep your eye on this blog for my upcoming posts.

Inspiration

So, yeah, I played a lot of Barbarian Prince last summer.  It’s hard not to see that inspiration when looking at Road of Kings.  In fact, the original code base for Road of Kings was a simple Barbarian Prince combat emulator.  At first, I was just trying to figure out the percentage chance of winning the most common opening fight with the royal guardsmen (turns out you have a pretty good shot at killing 1 or 2 of them, 3 is about a 50% chance of success, and 4-6 you’re best off fleeing).  It wasn’t a huge leap from that to a full combat emulator, which was pretty handy when playing the physical board game.  It really sped up play, and I wrote the thing in Java specifically so I could run it on my phone, which was much handier than having a computer at the table when playing the game.

Then I took a left turn and decided to make it into a full fledged game that I would sell on Google Play.  I stopped slavishly trying to emulate the board game and let it evolve into something different.  I took additional inspiration from other hex crawl games, like Delta’s excellent Outdoor Survival based D&D game, and changed things where I thought the original board game made poor decisions.  Of course the map is entirely different from the Barbarian Prince board, and every event in the game has been custom written as well.  While game mechanics cannot be covered by copyright, I would never steal another man’s words.  And once I decided the game was not and could not be a direct translation of the existing game, I found my creativity liberated and my desire to take the game in new directions and really make it my own ignited.

I was excited that I could now add elements that you could never get away with in a solo board game.  In our game we have events restricted to specific regions, or hidden in specific hexes that can only be discovered by exploring the map.  We keep track of the player’s influence with various groups.  Do too many illegal things, and you may find the town guard at the next town a little more aggressive than usual.  Make friends instead of enemies with the Aesir you bump into, and they may invite you along on their next raid of the mainland.  Our game can track a lot more data than the board game could without becoming too cumbersome, and our game can keep secrets from the player, two unique traits that I ended up leveraging quite frequently.

So the question that’s plagued me since I started talking publicly about our game is this: how much should I reveal about the original inspiration?  The current game is a pretty far cry from the original board game in its internals and content, but the basic form remains the same: the goals are the same (gather X money in Y days), the format of moving across a hex map is the same, and some basic tactics are the same (gathering followers, balancing resources of days and food, choosing when to fight and when to flee).  I want to appeal to fans of the board game, as I myself am one, but I do not want to be dismissed as merely a rip-off of an old game.

I hope Road of Kings respectfully pays homage to Barbarian Prince, giving you a similar experience with the ease of a computer that fits in your pocket handling all the annoying resource tracking and math calculations.  I also believe it explores new ground adding elements the board game could have never gotten away with.  That balance is a little difficult to communicate in a 30 second blurb at a panel or in two sentences of a press release.

Ultimately, Barbarian Prince is a pretty old and out of print game, and most people won’t recognize it at all.  Those that do, well, I hope those that do are the kind of hard core fans who would also dig up the obscure blog of the developers, and find a nice long post explaining it all in detail.  Rock on you hard core fans, thanks for coming and I hope you dig what I made.  Now get out there and raise an empire!

Just Make a Game

I had a great time on my panel at PAX East yesterday, and I really appreciate everyone who came out to see it.  For those who didn’t, you can see the whole thing here (skip to 5:50:00).  We also got a little coverage from polygon.com, which is pretty darn exciting.  It’s my first experience being directly mentioned by the press, and my first experience being misquoted by the press.  Still, for a tiny group like us, any coverage is good coverage.

I didn’t want to comment on that site or nit-pick the misquote, but the more I thought about it the more I wanted to expand on what I was getting at, and what better place to do so than my own blog?  Isn’t that kind of navel-gazing exactly what having a blog is all about?  But seriously, the question that spurred the comment is one that as a professional game developer I get all the time: “How do I get a job in the game industry?”

The answer really is “just make a game.”  I don’t mean to be cavalier about the difficulties in making a full on video game here.  I’m not saying you should strike out on your own and make a stellar AAA title ready for sale to the public either.  But you can’t expect to get a gig in the game industry if you have absolutely no idea what making games entails.  Would you hire a carpenter who had never used a hammer before, but is eager and willing to learn how to do so on the job?

Sit yourself down and try to make something.  It doesn’t have to be something impressive or even get to completion.  What I was trying to say at the panel is that you should try to make a Tetris clone, or just try to make a text based tic-tac-toe game.  See how far you can make it.  There are so many benefits you’ll get from the experience:

  1. You’ll learn so much.  You’ll understand better what goes into make a game, that at least half if not more of making a game is not the game itself, it’s the other stuff: the menu screens, the save/load features, the installer, etc.  
  2. It shows drive.  Potential employers (and I’m one of them, so trust me on this) will absolutely favor resumes where there’s a link to a little project you did on the side.  Yeah, it helps if it’s actually good, but just having that entry on your resume will get you shuffled closer to the top.
  3. It’s something to talk about on interviews.  And not just filler, but stuff relevant to the position you’re trying to get. The people interviewing you have been through all the trials you have in your project, and if you can talk about such things in an informed way it will really help you stand out.

And while my advice here is skewed towards engineering candidates, I think it applies to everyone.  If you’re a designer, make a level for your favorite game that has a level editor.  If you’re an artist, try to re-skin an existing game.  Just getting practice at the kinds of tasks you’ll be assigned on the job is worth its weight in gold.  Plus there’s always the chance that you’ll discover you hate the work, and if that’s the case, you can save yourself from a long and agonizing job hunt and possibly an unpleasant working experience.

So that’s what I”m getting at when I say “just do it, just make a game.”  I was reading Kevin Smith’s book “Tough Sh*t” recently, and it turns out he has the same advice for potential filmmakers.  He says don’t just say “I want to be a filmmaker”, be a filmmaker.  (Now here I am probably misquoting Smith, as I don’t have his book right in front of me.  What goes around comes around I suppose.)  I wouldn’t be surprised if it’s the same for any kind of creative work.  It’s pretty easy to just sit around and say “I want to be…”, while actually, it’s not as hard as you think to just do it.