This document provides a roadmap for testing iOS games. It discusses key challenges in testing like multiplayer functionality, social integration, performance, and compatibility. It also outlines what aspects of gameplay should be tested, such as character development, points systems, and social features. Testing tools are mentioned like App Annie, Core Animation Instrument, and OpenGL ES analysis to investigate performance issues. The document emphasizes testing should be an enjoyable process.
7. GAMEPLAY
Components/Ge
nres
Action Arcade Role Playing
Main mechanics History, World
exploring, progress
on the map, quests
Certain
actions
Character
development, mission
fulfillment
Points For traversed
episode, map area
opening
For accuracy,
speed, skills
For certain level of the
character
Badges Excellence in
research
Combo Levels of character
development,
equipment,
achievements
Here are a few common challenges shared by all game developers:
Supporting multi-player features - especially when players aren’t near each other
Authenticity challenges - no one wants their saved game or high score ruined
Accurate social integration
Holding up to heavy concurrent load
Consistent performance across all hardware/software combinations your target audience might use
Making sure everything is perfect for launch - launch is everything when it comes to games
Game Center changes how you design and test your game. You aren't simply adding code to your app; you are also configuring assets used by Game Center. These assets are configured separately from your app bundle but are intimately tied to the code in your game. You need to test these pieces to ensure that all of the pieces work correctly together.
Player authentication is required. Other user interface elements, such as leaderboards, are optional,
Authentication: the authentication process begins while the title screen is displayed. If a player is not currently signed in to Game Center, the title screen is temporarily replaced with Game Center’s authentication screen. This screen stays up until the player completes the authentication process or cancels. Either returns the player to the title screen. If a player is already signed in to a Game Center account, then the authentication screen is never displayed. Instead, a banner is briefly displayed to welcome the player back without leaving the main menu.
UI: For example, many games use a customized graphics design with a consistent artistic theme. In this case, Game Center’s standard user interface classes won’t match your game’s theme
Notifications: Game Center-aware game can be launched because the player received a push notification related to Game Center—for example, when the player has been invited to join a match. If your game was launched as a result of a push notification, it can transition directly into a matchmaking screens immediately after the authentication process completes. In this case the title screen appears only for a brief period of time.
Multitasking: Games that support multitasking should take special note of this behavior. When your game moves into the background, the player may launch the Game Center app and sign out. Also, another player might sign in before control is returned to your app. Whenever your game moves to the foreground, it may need to disable its Game Center features when there is no longer an authenticated player or it may need to refresh its internal state based on the identity of the new local player.
The Core Animation instrument captures information on selected animation statistics. It can record information from a single process or from all processes running on the system.
Core Animation instrument shows the FPS statistic. And you can see each trace and its FPS in the column.
To see what CPU is doing, you can select Time Profiler instrument and see the aggregated call stack of what CPU is doing.
Color Blended Layers. Shows blended view layers. Multiple view layers that are drawn on top of each other with blending enabled are highlighted in red. Reducing the amount of red in your app when this option is selected can dramatically improve your apps performance. Blended view layers are often the cause for slow table scrolling.
Color Hits Green and Misses Red. Marks views in green or red. A view that is able to use a cached rasterization is marked in green.
Color Copied Images. Shows images that are copied by Core Animation in blue.
Color Immediately. When selected, removes the 10 ms delay when performing color-flush operations.
Color Misaligned Images. Places a magenta overlay over images where the source pixels are not aligned to the destination pixels.
Color Offscreen-Rendered Yellow. Places a yellow overlay over content that is rendered offscreen.
Color OpenGL Fast Path Blue. Places a blue overlay over content that is detached from the compositor.
Flash Updated Regions. Colors regions on your iOS device in yellow when that region is updated by the graphics processor.