locked
questions about multiplayer game: single sign on and socket connection

    Question

  • I'm developing an online multiplayer game, users can interact with other users all over the world, not limited to home or private networks only. The examples of the single-sign-on SDKs have a strong focus of integrating Skydrive and Hotmail. I need neither of those, I just need a way to identify and distinguish users. Is SSO the right technology?

    Another question is, should I use a socket connection, or polling + push notification? I know that Windows 8 apps are expected to extend the battery life of devices and minimize data usage. The problem with push notification is that it doesn't know if the user suddenly goes offline (and thus signal the other player that the opponent has left the game, it's a turn based game). Socket connection solves the problem but the connection must be kept open even if the app is running in the background.

    Wednesday, August 22, 2012 1:36 PM

Answers

  • Hello,

    I would encourage you to take another look at the SSO technology. Keep in mind that Microsoft is going to encourage everyone to have a Microsoft live account. Because of this you can easily integrate SSO into your app and not need the user to learn another username and password.

    WRT networking... The implementation is entirely up to you and depends on your game's requirement. Some things to think about: How long between turns? Is each player dependent on the other player finishing their turn? Do you allow concurrent game play? What are the data constraints on your server? With all of this in mind I would recommend that you take a look at this whitepaper.

    http://msdn.microsoft.com/en-us/library/windows/apps/hh465399.aspx

    let me know if you have any specific questions about the various network technologies and I will do what I can to help.

    -James


    Windows Media SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Friday, August 24, 2012 8:19 PM
    Moderator