Monday, February 8, 2016

[IndieDev] I'd Love To Support Your Platform, But I Can't (Yet)

One of the most frustrating things about being a game developer for me, so far, is people unable to play your game. Maybe they don't have good enough specs on their computer, maybe their networking setup doesn't work, or maybe they just don't have devices on the platforms you support.Eon Altar has a bit of a double whammy on the platform part, because we're limited for both the main game, as well as the controller applications. Right now we're Windows or bust via Steam for the main game (though we're working on OSX when we have spare moments), and for the controller apps, we're on iOS 8.1+ or Android 4.1+ on 512MB+ devices.Platforms and Market ShareWe expected some folks to ask for their platforms, but I'm a tad surprised as to what seems to be the most popular requests. For OSX we had a large number of users at PAX ask us about it--I personally fielded about 5 - 10 OSX requests a day--and I think we've had maybe 3 people total ask about Linux (which given Steam's statistics show a 1% user base for Linux users, not really surprising).

Steam Hardware Survey, January 2016

But on the mobile device side, we're had a surprising number of users asking for Windows Phone (or to a lesser extent, Windows Tablets). More users asking than OSX and Linux combined easily. Given Windows Phone only has a 1.7% market share vs. iOS at 13.1% and Android at 84.7%, I'm shocked by how many people outside of Microsoft's bubble owns these devices. Although if you look at country-specific data, you can see Windows Phone market share is largely driven by a few European countries, where Windows Phone share actually rivals or even beats out iOS in some cases.Zug ZugHowever, market share is a bit of a moot point for us on the controller app side. We're a Unity 4.x shop, and Unity 4.x doesn't support networking on Windows Store apps. While Unity 5.x's networking stack does support Windows Store apps, converting Eon Altar to use the new networking stack is non-trivial work, which is programmer speak for it will take a really long time. Probably on the order of weeks, if not months, to get correct, let alone all the other things that will break when we upconvert the project.

As the only programmer on the job currently, that would mean cutting features, like checkpoint saves. If I had to choose between checkpoint saves and another platform--oh wait, I do have to choose, that's my job!--I'd pick checkpoint saves, as that affects all of our current and future users in a supremely positive, non-trivial way. Also, we've had more requests for checkpoint saves than for Windows Phone.

There's also a question of, well, couldn't you just port the controller app to a ye olde Win32 (or OSX, or Linux) application? Push a button and go? The short answer is no, not really. The longer answer is it still involves work to ensure that resolutions work out, how do we ship the controller, is hardware support there, how does it play with a mouse instead of a touchscreen if the device has no touch screen--as well as a lot more testing. Which still means cutting features to get out the door.Never Say NeverThat's not to say we'll never support these other platforms. There are clear paths to doing so in all cases, it's just a matter of time is money, both of which are in extremely finite supply currently. Supporting more platforms so more people can play our game is definitely on my wish list, but right now we need to focus on getting the game out on the platforms we currently support, and if the game takes off sufficiently, we can revisit the platform discussion. #IndieDev, #EonAltar, #Programming