Putting Your Game On OS-X and Linux is Not Enough

Recently, an article about Indie gaming went up on Ars Technica entitled Indie dev suggests peers should support OS X, Linux gaming. While I think Jeff Rosen and the Wolfire Games guys are making a cool game, and Ars Technica meant well, this is not enough in Today’s market.

Windows vs. Mac is no longer the question.

Windows vs. Mac is no longer the question.

Eight years ago, when we were first starting GarageGames, putting your game on three OS’s was state of the art, and we supported it by releasing an engine and many games on all three platforms. Obviously, making sure your game can run on three OS’s instead of just Windows is a big step in the right direction, but now days, you need to expand your idea of what a platform is, and build your game accordingly.

Instead of debating OSX, Linux, and Windows vs. just Windows, you should be considering all OS’s, Flash, the browser, Facebook, MySpace, Hi5, Steam, Instant Action, Greenhouse, your own site, iPhone, Android, other smart phones, Nintendo DS, Xbox via XNA, XBLA, Playstation Network, Wii Ware, box distribution, Casual Portals like Big Fish Games and Yahoo Games, Flash Portals like Kongregate and New Grounds, international portals.

Concentrating on how you can make your game and intellectual property accessible for as many of these platforms as possible will greatly increase your chances of success. Look at how Popcap is growing like a weed in an era when most of the big publishers are losing money and market share, selling out, or going bankrupt. Concentrating on smaller IP’s that can exploit every platform imaginable is a much more viable strategy for Indies.

If you are an Indie trying to make the next Fable or Halo or Tribes, this approach probably won’t work, but for nearly every other type of game, I think an iterative approach to the development of the game and IP behind the game will work. If you have a BIG idea, you may want to consider making it smaller by using some of the techniques I described in the article The Art of Backing Off. If you have not read that article yet, please click on over, so we are all on the same page for the rest of this article.

Grunts: Skirmish Flash version runs on all OS's

Grunts: Skirmish Flash version runs on all OS's


Our game, Grunts: Skirmish, started as a big RTS + community for publication on Instant Action, but as per the Art of Backing Off article, it is currently a Flash game that will be available to play for free within the next few months (note: it is taking a long time because we are developing a company, several web properties, and the Push Button Engine at the same time). We like to call this first Flash version of the game our “Light Client” version, and we have plans to go from this version all the way up to “Heavy Client” versions like XBox and Playstation 3. However, we may never make it to the heavy client versions based on what we find out from the light client releases.

While you may argue that it is extra work to create light client versions of your game, I think it is the best method I have ever experienced for making a game so far in my career. Work on the light client has not slowed down or stopped our development of the intellectual property behind the game, i.e. the characters, back story, logos, or web site design. Plus, it has given us time to create and design a nice progression of milestones and prototypes that we can test along the way toward the end goal of the entire game. For instance, given the response to our characters already, I think people are going to like the IP, but there will be nothing like putting the game up on Kongregate to find out.

If players do end up hating the characters or back story, we are not too far into the concept or idea to kill it. We are flexible and not too invested. Developers that put their all into a huge concept for years, then find out players don’t like it, are screwed. Again, our idea is “too small to fail” right now. If we misjudged the market, we have dry powder to try something different. The same thing goes for the game play. Since we have only developed the first part of the overall game, we are not so invested that we will die if it does not work out.

Besides the above advantages of light and heavy client development, getting onto all of the platforms starts to get much easier. Check out what happens once we ship the Flash version.

  • We immediately bring a subset of our full game and IP to a billion potential players world wide on Day One of ship.
  • We are immediately available on Windows, OSX, and Linux.
  • We are positioned very well to put the product on Facebook, MySpace, Hi5, or any other social network.
  • Using some “special sauce” that we have worked up, porting our game to iPhone is fairly an easy task.

In one step, our game is delivered on over half of the platforms I mentioned above. In addition, we now have a great looking calling card and, hopefully, data to back it up, to allow us to pitch the heavy client platforms. Instead of going to Microsoft with a demo or a pitch, we can go to them with data that says our game was played by 7MM people that loved it and are looking for the next version. If you think about it, that is how Flow, Line Rider, and even the Behemoth guys got onto the heavy client platforms, although I don’t think they were thinking about that when those games were originally created.

