9. http://bit.ly/GJ_NavDesign
• Makes users first experience a
complete one.
• Provides a great mechanism for
providing users with updates/fresh
content
10. http://bit.ly/GJ_SemZoom
• Semantic Zoom allows a user
to get a different view of your
data
• Navigate between different
levels
• Quickly show unlocked
content, recently released
levels, or new achievements
11. http://bit.ly/GJ_NavDesign
• Great way to keep your game
as front-and-centre
experience.
• Can use the top app bar as
navigation home
12. http://bit.ly/GJ_CommDesign
• Will the control be used very
frequently?
• Is the control crucial to the
playing of the game?
13. http://bit.ly/GJ_Touch
• Users approach tablets and
touchscreens in a variety of
ways
• Windows 8 accommodates a
multitude of interaction
variations
17. http://bit.ly/GJ_StateMgmt
Game gets 5s to Game is not notified
handle suspend before termination
User
Launche
s Game
Game notified when
resumed
Splash
screen
19. http://bit.ly/GJ_LiveTiles
• At-a-glance information delivery in a natural, attractive
format
• Draw the user back into the app with a single tap with
fresh, tailored content via Live Tiles
• Send tile updates even when your app isn’t running
• Secondary tiles provide an entry point into a specific
experience within your app
• Scenarios: game-play status, latest leaderboard
positions, multi-player messages, game news
22. http://bit.ly/GJ_Contracts
Provides users with a familiar and
natural way to search for items
across game.
Scenarios:
• A friend to start a multiplayer
game against.
• A user name on a leader
board.
• An achievement.
• A specific level in a game with
many levels.
23. http://bit.ly/GJ_Contracts
Provides a way to connect the
player of your game to their social
networks, friends, or other apps.
From your game:
• Sharing game levels, high
scores, screenshots, custom
objects etc.
To your game:
• Receiving in-game content,
images, video etc.
24. http://bit.ly/GJ_Contracts
The settings charm provides a
familiar and consistent way to
modify an apps settings
More settings menus can be
added for account management
or game specific menus.
Scenarios:
User-account info, help content,
control mappings, notification
settings, about app info, support
info etc.
25. http://bit.ly/GJ_Contracts
This allows your game to share it’s
content with other apps seamlessly and
consistently.
• The file picker makes it easy to
organize content. You can also
access content from other apps
Scenarios:
• Exporting images from game to
start screen background,
• using music from music app for
game.
26. http://bit.ly/GJ_Contracts
Extend your experience beyond
Windows 8 and push your
content to devices on your local
network.
The ‘PlayTo’ feature allows relevant
controls to be accessed on the
first device without compromising
the display on the other.
28. http://bit.ly/GJ_Splash
• Many games may take longer
than the expected couple of
seconds to load.
• If that's true of your
game, ensure that you provide
some sort of indication to the
user that the game is actively
loading
29. http://bit.ly/GJ_GreatGames
• Communicate to users when
the game is in a paused state:
• removing them from the in-
game experience and putting
them back in the central hub
• or by presenting a pause
overlay or pause screen
30. http://bit.ly/GJ_GreatGames
Leaderboards are a crucial
component for game enthusiasts.
The competition factor keeps
users engaged in your game and
encourages other users in their
network to return and maintain
their rankings.
Utilise location services to access
local standings.
32. http://bit.ly/GJ_RoamingData
• Most people have more than one Windows PC.
• Make your game a continuous and consistent
user experience across all their Windows 8 PCs
Roaming Scenarios:
• Game settings and configuration
• App licenses and in-app purchases from the
Windows Store
33. http://bit.ly/GJ_WAMS
• Windows Azure Mobile
Services makes it incredibly
easy to connect scalable cloud
backend to your games.
• Easily store structured data in
the cloud that can span both
devices and users,
• Integrate it with user
authentication
• Send out updates to clients
via push notifications
34. http://bit.ly/GJ_W8Store
Designed for discovery
• Spotlight, Recommend,
Browse/Filter, Search
• IE10 & Deep links
Unprecedented reach
• Global reach: 200+ markets,
• 100+ languages
Flexible business models
• Free, paid, in-app, trials
• 3rd party in-app & advertising
support
Pricing
• Developers control pricing
• Up to 80% revenue share
35. http:// bit.ly/GJ_W8Samples
Windows 8 Samples
http://bit.ly/GJ_W8API
Windows 8 Store Apps API
http://bit.ly/GJ_AppDevBlog
Windows 8 Store Apps Dev Blog
http://bit.ly/GJ_W8Forums
Windows 8 Store Apps Forums
36. • Good luck with the GameJam!
• Thank you for your enthusiasm, support and ideas!
• Looking forward to seeing some great games!
Post GameJam:
• Register for a Windows 8 Developer Store account
DreamSpark members have FREE Windows Store subscription!
www.dreamspark.com
• Build and sell great W8 store apps/games!
http://www.microsoft.com/uk/msdn/windows8/
Hinweis der Redaktion
Time: 1 minWelcome
Time: 1 minuteWe like to talk of Windows 8 as Windows reimagined with a new interface that provides unified input across touch, mouse and keyboard whilst still preserving all the great work that we did in Windows 7Indeed, everything that runs on Windows 7 still runs on Windows 8 (in the same architecture) Windows from chipset to experience with support for a new range of capabilities, scenarios and form factorsUnprecedented user reach & engagement across a wide variety of different devicesWindows 8 makes it easy for your app to scale across desktops, laptops, tablets, All-in-ones and more.
Time: 1 minProvide overview of when Windows 8 announced, lots of changes made taking feedback from users.When it will be available etc..
Time: 2 minsSo what about Windows 8 for gaming? Windows 8 provides unparalleled reach across a range of devices, from touch and pen-centered tablets with modern sensors to high-resolution laptop and desktop PCs. These different form factors represent a unique opportunity for game publishers to enable great experiences across a variety of use cases and scenarios.Highlights new capabilities in Windows 8 that are of particular importance for games, including:Sensors—Windows 8 has support for modern sensors including light, gyroscope, accelerometer, and location.Share contracts and Device contracts—New, top-level operating-system functionality makes games more social and lets them make use of nearby devices.Windows Store – lots or commerce models including makes it easy to offer a free trial without writing any code. It's the easiest way to increase conversion rates.Ability to show game controls in different layouts on large screen sizes for an optimal gaming experience.Support for different types of user interaction, including touch, pen, keyboard, and mouse.
Time: 1 minToolingMicrosoft Visual Studio Ultimate 2012 is a developer-oriented IDE that focuses on code development and debugging across multiple languages, including JavaScript, C++, C#, and Visual Basic. You can download the free version, Visual Studio Express 2012 for Windows 8. Retail versions include tools for advanced graphics debugging.Blend for Microsoft Visual Studio 2012 for Windows 8 is a powerful visual design-oriented tool that helps you develop all types of Metro style JavaScript apps, and web apps and games.
Time: 30 secsSo build up excitement and anticipation
Time: 30 secsWe will now highlight some important ideas/capabilities that you can access using Windows 8 and the WinRT API to make your game can embrace Microsoft design style and simultaneously improve its users’ experience.
Time: 1 minGames vary widely in complexity when it comes to how they handle navigation and the exposure of commands and experiences. They range from simple, lightweight puzzle games with no menus or options to richly complex strategy games with tiered menus that host myriad options. Some games only have one experience for the user—the game itself—while others can host achievement screens, leader boards, multiplayer lobbies, and more. A great Windows 8 game will make sure that navigation between those experiences is a fast, fluid, and delightful experience. The navigation pattern you choose will be informed by the type of experience your game provides, so it is strongly recommended that you review both of the patterns discussed here and understand them before continuing. If you have multiple rich experiences in your game, above and beyond the actual game itself, a hierarchical pattern would be beneficial in bringing all of your content to the top level, as opposed to burying it behind menus. This way, every time your game is played, all of your carefully crafted experiences are put in front of the player. If the game is the only experience, however, consider a flat pattern that allows users to swiftly navigate between multiple sessions in the game (for example, multiple one-on-one word games against friends). Pick the appropriate pattern to help users quickly and confidently find the content they want. Oftentimes, it is not the game itself but the other content within it that help determine which model you pursue. Lets look at these in a little more detail…
Time: 1 minHierarchical patternThe hierarchical pattern enables you to put all of your content in front of users, delighting them and making their first experience a complete one. On your hub you can show entry points into the game itself, such as level select, new game, or continue game, as well as recent achievements, friends lists, and other areas of content, all on the same pannable surface. Each category can present content that the user can interact with directly, and section headers that can be used as navigation points to reach a deeper view of content relevant for that category. The hub can also be used to express some of the personality of your game, as shown in the example below, where the section view of the level-selection experience changes to reflect the experience of the portion of the game you’re currently viewing. The hub also provides a way to give updated and fresh content to users each time they view it, making it alive with activity even when they aren’t playing the game itself. For instance, consider the achievements experience modeled below. It divides the achievements into categories and provides information about each individual achievement all at once, telling users what it is and how close they are to unlocking it.
Time 1minTalk about this
Time: 1 minThe flat pattern is a great way to keep your game as the front-and-center experience and support seamless switching across sessions, even if there are no other heavyweight experiences within your game. Rather than taking the user to a sparse hub, simply use the top app bar as your navigation home: present the different users' sessions there and let the user move among them. If there is a preliminary state before your game is started, consider a presenting a screen that shows the user your branding and that also provides a place to identify as a “home” within the game. You don’t need to show the top app bar when your app starts. For example, Internet Explorer in the Windows Windows Store appUI experience handles this case by taking users to the web page they were last on and relying on them to swipe downAs you can see in the image, this game does not offer any experiences beyond the game sessions themselves and the means to initiate them. Rather than trying to move this small amount of functionality into a hub, the flat pattern enables this game to put all of its content in front of its users and let them quickly and confidently navigate it. their tabs to navigate.
Time: 2 minsLocation: on-canvas or app barIn-game controls can be found in one of two places: on the game’s canvas itself or hidden away on an app bar that the user can invoke at will. Asking yourself two questions can help determine where to put them: Will this control be used very frequently?Is this control crucial to the playing of the game?If the answer to either question is yes, consider putting the control on the canvas itself. This will ensure that the control and also how to play the game are plainly obvious to the user, and that the user is not frustrated by constantly having to invoke the app bar just to make progress in the game. CLICKHowever, if the answer to neither question applies, consider putting your control in the app bar. This avoids cluttering the canvas with buttons and controls, and leaves plenty of space for the user to interact with the game itself. This approach reduces distractions and allows the game experience to shine through. In this app, there are no controls on the canvas. Users play the game via direct manipulation. However, when they swipe up from the bottom…CLICK…the application reveals an app bar that contains a number of controls, including ways to pause the game and to change what sort of weaponry they’re using. The game developer has determined that these commands are executed infrequently and so can be hidden most of the time. Some games may have a control that is important enough to take up space on the canvas.
Time: 1 minIf you’re using virtual joystick or button controls on the canvas, let the user customize the size and the position of the controls, or make them relative so that they appear wherever the user puts down his or her fingers. There is no one-size-fits-all placement that is ergonomically pleasing to all users. In-game controls and interactions with them should always be at least 20 pixels from the edges of the screen so that they do not interfere with UI elements such as charms or app bars. For a default placement of a virtual joystick control, where the thumb is when the user is holding a slate. Direct manipulation is also encouraged as a means to control a game. Multi-touch supports panning and commanding at the same time, so users can do things like move their camera and shoot at the same time. Windows 8 devices may also have sensors, such as accelerometers, that can be used to interact with the game. Consider using these when they're available, but be aware that your app must provide alternative access to that functionality for PCs that do not have these sensors.Possible options for showing ergonomics:On Screen D-PadOn Screen ButtonsGeneral swipe to chop, shoot, etcDragMulti-touch
Time: 1 minChanges in orientation and window sizeA game can be in one of four visual states: full screen landscape and portrait, and snapped and fill. Your game should always be playable in full, fill, or portrait states, and you are strongly encouraged to make your game playable when snapped if it makes sense to do so. For instance, a puzzle game could easily be continued while in snapped state, but a first-person shooter would be impractical to play while snapped. When your game is in fill state, it should still be playable and should simply adjust its presentation to the space provided. If focus moves from the game to the snapped app, the game should pause as expected. When your game is snapped, if it can be played (even if modifications to the game's UI are necessary), we strongly encourage you to make it playable. This practice enables multitasking and lets users continue to play your game while doing other things on their system. This approach is particularly great for lightweight, casual games that can occupy the user’s attention without necessarily occupying the entire screen. For example, a user could continue solving a puzzle or playing a board game that's in snapped view. If your game is not playable in snapped view, or if it reaches a state where further progress requires more screen space, it should be paused and should explain to the user that further action is impossible until the app is no longer in snapped view. The game should not programmatically move from snapped view to become the main app independently of user action, nor should it offer a UI that has the sole purpose of moving the game move out of snapped view. It is okay to have the game change to another view in response to user action, and it is also okay to rely on the user to change it from snapped view by using the divider. For instance, your game could offer an "unpause" button that would programmatically make the game the main app as part of resuming game play. Try not to surprise the user by moving the game out of snapped view when they do not expect it. 1366x768 min to support this.
Time: 1 minute (2 CLICKS)and when your app is running, it’s not necessarily making direct API calls to the OS. a lot of APIs are “brokered” and that “broker” decides what to do based on a manifest that’s part of your app.There are APIs that we can’t just allow to “happen” without the user’s consent and so your application needs to say what it’s going to try and do and the user needs to be in control of that.It therefore looks at the applications manifest fileTo determine what the app is trying to access.
Time: 1 minuteThe app has to declare what the app wants to do ( capabilities ) which can still be turned down by the user and it also has to declare what it can do on behalf of the operating system or other apps ( i.e. declarations ).If not declared can’t use at runtime. Protect system integrity. Privacy implications of devices. System prompts the user – make sure when you use you handle this possiblity, expect they may be blocked at runtime from lack of user consent. Some have no privacy implications (e.g. sensors) don’t need to be declared.VS provides a nice graphical container.
Time: 2 minsthis is a huge change and one that needs understanding.In previous Windows version, user was in control of the apps lifetime – selecting to explicity kill it and could bring system to knees if too many running simultaneously.Your win 8 app is in one of 4 lifecycle states at any given time: not running, running , suspended or terminated. As your app transitions between states, it receives lifecycle events that help you provide a consistent and high performance experience to your users. All Win 8 apps move through these states as users launch apps, switch among them, and close them. Suspend – System resources focused on the app that the user is interacting with in the foregroundInactive apps have no impact on battery life or responsiveness, they are suspended by the OSEnables instant switching between apps!User can easily register for the suspend and resume events using Windows.UI.WebUI.WebUIApplication.addEventListener(‘suspending’, ‘resuming’)Suspended apps are not scheduled by the NT KernelNo CPU, Disk or Network consumedAll threads are suspendedApps remain in memoryKernel ensures apps are not suspended in critical sections that could cause system wide deadlocksApps instantly resumed from suspend when brought to foreground5 second phase to perform all operations…Termination – System needs more memoryUser closes the appSystem shutdownApps crashApps do not get notified when they are getting terminatedThere is no event fired during termination… you should save all your stuff by “suspending” … Need to think about saving and restoring state for the users info so that if they come back to the suspended app thenit is in the same place as they left it, with data refreshed.Plenty of guidance and examples online for this.
Time: 30 secsThe things covered so far are must-think aboutsTo make your game stand-out then you should really think about some of the ideas coming up…
Time: 1minTalk about how the user can pin 0, 1 or ( possibly ) more tiles on their start screen if the app offers 2ndary tiles.Talk about how those 2ndary tiles can provide launch context into the app ( jump to ‘movies’, jump to ‘theatres’ )Talk about how those tiles can display notifications; images & text badges – glyphs and numbers cycle through them ( if the user chooses to )Talk about how these also appear on the lock screen ( under the user’s control )Tiles are the “front door” to your app. A compelling live tile will draw users back into your app even when your app is not runningSecondary tiles:Differentiator from other apps in the Store, users will prefer the app with the great live tile.Tiles created by “pinning” content from app E.g user can pin weather tiles for different locations or their favorite stocks.Exposes relevant content eg.. New sci-fi films within a digital media app, local news in news app
Time: 1minLetting you know when it’s your turnAnnouncing new levels being available for cut the rope
Time: 1 minContracts A contract is like an agreement between one or more apps. Contracts define the requirements that apps must meet to participate in these unique Windows interactions.Search contract makes your app searchable from anywhere in the systemShare - People love to share, People often need data from one app in another appShare provides a lightweight, in context experience for app to app sharing Source app fills a data package (OS dealing with brokering between apps), target app processes data packageData package- Plain text, formatted URL, image, HTML, files, custom data formatSettings contract provides quick, consistent, in-context access to settings in your appPlay-to:you can help your users play digital media to connected DLNA devices from within your app. Users tap the Connect charm and then the Play To button, confident that your app will play their media to the DLNA device.Participating in this contract makes your app easy to use and encourages users to remain in your app for longer periods of timeApp-to-app: You can help users pick files from one app directly from within another app. Users gain freedom and flexibility to choose files that are stored and presented by apps.Participating in this contract helps you increase the popularity and adoption of your app
Time: 1min
Time: 1min
Time: 1minAll of your game’s settings, options, and Help content should be accessible via the Settings charm. The Settings charm is where all Windows 8 applications host their settings and options, and it is the natural place for users to look when they want to adjust the game’s sound effects or toggle a color-blind mode on or off. For sound, we expect that games will want to have their own, more complex sound settings (for example, separate volume sliders for music, sound effects, and voice). Use a label to make it clear that the audio settings are specific to your game. Windows 8 provides a global volume control rather than having each application control its individual volume, but games can have multiple sound sources that users will expect to be able to tune independently. As noted earlier, Help content should also be located in the Settings charm. Initial play education, such as tutorials, should be made available to ensure that users know how to play the game. An example of this can be seen here, where the app makes the tutorial part of its initial game-play experience.
Time: 1minExporting images from game to be background for start screenUsing music from music app to play in background of game
Time: 1min
Time: 1min
Time: 30 secs
Time: 1 minNot every game has to support pausing. Multiplayer games typically have no concept of being paused because multiple players are active at once, and games that are driven entirely by the user, with no other external factor such as a timer or clock, gain nothing by being paused. In these cases, there is no need to enter a paused state when users navigate away from the game, and going back to the game should present users with the same experience they were in before leaving if at all possible. If that's not possible (for instance, if a multiplayer gaming session has ended), the game should clearly communicate to users what state they are currently in. For games that do have meaningful pause scenarios, consider pausing when the game loses focus (for example, upon user invocation of charms or upon the appearance of a system dialog box). If the game’s visual state has changed due to rotation or being snapped, the game should continue if it is normally playable in its new state but should be paused if it is no longer playable. Additionally, include a pause button in your game. Decide on its location along with that of the other controls as discussed earlier. However, a game should not only rely on loss of focus to determine that it should pause. Communicating paused stateCommunicate to users when the game is in a paused state, either by removing them from the in-game experience and putting them back in the central hub or by presenting a pause overlay or pause screen. Don't permit interaction with the game while it is paused, except to unpause it. For puzzle, strategy, or timed games, it is advisable to obfuscate the game canvas during the pause so that users cannot gain an unfair advantage by pausing. The next example shows a game that shows its top app bar and enables navigation while the game is paused. Make it just as easy for users to unpause a game as it is to pause it. If you have a pause overlay or pause screen, it should contain some way to unpause the game. If you take a user back to a central hub, tapping the game's app tile should return the user to the game. When users unpause your game, consider giving them a moment to orient themselves before resuming the action. A countdown is a good way to do this. Separating pause from time flowWhile games that present time-flow controls—city-builder games, for example–can "pause" the flow of time, this is not the same thing as pausing the game. Pausing is the complete cessation of user interaction with the game, though some background rendering may continue so that animations continue to play.