Building Cross-Device Xbox LIVE Games John Bruno Xbox LIVE Services Avi Ben-Menahem Xbox LIVE on...

Post on 02-Jan-2016

213 views 0 download

Tags:

transcript

Building Cross-Device Xbox LIVE Games

John BrunoXbox LIVE Services

Avi Ben-MenahemXbox LIVE on Windows

Why should we care about cross-device games?

Proliferation of devices and form factors. Our users expect to find the games they play on the

devices they own. Now it’s time to explore new ways to bring them together.

Create seamless entertainment experiences by connecting multiple screens that are available

at any time and from anywhere.

Cross-Device Gaming Scenarios

Play, Pause, and Resume Player vs. Player (Multiplayer) Companion Games

Play, Pause, and Resume

Keep users engaged on any device. Carry game progress across screens.

Multiplayer

We should expect our users to be on different devices with different capabilities.

Designs are screen-appropriate for multiplayer experiences.

Companion Games

Are applications with discernible gameplay that extends & interacts with the experience of a base/full game.

Keep users engaged with the games they love, on any device.

Have shared progress across all games of a suite.

Cross-Device Gameplay

demo

Xbox LIVE Cross-Device Gaming Enablers

Title groups Title-managed storage Near real-time, cross-screen multiplayer & matchmaking Leaderboards Achievements

Title Groups

Enables sharing across titles and screens

Title groups are a first-class construct Title group IDs are integral parts of the API Owned by a publisher, not a title

Title groups = shared cloud storage Many titles can access the same title group storage. Access control list (ACL) for granting permissions to titles.

Kinectimals for Windows Phone is released and gets read/write access to the Kinectimals title group storage so that cubs can be shared between devices.

A few years later Kinectimals 2 comes out and uses title group storage for its saved games.

Kinectimals 2 also gets read-only access to the Kinectimals title group storage in order to import saved games.

Title Groups Example

Read/Write Read-only

Kinectimals Mobile

Kinectimals

Title group123

Kinectimals 2

Title group456

Kinectimals launches and uses title group storage for its saved games.

Title Managed Storage (TMS)

Data sharing across titles and devices Game configuration management Key Attributes

Global data & user data Smart blobs: binary, JSON, game configuration

Cross-screen-enabled evolution of existing TMS for Xbox 360.

TMS-Supported Data Types

Binary blobs Classic saved game infrastructure. Also good for images and videos. Binary blobs cannot be shared between verified and unverified

platforms. Smart blobs

Same read/write API as binary blobs. Supported blob types: JSON and game configuration. Data can be shared between verified and unverified platforms. Title group ACLs restrict read/write at any level in the tree. Validation helps protect verified platforms.

TMS Example

Global data APIs GET, PUT, DELETE data:

/media/titlegroups/titleGroupId/storage/data

User data APIs GET, PUT, DELETE data:

/users/xuid(xuid)/storage/titlestorage/titlegroups/titleGroupId/data/...

Multi-User GET:(POST) /users/batch/storage/titlestorage/titlegroups/titleGroupId/data/...

The “...” is a blob name or directory of blobs

Title storage boundary

Global title storage5 GB quota, 5000 file maximum, no max file size

User A’s storage1 GB quota, 5000 file maximum, no max file size

User B’s storage

User C’s storage

Multiplayer & Matchmaking

Enabling users to play – even when they aren’t online together!

Complete service-based solution for enabling game play across screens.

Near real-time game play, gracefully degrading to asynchronous.

Numerous possibilities for fun, engaging titles.

Match, Play, Communicate…

Matchmaking Find people to play with Match against custom criteria Title groups enable cross-screen match

Multiplayer session management Create or join a session Update and retrieve game state instantly

Messaging Send game invites, turns, or other messages

Matchmaking Example

Submit a match request POST /users/xuid({xuid})/multiplayer/matchrequests

Check status of a match request GET /users/xuid({xuid})/multiplayer/matchrequests/{requestid}

POSTMatch criteria

Match found! GET

Matchmaking service

Leaderboards

Support for discrete leaderboards per screen Independent leaderboards per title – linked by title group. Accessible across devices – read only. Show progression on each supported screen.

Shared leaderboards across multiple devices Single leaderboard for the group of titles. Shared progress across screens.

Achievements

Achievements remain discrete to each title.

Query progression across titles by using title group.

Use achievements to promote cross-device gameplay.

Cross-Device Best Practices

Design for screen-optimal cross-screen experiences. Consider your data sharing strategies. For multiplayer games, match against a broader pool of

players. Use achievements to drive cross-title purchase and

gameplay.

Key Policies & TCRs

The spirit of our policies & TCRs… Recent changes to policies and TCRs New TCRs for TMS++ & title groups Policies & TCRs available at

http://developer.xboxlive.com

Summary & Recap

Entertainment experiences are evolving across devices.

Xbox LIVE services enable engaging cross-screen experiences.

Incorporate best practices into game design and mechanics.

Start today!

Becoming an Xbox LIVE Publisher

Concept Submission

Concept Review

Production Review

Investigation

Windows Phone: mobilegames@microsoft.com Windows 8: windowsgames@microsoft.com XBLA: arcade@microsoft.com Xbox 360 & Kinect: gamesub@microsoft.com Web webgames@microsoft.com

Call to Action

Develop!

Build experiences to connect users across devices.

Connect

Get docs, tools, and samples at http://developer.xboxlive.com/.

Succeed

Reach more users across multiple platforms.

Questions & Answers

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be

interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.