To summarize, definitely make your game for more than one OS, but open your mind to where games are really being played in Today’s market.

-Jeff Tunnell, Game Maker
Make It Big In Games
Follow me on Twitter

  • http://www.subreal.net timaste

    Great article Jeff, I couldn't agree more with everything said here.

    In addition to this strategy, from the art side of Grunts every asset has been designed to “scale up”. All our physical assets, animations used to render could be reused for a full-on 3D product, another 2D game, promotional materials, etc. With a VERY small team on the several projects going on at once here, every workday and hour is important.

    If there is a follow-on product of any type to use the Grunts IP, the time investment will be significantly reduced due to smart decisions made now that ensure we will have a solid reusable asset base to scale up or sideways.

  • http://www.garagegames.com/account/profile/44571 Mich

    I love the terms you use in your blogs, such as “light client” vs “heavy client” and “too small to fail”

    They always make me look at my own projects to see how I can apply the concepts. Great read as usual. Before I got my hands on a Mac, I had the mindset that I have no interest in creating for anything but Windows. After using a Mac for several months, and playing more web games, I am definitely not thinking the same way.

    I've gone from Windows only to iPhone + Web + OS X + Windows, which is a pretty big jump for me.

    Great post as usual!

  • http://www.999credits.com houen

    Wow – that looks really nice! Does this game's completion mean the Push Button Engine will be avaiable for the public soon? (even in beta)

    • http://www.makeitbigingames.com Jeff Tunnell

      You can get a beta version of PBE right now by going to http://pushbuttonengine.com. Ben is signing up new people weekly.

  • http://3dcentral.net MikeRowley

    Interesting concept. I don't know that it would work for every type of game, but for the majority, it probably would, and would also most likely be the best route to take.

  • http://www.flashgamesretreat.com Leroy Frederick

    Couldn't agree more, you guys sound like your making many wise moves. You only have to think of things examples like bloons, scrabulous, iShoot and many others to realise that these are themselves bona fide platforms/consoles as much as the mac, windows or the xbox. Reach is so important, especially for independents and that happens to be one of Flash's middle names!

    I thought that TGB might be the easiest route to iphone (via iTGB), but if you guys have a magic button to make flash content work on iphone I'd pay for that alone (let alone the engine). 8)

    • http://www.makeitbigingames.com Jeff Tunnell

      Double posting seems to be a Disqus problem. I have been getting quite a few of them.

  • http://www.flashgamesretreat.com Leroy Frederick

    Couldn't agree more, you guys sound like your making many wise moves. You only have to think of things examples like bloons, scrabulous, iShoot (http://blog.wired.com/gadgets/2009/02/shoot-is-…) and many others to realise that these are themselves bona fide platforms/consoles as much as the mac, windows or the xbox. Reach is so important, especially for independents and that happens to be one of Flash's middle names!

    I thought that TGB might be the easiest route to iphone (via iTGB), but if you guys have a magic button to make flash content work on iphone I'd pay for that alone (let alone the engine). 8)

  • http://www.lumpygames.com/ DaveMyers

    Great article as always.

    Four or so years ago I wanted precisely what you are talking about with your new engine – for exactly the reasons you state. I was using T2D/TGB and wanted a web version, but someone told me that a web version wasn't important. It's obvious nowadays what I knew then, which is essentially the contents of this article.

    My first game with Lumpy is using iTGB primarily because I have significant development experience using the Torque technology. It is also appealing because it can target several OSes.

    But rest assured once you guys ship the engine I'll be onboard. I love Torque, warts and all, but taking advantage of the rich third-party offerings that the Flash community provides will likely make my game development projects come together quicker. Of course, only time will tell on that, but I have high hopes.

    • http://www.makeitbigingames.com Jeff Tunnell

      Torque is still a great way to go. In fact, our “heavy client” version will still have something to do with Torque. For most people Torque is the only way to go because you get the source code for a decent price.

  • http://www.thestillofthenightcausesastorminthemind.com Jeremy Alessi

    The tools have made it so much easier to go cross platform these says that eventually we really won't think of our hardware as the platform. In fact they'll all be “windows” with a view of the net.

    To play devil's advocate though, what if you hate PC, Mac, and Linux development? If we're controlling our own destiny why not just work on the platform you love? I'm having a blast with the iPhone and have all but forgotten about “ball and chain” systems.

    The other day I was talking with an old student of mine from the career shadowing program I volunteered for. He's a sophomore at Digipen now and it's so cool to see how far he's gone since I met him during his 8th grade year of middle school. Anyway, I told him how I was developing for the iPhone and he sort of shrugged it off and asked me if I was still going to develop for the PC anymore. I told him eventually I would but deep down I don't feel a need.

    I hate worrying about multiple display drivers, varied resolutions, sound drivers, non-standard input. These are all barriers to a designers original vision. PC game development is like the fast food of game development. You have to allow the player to make many decisions like whether or not they want extra pickles or to hold the onions.

    On the flip side take a Nintendo game. There are no options, no varied control schemes, no display tweaks. They serve the game up just as it was meant to be played on locked down hardware. In my opinion that's the best way to play and develop.

    If you go to a nice restaurant you don't change the dish the chef has prepared for you. You go for the experience of something new. I think games are experiences for you to wrap your head around not for the designer to cook “your way right away”.

    My favorite games are created this way and god willing this is the way I'd like to develop games as well. Some games can port from one piece of hardware to another without losing something or in some cases they can actually gain something. That doesn't always apply.

    In your case starting with Flash is great because it is the lowest common denominator. If you have the resources to start there and work out I think that's great. For anyone with a smaller team (3 or less) I think focusing on a core platform they really enjoy is key.

    • http://www.makeitbigingames.com Jeff Tunnell

      Jeremy, I guess you can focus on just one platform if you don't feel you need to make a business of your Indie game development. That is what is great about being Indie though, you can make choices that fit your needs and lifestyle. It is my belief that if you really want to control your own destiny that focusing on just one platform, especially a closed system like the iPhone would be a mistake. What if Apple decides tomorrow that they will half the royalties paid to developers? What if they simply decide they don't like your game and will not put it in the store. I realize these things are not probable, but they are possible. If your risk is spread across a bunch of different platforms, the odds of all of them going bad at the same time are very low.

      • http://www.thestillofthenightcausesastorminthemind.com Jeremy Alessi

        It's tough attempting to disagree with you ;) Initially, when I read this blog I was just going to post something agreeable (it is after all excellent advice) but I decided that wouldn't be any fun.

        For the bigger picture, I think this comes down to starting out vs. maximizing your game. If you're just starting out then you need to focus on the most profitable platform first and foremost and make the best possible use of it. If you're trying to maximize something which is already successful then I say go cross platform.

        I think the question to ask is, which platform should a developer start with? Flash is cool, but with Mochi Ads paying only $0.35 CPM's you need millions upon millions of games played to start making any money. Some guy posted his monthly totals on Indie Gamer and he got $214 for 620,000 plays of his game. On the contrary Martin Schultz (who had done some Torque stuff in the past) put up a fun but simple game (approximately 1-2 months dev time) for the iPhone and sold 915 copies on day 1. This isn't iShoot mind you. This is a guy who's done up 4 or 5 apps and has improved sales with each new one that he puts out there.

        I don't know if that Mochi Ad report was correct but if it is then it means you'd need 2,000 people to play your Flash game to equal 1 sale of a 99 cent iPhone app. By that measure, I say go cross platform but pick the hottest platform first and maximize the heck out of that one before shifting your attention elsewhere.

        Back on the spiritual level I think it's safe to say that you should also support the platform you're personally most excited about. People can throw numbers around all day long but there's no substitute for an inspired piece of work.

        • http://www.makeitbigingames.com Jeff Tunnell

          Jeremy, did you edit a post here? I got an awesome response from you in Disqus email, but on the site there is this shorter one. I don't think we are disagreeing at all. I would like to put up your longer response which is one of the best comments ever. I'll wait to see if this comment system flushes it out.

          • http://www.thestillofthenightcausesastorminthemind.com Jeremy Alessi

            By all means add it back then ;)

      • http://www.makeitbigingames.com Jeff Tunnell

        Here is Jeremy's reply before he edited it:

        It's tough attempting to disagree with you ;) Initially, when I read this blog I was just going to post something agreeable (it is after all excellent advice) but I decided that wouldn't be any fun.

        For the bigger picture, I think this comes down to starting out vs. maximizing your game. If you're just starting out then you need to focus on the most profitable platform first and foremost and make the best possible use of it. If you're trying to maximize something which is already successful then I say go cross platform.

        I think the question to ask is, which platform should a developer start with? Flash is cool, but with Mochi Ads paying only $0.35 CPM's you need millions upon millions of games played to start making any money. Some guy posted his monthly totals on Indie Gamer and he got $214 for 620,000 plays of his game. On the contrary Martin Schultz (who had done some Torque stuff in the past) put up a fun but simple game (approximately 1-2 months dev time) for the iPhone and sold 915 copies on day 1. This isn't iShoot mind you. This is a guy who's done up 4 or 5 apps and has improved sales with each new one that he puts out there.

        I don't know if that Mochi Ad report was correct but if it is then it means you'd need 2,000 people to play your Flash game to equal 1 sale of a 99 cent iPhone app. By that measure, I say go cross platform but pick the hottest platform first and maximize the heck out of that one before shifting your attention elsewhere.

        Back on the spiritual level I think it's safe to say that you should also support the platform you're personally most excited about. People can throw numbers around all day long but there's no substitute for an inspired piece of work.

        • http://www.flashgamesretreat.com Leroy Frederick

          Good perspective too Jeremy the only thing I would add is that sponsorship / licensing your game is where the real money is in free flash games ($100's to the $10,000 of dollars with some people quoting up to $20-30,000 in sponsorships alone), of course this is top tier.

          The article below is useful for learning about where the real money is in flash
          Where's The Cash For Flash?:
          http://www.gamasutra.com/view/feature/3924/wher

          Hope I haven't gone too off-topic, good points anyway! :)

  • roger

    Agree with your points here. Also want to add that the ability to port your game across platforms, operating systems, and frameworks will very much depend on your choice of libraries. If you choose to develop on libraries that only work on one operating system, on one framework, on one hardware platform, then you're at the mercy of the library owners. You've allowed those owners to take a share of ownership of your work.

    • http://www.makeitbigingames.com Jeff Tunnell

      I don't really understand how using somebody's game engine or library gives them a share of the ownership of your work. I would never use any technologies that required me to pay a back end royalty or have any ownership over my product. Maybe you can explain in a little more detail?

  • http://www.redthumbgames.com joshuadallman

    My latest game runs on Windows only. I should have used your game engine instead. I think I have platform envy.

    • http://www.makeitbigingames.com Jeff Tunnell

      You used Torque. Don't you have it on OS-X?

      • http://www.redthumbgames.com joshuadallman

        Porting costs, even with Torque, and to a micro-sized developer every dollar counts. My strategy was to develop the Windows version, test that out on the market to gauge publisher and player interest, then if the test went well to port to OS-X. That way if the game didn't stick, I could move on without wasting coder and QA dollars to port to platforms that it won't do any better on than the original platform. Even so I still have platform envy as I'm still on the old 3 at best.

        • http://www.thestillofthenightcausesastorminthemind.com Jeremy Alessi

          In my experience Mac users are 10X as receptive to games as PC users. This is what I was saying about picking the hottest platform first.

  • http://www.facebook.com/profile.php?id=1545255148 Josh Engebretson

    I supported Windows/OSX with MoM. We also released at probably the absolute worst time for OSX… with the change from PPC to Intel and compatibility issues between 10.3 and10.4

    Supporting/updating multiple binary incompatible installations as a small indie company is not something I'm chomping at the bit to do again.

    I'm really excited by what is happening with Netbooks… perfect fit for a light client and will run on Laptops/Desktops too :) Good article Jeff!

  • http://procrastinatorsband.com Kelly Asay

    Your experience and insight will be a huge benefit to developers sharp enough to read this blog, and pay attention to the advice. –Kelly