Slashdot Mirror


Game Devs Weigh In On Windows Phone 7

The mobile games industry has exploded over the past few years, driven largely by titles built for iOS and Android. The Guardian's games blog decided to investigate the pros and cons of Windows Phone 7 as a game development platform while it struggles to catch up to its predecessors. "... the easy portability of code between WP7 and Xbox, plus the wealth of online tutorials, libraries and community support, is a massive advantage, especially for smaller and less experienced teams. ... As with Xbox Live Arcade, the console's downloadable games service, Windows Phone 7 offers a curated experience, which means Microsoft controls the quality of games appearing on the device. ... [Steven Batchelor-Manning of Nerf Games says,] 'The App Hub offers a good peer review system, where other developers are asked to check over your game. This helps filter out both low quality and bug-ridden titles. We are always given a particular quality to aim for. Once it's got past this stage there is also a chance that Microsoft will veto against your game going on the platform. Ultimately, this prevents the market being swamped, but above this, there seems to be a layer of games by big publishers (EA, etc) that just step past the smaller developers in the queue. This is the biggest drawback of the system.'"

29 of 189 comments (clear)

  1. Seems they have no idea what they are talking abou by Nyder · · Score: 3, Insightful

    ... the easy portability of code between WP7 and Xbox,

    How come i get the feeling they have NEVER programmed at all?

    --
    Be seeing you...
  2. Re:I don't know about this whole "quality" thing by MrEricSir · · Score: 2

    "Nintendo Seal of Quality" = "Nintendo Seal of We're Getting a Cut"

    --
    There's no -1 for "I don't get it."
  3. Re:Seems they have no idea what they are talking a by Sc4Freak · · Score: 2

    It's not "easy", but it's much easier than other platforms. Porting between, say, Xbox 360 and iPhone is pretty difficult if only because the programming languages are completely different. Indie Games on Xbox 360 and WP7 both use C# and XNA, and if you have an Xbox 360 project it's literally just a couple of clicks and it compiles and runs natively on WP7.

    Your game won't be *usable*, of course, since your game will be designed for a controller and not a touch screen. But it'll work.

  4. Weird story by 93+Escort+Wagon · · Score: 4, Interesting

    To me the article read like a blatant fanboy story, but maybe I'm just jaded.

    And then I got to this: "As with Xbox Live Arcade, however, Microsoft is set to run its own games promotions, to help market promising titles. The project kicks off this spring with a Must Have games season, which features six Windows Phone 7 titles, including Angry Birds, Doodle Jump, Hydro Thunder and Plants vs Zombies. "

    Sure, those are promising titles - after all, they're already big hits on iOS and Android. But how the heck is this tied to the article's repeated meme regarding Windows/XBox-specific tools, and easy cross-development between XBox Live and WP7? It's certainly unlikely any of them were written in C#.

    --
    #DeleteChrome
    1. Re:Weird story by shutdown+-p+now · · Score: 3, Interesting

      Right now there are no known non-stock WP7 apps not written in .NET. That said, all of titles listed are not really big in terms of code, so I suspect that porting effort is not as big as one would think. There's also a way to have a shared codebase between .NET and mobile platforms that support C++, though you end up with a rather crippled language subset (basically like Java with no GC).

    2. Re:Weird story by samkass · · Score: 3, Insightful

      Yeah... major astroturfing by Microsoft lately (including some newer Slashdot users to post happy messages), but the final sentence of the summary takes the cake:

      Ultimately, this prevents the market being swamped, but above this, there seems to be a layer of games by big publishers (EA, etc) that just step past the smaller developers in the queue. This is the biggest drawback of the system.'

      No... the biggest drawback of the system is that there are almost no customers to buy your app, so anything more than a quick port is uneconomical... and a quick port from iOS or Android (which is more important than XBox as a source of porting material) is impossible since W7 has no vanilla C/C++ and OpenGL ES.

      --
      E pluribus unum
  5. All against MS? by jelizondo · · Score: 3, Insightful

    Slightly off-topic

    Recently there had been several stories about MS / WP7 and many comments are, kind of knee-jerk reactions against MS.

    Before someone screams astroturfing, let me say that I use whatever tool is right for the job. Mostly I do data-driven applications (WinForms, PHP, MVC, Java, whatever) against the database server that will deliver the most bang for the buck (my client's buck, not mine) so I have used Firebird (the OS incarnation of Paradox), SqlLite, MySQL, Postgress, MS SQL and (gasp!) even Oracle!

    Now, I don't think MS gets, even now, how that works. Calling stored procedures in MS-SQL from any VisualStudio framework is a royal pain in the ass. They tout DRY but I can't think why you have to jump through loops to get stored procedures to work in their frameworks; I have many complex queries in SQL to list records, why would I want to repeat the same SQL statements in an MVC app and in a WinForms app against the same database? The surest way to achieve DRY is to use stored procedures and let each app handle only the presentation of the data.

    Having ranted against MS, I kind of like MVC 3 and the new Entity Framework, not quite up to speed on it, but so far I kind of like it and that has predisposed me towards looking at WP7 and see what has MS learned from past failures, which last year I would not have thought about at all.

    Now, in a site supposedly rife with developers of all kinds, shouldn't we be more open about investigating and then adopting or rejecting new technology?

    Please don't construct this as an advertisement for WP7, I'm simply saying, maybe one should look at it before dismissing it out of hand. I did some work in Symbian and (the pain!) Objective-C, so I don't think my eyes will pop-out if I look at WP7.

    --
    Be very, very careful what you put into that head, because you will never, ever get it out. - Cardinal Wolsey
    1. Re:All against MS? by shutdown+-p+now · · Score: 3, Interesting

      I have used Firebird (the OS incarnation of Paradox)

      Firebird is an OSS fork of Interbase. It doesn't have anything to do with Paradox, aside from the fact that both Interbase and Paradox were owned by Borland.

      Calling stored procedures in MS-SQL from any VisualStudio framework is a royal pain in the ass.

      Out of curiosity, what do you find hard about it? (especially in comparison with other similar frameworks, say, JDBC)

      Please don't construct this as an advertisement for WP7, I'm simply saying, maybe one should look at it before dismissing it out of hand.

      Right now there are more problems with WP7 from user side than there are from developer side. Sure, you can write an app - but do you actually want the phone to run it on?

      From dev perspective lack of C/C++ is a surprisingly big deal. On every other mobile platform, you can reuse existing C and C++ libraries as-is, and there are a lot of them. On WP7 it's .NET only, and even then it's not quite the same as desktop version, so there's no guarantee that your favorite library will work.

  6. MS is going with the wrong strategy.. by goruka · · Score: 4, Insightful

    I don't understand why they focus so much on developers porting XBLA games, when they should be caring about iPhone or Android developers porting their games and applications to WP7. I can understand that they will not run Java on their system to avoid problems with oracle, but nothing avoids them from offering C++ / ObjC, which are both available on Apple and Google platforms. This allows a much larger amount of developers (and middlewares such as Unity) to offer the same on WP7 as everywhere else.
    By forcing everyone to use .NET , I think developers will just keep writing their code in wathever is supported by the market leaders (Java, ObjC and C++), as they will not ditch their entire codebases to please Microsoft.

  7. Re:Seems they have no idea what they are talking a by Anthony+Mouse · · Score: 3, Insightful

    Your game won't be *usable*, of course, since your game will be designed for a controller and not a touch screen.

    I think that's the point. Who cares if you can port between two things that don't run the same kind of software? It's not like you're going to be playing Crysis on your phone. It's like having easy portability between Solaris and Android -- OK sure, but why?

  8. Its about limiting quantity by jonwil · · Score: 2

    Just like back in the day when Nintendo limited the number of games any one developer could have on the market at once, I suspect Microsoft wants to limit the number of titles (so that the money consumers spend on games gets spread over fewer titles, thus more profit per title). I suspect they also want to keep a lid on the number of free/near free titles (the more free options there are, the less likely it is that people will buy the expensive premium titles since the free ones give them enough things to play)

    1. Re:Its about limiting quantity by PmanAce · · Score: 2

      The limit is 100 free apps at once on the marketplace....not to shabby. Currently I am at 6.

      --
      Tired of my customary (Score:1)
  9. Re:So ... by Sc4Freak · · Score: 5, Informative

    It's "less-bad" than Apple. Microsoft unambiguously documents, exactly, everything that's required to pass certification. If your app fails marketplace certification, they point you to the section in the certification requirements document that your app violates. You can also ask for technical exceptions to the certification requirements for your app, but they're evaluated on a case-by-case basis.

  10. Re:Seems they have no idea what they are talking a by 517714 · · Score: 3, Insightful

    Windows = Keyboard + Mouse

    XBox = Controller

    WP7 = Touchscreen

    I don't see much code being reused on quality apps, but it should lead to lots of mediocre games. Each game will work best on the platform targeted by the developer, and the quality of the ported versions will vary widely, but online tutorials are unlikely to have a positive effect.

    --
    The US government have made it clear that we have no inalienable rights; any we do not defend vigorously will be taken.
  11. Re:As one of those devs... by Osty · · Score: 2

    As a WP7 app/game dev, I think the platform is stellar. For apps, it's trivial to make things smooth and impressive that integrate well with the look and feel of the rest of the phone. And that look and feel is miles ahead of what I've seen on Android and even a lot of iPhone. It's also trivial to go crazy with it and make something really unique that doesn't integrate at all, though that would probably be harder to get through the app verifiers.

    Microsoft has always been great at building developer tools, and the Windows Phone 7 SDK is yet another example. Silverlight is a natural fit for apps, and XNA works well for games (modern games haven't gone straight to the hardware for at least a decade -- the power comes from hardware acceleration, and the phone provides that).

    That said, not all is well in Windows Phone 7 land. The SDK has some very arbitrary limitations, like not allowing you access to the camera except through a task that spawns the stock camera app. No AR apps for Windows Phone 7 Series Phone Smartphone phones. Barcode/tag scanning apps are still possible, though inefficient, as they have to spawn the camera task, wait for you to take a picture, wait for the app to resume, and then process the saved picture. I could scan five barcodes on an iPhone or Android phone in the time it takes WP7 to scan one.

    No doubt the SDK will get better, but that's too little, too late. WP7 was already so far behind, it couldn't afford to launch without parity with iOS and Android in areas like direct camera access. These are things that are simply expected to be available these days, and not having them is a huge limitation that will prevent developer adoption.

    And just a quick note on the games front -- independent developers only get XNA access, but major third-party developers can write native code (and access Xbox Live, just like Indie vs. Arcade games on Xbox). In other words, Unreal or RAGE tech on WP7 is just as possible as it is on iOS or Android. It's just that it's not going to come from the 14 year old programming in his room upstairs.

  12. C# is irrelevent ; only C++/GLES matters by FryingLizard · · Score: 5, Insightful

    "Professional" mobile games (i.e. by commercial dev companies) are almost universally written in straight C/C++ with minimal ObjectiveC / Dalvik wrappers to get to the phone hardware.
    If you have a hit title, do you -really- want to have to rewrite the whole thing from top to bottom to port it to other platforms?

    I spent several months a few years back working hard to convince my employer (a certain US carrier) that going ahead and launching a J2ME-based mobile platform (in the last 00's - this is post-iPhone, people) was would elicit nothing more than mockery (and, at best, shovelware) from the developer community. My employer subsequently canned the idea, and I like to think that my steely knives helped kill the beast.
    My main argument was that forcing developers to rewrite significant portions of code almost guarantees you won't get major titles, regardless of your hardware lineup.

    One of the smartest things Google did with Android was the NDK; I recently ported a top-10 iPhone 3d game (written 99% in straight C/++) to Android NDK and including my getting-to-know-you time I was done in 3 weeks. Was scorchingly fast on the Galaxy Tab compared to iPad.

    The frank reality is that iOS is very obviously the largest mobile platform for developers, and others (Android, WP7, WebOS etc) must make it as easy as possible to port titles over.
    Google did a marvellous job of adding this capability; NDK gives you plenty enough bare metal to port easily from other platforms.
    I've not looked at WebOS ;-) but it appears they were smart enough to provide a plain-vanilla C++ and OGLES environment for games.

    Android and iPhone can handle running native code apps just fine. If WP7 can't make itself a viable (easy!) porting target like Android, it's going to be spending a lot of Saturday nights at home watching TV waiting for the phone to ring.

    --
    [FrLz]
    1. Re:C# is irrelevent ; only C++/GLES matters by tgd · · Score: 2

      XNA games can be written in C++, Visual Studio just doesn't include the templates for it. You can also easily do the platform bits in C# (which is, frankly, easier) and call directly into the C++ whenever you need.

      XNA is .NET, and you can write .NET code in C#, C++, F#, Ruby, Java, Perl. There are LOTS of languages that can compile to the .NET bytecode. All of them can access the Silverlight and XNA libraries.

      I think the knee-jerk anti-MS reactions on here unfortunately keep some people from actually looking at the platform and seeing what is there.

    2. Re:C# is irrelevent ; only C++/GLES matters by dskzero · · Score: 2

      I am pretty sure you can write code for .NET framework in C++. Oh wait, /. must hate on the man.

      --
      Oblivion Awaits
  13. Re:I don't know about this whole "quality" thing by Clsid · · Score: 4, Insightful

    That the game could be crappy story/gameplay wise is one thing, but Nintendo would not allow what we see in the PC gaming world nowadays: games full of bugs that make you feel like you are some kind of quality assurance technician working for those companies. And let me tell you another thing, I wholeheartedly believe that the programmers back in the day had to work their ass off pulling stuff in really underpowered hardware, with no niceties. Before, a company was able to program with optimized assembly code something like Mario Bros 3 and today, in the age of awesome debuggers, code profilers, source control, object-oriented programming and what not, we get this products that are rushed out of the door. I guess we have to thank the Internet for that. With the XBox360 I saw how that patch craze is coming with a vengeance to the console world. Part of that Nintendo Seal of Quality is that they would not allow something like EA to exist. You could only develop up to five titles per year.

    Other than that, with Nintendo you get the guarantee that you get a nice, clean and fun games with the system, plus more or less affordable hardware. You could get an original NES system with 2 controllers, zapper and two games for $100, and today the Wii is still the cheaper of the big three by $100. If you ask me which system I would get for my kids I would chose Nintendo without blinking. The other systems expose too much unnecessary violence, sex and gore and their kid users kind of remind me of that tech kid in the new Charlie and the Chocolate Factory movie. I have seen 10 year olds both in Canada and the US with stuff like Grand Theft Auto in their system, and since not all parents are created equal, then the kid that does have it is pretty much the cool kid in the block. That's like a big social issue to me.

  14. Re:So ... by ajlitt · · Score: 2

    This sounds different but similar to Apple's review process. Meet the old boss, same as the new boss.

    FTFY.

  15. Re:I don't know about this whole "quality" thing by PitaBred · · Score: 3, Interesting

    You don't want your kid to be the cool kid?

    Don't forget, the Wii has lots of games like "House of the Dead: Overkill" and "Madworld" and such. It's not all kiddie-friendly. It just isn't centered around frat-boy games.

  16. Re:Astroturfing by zblack_eagle · · Score: 2

    You can do anything at Zombocom. Anything at all

  17. Re:Seems they have no idea what they are talking a by cbhacking · · Score: 4, Insightful

    Right, because everybody knows that 90% of a game's code is in its UI and input system. Things like the game engine, AI, logic controlling elements in the game, resources, and netcode are completely irrelevant, right?

    To be fair, WP7 doesn't support much in the way of netcode right now, and it's certainly not trivial to shift UI paradigms. However, that doesn't mean that the ability to use XNA, and resuse a lot of code as a result, isn't still quite valuable.

    --
    There's no place I could be, since I've found Serenity...
  18. Re:Learn your history by johncandale · · Score: 2

    The video game crash of 19843/84 was caused by a flood of buggy bad games on the market by shady vendors. They would also take other publishers work and copy them onto cheap cartridges. The seal was there by Nintendo because they forced everyone to license their games, and be produced by Nintendo. At least you knew the game was 1st market. Also they did everything they could to market the NES as a system that wasn't junk to separate it from the consoles and games mothers had got burned on before. http://en.wikipedia.org/wiki/North_American_video_game_crash_of_1983#Long-term_effects

  19. Too much karma... by giuseppemag · · Score: 4, Informative

    ...so I'll burn a bit here :)

    I am an indie game developer working mainly with XNA. I have published a few XBox Live Arcade titles, plus a few WP7 ones. The ease of portability is really high. The only difference (granted, this is not necessarily trivial to implement) is the input devices, which are the first thing I wrap away because for various reasons it is useful to have a game that works well in Windows with kb + mouse. When porting to wp7 no additional code is required. Usually lighting and shaders will be toned down (not much to do, just set different techniques in the stock shaders) and models and textures must be reduced in detail, both for storage and rendering performance.

    In the end this is the reason why our games will keep ending also in the wp7 marketplace even though sales are not as high: the development costs for porting are so low that even few sales result in a gain...

    --
    My book: Friendly F#, fun with game development and XNA; my game: Galaxy Wars by VSTeam; my gamedev language: Casanova.
  20. Re:Astroturfing by Gadget_Guy · · Score: 4, Insightful

    Technically Microsoft do not have to pay for product placement on slashdot (and it seems unlikely that they would have done so and even more unlikely that this traditionally anti-Microsoft site would have acquiesced). Favourable articles about Windows 7 results in a large number of posts, and this translates into more ad views. Like it or not, Slashdot makes money by being controversial.

    That said, the pro-Windows 7 comments (at least for the desktop version) are in keeping with the positive reception of the platform all over the net and is reflected in the increased sales of the OS compared to Vista. For this reason, claims of paid product placement and astroturfing seem highly unlikely. Obviously the recent douche who made incredibly obvious pro-Microsoft "astroturfings" under a variety of new accounts is the exception. But that was so blatant that it had to be a troll, rather than a real shill.

    As for Windows Phone 7 (back on topic), often the people who have actually used it seem to report favourably on the platform. But like me, most people haven't even tried it and just assume that it will not be very good. I suspect that this is due one incredibly stupid mistake, and that was to not support copy and paste.

    This was such a major (and publicly derided) problem on the first version of the iPhone that the lack of the feature in Microsoft's product just screams that the platform is unfinished. Whoever made that decision at Microsoft should be hung, drawn and quartered - and then sacked.

    As with the original iPhone, it will be worth waiting for the next version of Windows Phone 7 before buying. Myself, I'm going to wait until Windows Phone 7 version 3.1 - that was the right strategy in the past!

  21. Re:Astroturfing by hairyfeet · · Score: 3, Funny

    The truth? You can't handle the truth! If we were speaking truth it would be thus: Apple is run by a control freak, Android is fragmented to hell and one of several products the parent company plays fast and loose with the rules for, WinPhone is dead last and will probably stay there, WebOS is nowhere to be seen ATM, and RIM is dead, they just don't know it yet!

    In actuality you'll get "Android is teh shit because it is teh FOSS and thus is good (though not really, just the kernel and even then Google hasn't released the latest version) and isn't nor has it ever been fragmented (ignore those 4 versions on the shelves!)" "iOS invented everything and Steve is a God, never an asshat (ignore the arbitrary rules that don't seem to apply to itself) and their prices are NEVER high and are competitive with the other products (if you don't count the 60%+ profit margins that is) and is great!" and of course "WinPhone is a completely new idea and thus will take time (ignore all those WinCE versions behind the curtain!) to find an audience (who will run over WinPhone to get the latest iShiny) who will appreciate its ease of use and synergy (Oh God, if we don't get Halo running on this thing we're fucked! Is my resume up to date?) and like previous products simply needs to build momentum (like Zune) and find its niche (like Kin)" and finally RIM "We're not dead yet! we feel better, we really do! we feel happy, we feel happy" (bashes in back of head and throws on the cart)

    So as you can see, reality and fanboyism and bullshit rarely do meet in the middle. So expect praise of the latest iShiny, Google Honeycomb Hideout, and WP7 which like WinCE will later be known as WiPe, as in you wipe your ass with it before finding an iPhone.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  22. C++ and C++/CLI are different beasts by tepples · · Score: 2

    You can write XNA and Silverlight apps in C++, if you like.

    But not the standard C or C++ that you may have used on PC, iOS, and Android NDK. One must use the verifiably type-safe subset of C++/CLI (/clr:safe), and its syntax for arrays, pointers, and references is incompatible with that of standard C++. If you want to compile one program, such as the logic tier of your game, both as standard C++ and as verifiably type-safe C++/CLI, I have been told that it would take a buttload of arcane template wizardry.

  23. XNA C++ != standard C++ by tepples · · Score: 2

    XNA games can be written in C++

    Unless it has changed recently, the kind of C++ that can be used with XNA is not standard C++, as I explained in another comment.