sigh This is a subject that is dear to my heart: Until recently, I worked on the team that built the XNA Framework, Tools, and Xbox Live Indie Game ecosystem. More specifically, I primarily worked on Visual Studio integration.
Xbox Live Indie games has been an incredible, internal, uphill battle from the start. No one on any of the teams really wanted any of those restrictions, but a lot of factors were conspiring against us.
1) Legal: Indie games went into development long before Apple released the iPhone App Store. There was sooo much fear about allowing arbitrary content out there. There are also privacy concerns (think about people selling Facebook user IDs and stuff; similar things apply to Gamertags) preventing open internet access; specially considering young kids may play Xbox. Startups can "get away with stuff". Hell, Google and Apple can get away with this stuff. Microsoft can't, or simply won't.
2) Security: Full Xbox 360 titles run with full control over the box. Registered developers are trusted fully. This is in part due to simplicity, but also because games are really demanding software that want to avoid kernel call boundaries and other low level performance sucking security measures.
3) Cannibalization: Xbox Live Arcade (professional downloadable games) is big business. Leadership was terrified that people were going to systematically clone all of the best selling games. Hence silly rules like no free games and segregated Top Games listings.
4) Internal support: The XNA team is full of amazingly talented engineers. And amazingly savvy project managers. There are sooo many dependencies that go into XNA, it is simply incredible. Between the various platforms, SDKs, APIs, web services, etc. It could take two full days to just install all the stuff you need to be able to use a dev machine effectively. Such is the pain of working on a product that cross cuts about a dozen different layers of the technology stack; each layer independently written by a team larger than the entire XNA team itself. With so many partner teams, it is a miracle that Indie Games shipped at all.
5) Politics: At Microsoft, success is poisonous. If your team is talented and effective, if your product is sexy and fun -- and XNA was certainly all of these things -- then every middle manager in the entire damn company wants a piece of your action. We got re-org-ed so many times, I lost count. When XNA 1 launched on Xbox, it was a triumph. Then we spent a ton of time onboarding the latest platform, like Zune or Windows Phone, that management forced down our throats.
There is more, but this post is getting out of hand....
The Visual Studio integration is and always has been flawless. Debugging on an XBOX and being able to break into code on my PC is just an unheard of capability for technology at this price point, on a console. Thanks for all your hard work on this.
I'm hoping the winds change again in our favor. Maybe with enough parties vested in XNA they will know better than to drive away their seasoned developers by starving IG.
Sounds exactly what I'd expect from a big company. Politics and contrary agendas are an inevitable part of a large or even medium-sized company.
I'd always suspected that XBLIG was a battle to get greenlit, and the inevitable result is that once the evangelists move into other positions, you're left with an ecosystem full of people that were convinced to let something happen, who don't really support it.
As a XBLIG dev I have to say the "no free games" rule was a great idea, I think it kept out a tidal wave of fart apps. And I can completely understand why they were afraid of XBLA cannabalisation, XBLA devs pay good moeny to release their game on XBLA.
Shame about the politics derailing the XNA drive though.
It's easy to view Microsoft as an evil corporation that is trying to keep the little guy down, but this story is remarkably similar to how Google has treated the little guy on YouTube. Google and Microsoft may have more in common than folks here would like to admit.
What are you talking about on YouTube? Most of the top Youtube partners (people who get paid by youtube for videos) are individuals and not corporations.
I don't know any YouTube decision that hurt YouTube channels by individuals in any way.
The YouTube of 2010 is very different from the YouTube that Google acquired in 2006. It's nice that Google and Microsoft share revenue with the little guy. However, the evolution of YouTube over the years at the expense of the little guy is quite similar to Microsoft's treatment of Indie X-Box developers. You don't have to do a lot of searching on YouTube to find videos where small time video producers bitterly complain about how the gradual evolution of YouTube over the years has caused the little guy to suffer the death of a thousand cuts when it comes to YouTube's video discovery mechanism.
Sadly, when trying to get on a console as an Indie developer, this is far better then Sony's or Nintendo's options.
I'm almost thinking a new business venture would be to be a middle man between best of breed indie games and platforms with high barrier's to entry, but I guess this is called a "publisher"
> this is far better then Sony's or Nintendo's options
Hell, Nintendo is practically hostile towards indie developers. But this just goes to show, without competition MS will only treat customers/partners as good as the bare minimum they have to, and no more.
I was working on a game in my spare time, with an eye to eventually release it on XBLIG if I ever finished. This and a number of other niggling things, such as this (http://blogs.msdn.com/b/shawnhar/archive/2010/10/12/xna-game...), have prompted me to basically drop the project and switch over to making a Mac/PC/Linux game instead, focusing on Mac first.
This article needs more context. For example, how popular were indie games before the change? If they were very unpopular, and users were complaining that other aspects of the dashboard were hard to find, and they kept running into indie games, this change may make sense.
Also, since MS doesn't review Indie games the way they do tier-1 games, lack of internet access makes sense. They're really trying to keep the XBox a safe console.
If you want some of the other features listed, consider coughing up the dough to be a tier-1 developer. Or do PC games.
That also generated a couple parse errors in my brain until I think I figured it out.
I'm guessing what they mean is the user must be logged into Live in order to play the game (requiring the Xbox to be online), however the game itself cannot access the Internet in any way.
For the xbox indie games, you can't use sockets or any network access outside of what they provide for the xna api on the xbox. This limits the games to peer-to-peer with a max of 6 (maybe 4, can't remember offhand) players in a single session.
In general, the indie dev situation is awesome on xbox, especially compared to ps3 or the Wii. It has a great community set up for controlling quality and content ratings without requiring intervention from Microsoft and the speed you can go from no tools to code run on the 360 is nothing short of amazing.
That was something that confused me about the article. "Euthanizes" implies that Microsoft is actively trying to kill the service, but from the complaints it sounds like they are simply failing to improve it. And if they are already better than their competitors, it's not surprising that there is little pressure to improve.
Given that, it seems unreasonable to assume that the situation will not be better for Windows Phone, since Microsoft will need to stand up to comparisons against the iPhone and Android development experiences.
They're actively making changes to the service that make it worse, so it goes a little further than 'failing to improve'. The platform was already in need of significant improvement to serve as a real revenue stream for indie developers - only the biggest successes on XBLIG were bringing in revenue streams large enough to justify further development as anything other than a hobby. The changes they've made have actively made this situation worse, by making it harder for end-users to discover/purchase games and harder for developers to support their customers. Their current trajectory indicates that their only concern is the success of Windows Phone 7, and based on how they dropped support for Zune, if WP7 fails they will probably kill the Indie Games program entirely and use the funding on something else.
What particular changes have they made that make it worse? Looking at the article, and from all the newsgroups/mailfeeds I'm on, the only changes are the 4.0 breaking updates (expected with a major point change, same thing happened going to 3) and the menu layout. Everything listed in the original article here have been in that state for the past few years.
There ought to be a rating somewhere about how wildly a company tends to veer, and how often, when corporate re-strategizing kicks in, specifically in regards to APIs and deployment. MS in particular seems to be pretty schizoid that way, at least in the consumer space. (People were also bitching about Facebook and its APIs in that regard recently, no?) Say what you will about Flash, but I have unfinished games from 2006 that I could still safely release tomorrow without issue.
One particularly troubling decision not mentioned in this post: a new version of the XNA development tools (4.0) was recently released that introduces many breaking changes from the previous supported version, 3.1. Some of these changes actually reduce the number of windows machines an XNA game can run on, and other changes remove features entirely (even though they worked before).
As a result, many games cannot realistically be ported to 4.0 unless the developer only cares about shipping on XBox 360 at any cost. Under most circumstances, this would be fine, but Microsoft has decided that any games developed using the previous version of the framework (3.1) cannot be released if they wait more than 90 days after the official launch of the new version. Oddly enough, games previously submitted using version 3.1 will continue to function, so they're not dropping support for the framework - they just want everyone to move to 4.0. Essentially, Microsoft is forcing a release date on the set of developers who actually tried to develop games simultaneously for PC and XBox, even though this kind of simultaneous development was originally one of the things that made XNA interesting.
Microsoft has also dropped support an entire platform: Version 3.1 of the framework allowed you to target games at Windows (DirectX 9), XBox 360, and the Zune. Version 4.0 allows you to target games at a smaller subset of Windows, XBox 360, and Windows Phone. Anyone developing a Zune game is entirely left out in the cold (that's what you get for being an early adopter) as well.
The switch from the previous device caps model to HiDef/Reach means that games cannot opt to run on any windows machine that supports the GPU features they require, or choose to scale their experience down based on available features. If you select the HiDef profile, your game will fail to start if any of the features in the profile are missing. Likewise, the Reach profile prevents you from using HiDef features, so you can't target any of the millions of PCs that occupy that space in-between (for example, anyone with an Intel GPU). While it is theoretically possible to ship a PC game using the Reach profile, the profile is so absurdly limited that you'd be insane to use it for anything larger in scope than a 2-week project.
I don't think they dropped XP support, they just made it harder to use on XP. It does require .NET framework 4, though.
Why do companies seem to put developers in such poor positions? In platforms like this, it seems that your customers are in a large part, the developers. But instead of trying to lure them in, it's viewed more as a privilege to get on their platform than an attempt to gather the best software. I understand the desire to get on a large platform like Xbox, but isn't it at least somewhat of a concern that if Sony releases a developers eden for the platform that they'll lose business?
I suppose the problem is a lack of competition on any of the platforms, to my knowledge. If you're a developer you would want a game available on as many platforms as possible, regardless of any rules imposed on you. If you want your game on Xbox the only way to get it on is through microsoft, correct?
If not, it seems that someone should make a developer-centric distribution platform.
The late-2010 Xbox 360 dashboard update did seem to bury the indie game section under more menu's than the old one did (this is my gut feeling; I don't recall the steps for the late-2009 dashboard update):
1) Game Marketplace (1 of 9 options)
2) Explore Game Content icon (1st listed out of 11 icons)
3) Specialty Shops (1 of 6 options)
4) Indie Games icon (2nd listed out of 6 icons)
Though to be fair the entire Xbox 360 dashboard is overtly populated with lots of menu's everywhere. A lot of it is redundant (I count at least 10 options for Kinect stuff littered throughout; there are likely more).
Does anyone have any suggestions for the best way to contact Microsoft and negotiate an XBox Live Arcade publishing deal?
I've been developing an XNA game full time for the last 2 years and am unsatisfied with the state of XBox Indie Games. I have little business experience though, and have no idea how best to approach Microsoft. If money is a problem, I'm fairly confident I could raise 50k-100k on the merit of the current build.
My understanding is that at present, Microsoft prefers for XBLA deals to be negotiated through publishers, as most of the (fixed in quantity) XBLA publishing slots for each year are assigned to those publishers more or less in advance.
If you really want an XBLA deal for your XNA game, your best bet is probably the MS-run yearly competitions. Honestly, I think you'd be better off talking to Valve and getting on Steam, because they're a) not totally insane and b) already selling other XNA games on their platform.
What possible downsides would there be to Microsoft pushing Indie games more, perhaps through a dedicated channel on the dashboard? Is that kind of exposure likely to cannibalize retail game sales to any extent? It just seems to me that there is so much potential being wasted here, and for what reason? Just look at the iOS App Store, any Indie developer can release a game and it's thriving.
Xbox Live Indie games has been an incredible, internal, uphill battle from the start. No one on any of the teams really wanted any of those restrictions, but a lot of factors were conspiring against us.
1) Legal: Indie games went into development long before Apple released the iPhone App Store. There was sooo much fear about allowing arbitrary content out there. There are also privacy concerns (think about people selling Facebook user IDs and stuff; similar things apply to Gamertags) preventing open internet access; specially considering young kids may play Xbox. Startups can "get away with stuff". Hell, Google and Apple can get away with this stuff. Microsoft can't, or simply won't.
2) Security: Full Xbox 360 titles run with full control over the box. Registered developers are trusted fully. This is in part due to simplicity, but also because games are really demanding software that want to avoid kernel call boundaries and other low level performance sucking security measures.
3) Cannibalization: Xbox Live Arcade (professional downloadable games) is big business. Leadership was terrified that people were going to systematically clone all of the best selling games. Hence silly rules like no free games and segregated Top Games listings.
4) Internal support: The XNA team is full of amazingly talented engineers. And amazingly savvy project managers. There are sooo many dependencies that go into XNA, it is simply incredible. Between the various platforms, SDKs, APIs, web services, etc. It could take two full days to just install all the stuff you need to be able to use a dev machine effectively. Such is the pain of working on a product that cross cuts about a dozen different layers of the technology stack; each layer independently written by a team larger than the entire XNA team itself. With so many partner teams, it is a miracle that Indie Games shipped at all.
5) Politics: At Microsoft, success is poisonous. If your team is talented and effective, if your product is sexy and fun -- and XNA was certainly all of these things -- then every middle manager in the entire damn company wants a piece of your action. We got re-org-ed so many times, I lost count. When XNA 1 launched on Xbox, it was a triumph. Then we spent a ton of time onboarding the latest platform, like Zune or Windows Phone, that management forced down our throats.
There is more, but this post is getting out of hand....