Tag Archives: Games

Designing your account deletion experience with users in mind

Posted by Tatiana van Maaren – Global T&S Partnerships Lead, Privacy & Security, May Smith - Product Manager, and Anita Issagholyan – Policy Lead

With millions of developers relying on our platform, Google Play is committed to keeping our ecosystem safe for everyone. That’s why, in addition to our ongoing investments in app privacy and security, we also continuously update our policies to respond to new challenges and user expectations.

For example, we recently introduced a new account deletion policy with required disclosures within the Data Safety section on the Play Store. Deleting an account should be as easy as creating one, so the new policy requires developers to provide information and web resources that help users to manage their data and understand an app's deletion practices.

To help you build trust and design a user-friendly experience that helps meet our policy requirements, consider these 5 best practices when implementing your account deletion solution.

1.     Make it seamless

Users prefer a simple and straightforward account deletion flow. Although users know that more steps may follow (such as authentication) navigating multiple screens before the deletion page can be a significant barrier and create negative feelings for the user. Consider providing your account deletion option on an account settings page or place a prominent button on the home screen. Design the flow with discoverability in mind by taking the user directly to the deletion process.

2.     Allow automatic deletion

Users feel that if they can create an account without talking to a customer service agent, they should be able to delete their account online, too. If automation is not on your roadmap just yet, consider a step-by-step deletion request form or a dedicated page to connect users with customer support.

3.     Offer guidance and explain potential implications

Users delete their accounts for various reasons, some of which may be better resolved another way. Early in your deletion flow, point your users toward a Help Center article that explains how your deletion process works in simple terms, including any potential consequences. For example, make it clear if your users will need to pause their payment method before deleting the account, or download any account data they want to keep. Helping your users understand the process in advance can prevent accidental deletions. For those who do change their minds, consider offering a way to recover their accounts within a reasonable timeframe.

Here’s an example of how Play Store Developer, Canva, has designed the in-app deletion flow to explain potential consequences of account deletion:

user journey on the Canva app in three panels
User journey on the Canva app
“User data privacy has always been important for us. We’ve always been intentional about our approach in optimizing the Canva app so our users can have more transparency and control over their data. We’re welcoming these new requirements from the Play store as we know this new flow will elevate users’ trust in our app and benefit our business in the long term.” - Will Currie, Software Engineer, Canva

4.     Confirm account deletion

Sometimes users misunderstand whether the account itself or just data collected by the app was deleted in the deletion process. Users often think that the data your app stored in the cloud will automatically be deleted at the same time as account deletion. Since it may take time to remove account data from internal company systems or comply with data retention requirements in different regions, transparency about the process can help you maintain trust in your brand and make it more likely for users to return in the future.

Here’s SYBO Games, has designed their web deletion in-app deletion flow:

user journey on the Sybo Games web resource in four panels
User journey on the SYBO Games web resource
“We are always striving to ensure that our games provide a fun user experience, built on a solid data protection foundation. When we learned about the new account deletion update on Google Play, we thought this was a great step forward to ensure that the entire developer ecosystem optimizes for user safety. We encourage developers to carve out time to embrace these improvements and prioritize regular privacy check-ins.”  - Elizabeth Ann Schweitzer, Games Compliance Manager, SYBO Games

5.     Don’t forget user engagement

This is a great opportunity to connect with your users at a critical moment. Make sure users who have uninstalled your app can easily remove their accounts through a web resource without needing to reinstall the app. You can also invite them to complete a survey or provide feedback on their decision.

Protecting users' data is essential for building trust and loyalty. By updating the Data Safety section on Google Play and continuing to optimize user experience for account deletion, you can strengthen trust in your company while striving for the highest level of user data protection.


Thank you for your continued collaboration and feedback in developing this data transparency feature and in helping make Google Play safe for all.

Kakao Games increased FPS stability to 96% through Android Adaptability

Posted by Dohyun Kim, Developer Relations Engineer, Android Games

Finding the balance between graphics quality and performance

Ares: Rise of Guardians is a mobile-to-PC sci-fi MMORPG developed by Second Dive, a game studio based in Korea known for its expertise in developing action RPG series and published by Kakao Games. Set in a vast universe with a detailed, futuristic background, Ares is full of exciting gameplay and beautifully rendered characters involving combatants wearing battle suits. However, because of these richly detailed graphics, some users’ devices struggled to handle the gameplay without affecting the performance.

For some users, their device would overheat after just a few minutes of gameplay and enter a thermally throttled state. In this state, the CPU and GPU frequency are reduced, affecting the game’s performance and causing the FPS to drop. However, as soon as the decreased FPS improved the thermal situation, the FPS would increase again and the cycle would repeat. This FPS fluctuation would cause the game to feel janky.

Adjust the performance in real time with Android Adaptability

To solve this problem, Kakao Games used Android Adaptability and Unity Adaptive Performance to improve the performance and thermal management of their game.

Android Adaptability is a set of tools and libraries to understand and respond to changing performance, thermal, and user situations in real time. These include the Android Dynamic Performance Framework’s thermal APIs, which provide information about the thermal state of a device, and the PerformanceHint API, which help Android choose the optimal CPU operating point and core placement. Both APIs work with the Unity Adaptive Performance package to help developers optimize their games.

Android Adaptability and Unity Adaptive Performance work together to adjust the graphics settings of your app or game to match the capabilities of the user’s device. As a result, it can improve performance, reduce thermal throttling and power consumption, and preserve battery life.

Moving image of gameplay from Ares: Rise of Guardians

Results

After integrating adaptive performance, Ares was better able to manage its thermal situation, which resulted in less throttling. As a result, users were able to enjoy a higher frame rate, and FPS stability increased from 75% to 96%.

In the charts below, the blue line indicates the thermal warning level. The bottom line (0.7) indicates no warning, the midline (0.8) is throttling imminent, and the upper line (0.9) is throttling. As you can see in the first chart, before implementing Android Adaptability, throttling happened after about 16 minutes of gameplay. In the second chart, you can see that after integration, throttling didn’t occur until around 22 minutes.

Graph showing high graphic quality setting measuring thermal headroom against thermal warning level in frames-per-second

Graph showing enabled android adaptability measuring thermal headroom against thermal warning level in frames-per-second

Kakao Games also wanted to reduce device heating, which they knew wasn’t possible with a continuously high graphic quality setting. The best practice is to gradually lower the graphical fidelity as device temperature increases to maintain a constant framerate and thermal equilibrium. So Kakao Games created a six-step change sequence with Android Adaptability, offering stable FPS and lower device temperatures. Automatic changes in fidelity are reflected in the in-game graphic quality settings (resolution, texture, shadow, effect, etc.) in the settings menu. Because some users want the highest graphic quality even if their device can’t sustain performance at that level, Kakao Games gave them the option to manually disable Unity Adaptive Performance.

Get started with Android Adaptability

Android Adaptability and Unity Adaptive Performance is now available to all Android game developers using the Android provider on most Android devices after API level 30 (thermal) and 31 (performance Hint API). Developers are able to use the Android provider from the Adaptive Performance 5.0.0 version. The thermal APIs are integrated with Adaptive Performance to help developers easily retrieve device thermal information and the performance Hint API is called every Update() automatically without any additional work.

Learn how Android Adaptability and Unity Adaptive Performance can help you stabilize your game’s FPS and reduce thermal throttling.

Com2uS brings a seamless multi-platform gameplay experience with Google Play Games on PC

Posted by Arjun Dayal, Director, Google Play Games

Reaching a motivated audience to play on PC

Summoners War: Chronicles is a mobile MMORPG from South Korean game developer Com2uS, released globally in March 2023. To date, Summoners War has earned over $2.7 billion with more than 180 million downloads worldwide. Set in a fantasy world where players must collect and train various monsters to battle against other players, Summoners War is one of the most popular mobile games in the world.

Nearly a decade later, the game continues to grow its large and active community of players, in part because Com2uS continues to release new content and updates to keep the game fresh and exciting. As part of Com2uS’s effort to offer their players the best way to enjoy the games wherever they want to play, they decided to expand their game to PC. They chose to expand to Google Play Games on PC to reach new users and offer the high-end immersive gaming experience to an already motivated audience ready to play mobile games on PC.

Moving image of gameplay across four devices with different screen sizes
Seamless sync across signed-in devices for Summoners War: Chronicles
Subject to game availability and PC compatibility

Optimizing for PC with the same Android build

Google Play Games on PC offered a quick and smooth integration process from mobile to PC using the same Android build. With many developer tools at hand, only few optimization steps were required to create a differentiated PC gaming experience. You can watch our Google Play Games on PC playlist to see more details on the integration process.

The Com2uS team added input support which is an essential feature to enable players to enjoy the game on large screens including tablets and foldables. Summoners War: Chronicles currently supports keyboard, mouse, and game controller, which has been one of the top requests from users. Also, it was important to optimize the user experience with cross-platform ability in mind. For example, the game's interface needed to be easily navigable and intuitive for players on all platforms, and the UI had to be adjusted for different size screens and allow clear explanation of the game controls.

To optimize the graphics settings for each platform, Com2uS chose Vulkan as their primary graphics API for its high performance and multi-platform ability. Even on high-end mobile devices, some players preferred flexible quality settings to avoid overheating and to preserve battery life. Vulkan allowed Com2uS to provide the best possible graphics quality for their key user demographic on both PC and mobile devices.

Using the Google Play Games on PC Emulator, Com2uS could test and debug the build in various player configurations, identical to the user environment. The emulator supports streamlined testing across multiple aspect ratios, directly accessible from the Play store and enables ADB access for developing and debugging. Having developed the game with Unity, they were able to automatically detect the emulator and directly deploy the game. Google Play Games on PC Emulator is coming soon for all developers, with support for the most popular game engines including Unity, Unreal, Cocos and more.

Providing the best user experience with simultaneous release

In November 2022, Com2uS simultaneously released Summoners War: Chronicles on both PC and mobile. Players can now enjoy the game on mobile or PC via Google Play Games. The release of the game on PC offers players a new level of gaming experience, allowing them to enjoy Summoners War on a larger screen and with more advanced hardware.

With Play Games Services, players can sync their progress automatically whenever they launch the game on a new device and can continue to collect rewards and Play Points no matter where they choose to play.

Get started with Google Play Games on PC

Starting today, we’re excited to announce that Google Play Games beta is opening up sign-ups for all players in Japan! Enable your players to experience immersive and seamless multi-platform gameplay with Google Play Games on PC. To join, express interest in our beta program today.


Google Play Games on PC is available to download in 14 countries as of April 19, 2023.
Please see g.co/googleplaygames for more information. Game titles may vary by region.



Google Play Logo

Key product updates from the 2023 Google for Games Developer Summit

Posted by Greg Hartrell, Product Director, Games on Android & Google Play

Whether you’re working on your first game or your next season pass, Google remains committed to helping you across the development and publishing lifecycle. At our Google for Games Developer Summit, I was privileged to share some exciting new tools and insights from Android and Google Play that will help developers like you build games for everyone.

Check out our video playlist to watch the keynote and product sessions on demand, or keep reading for a quick recap of the highlights.

Building great Android games

App quality is the foundation of everything we do at Android and Google Play, and because every user matters, we have updated our approach to technical quality with more emphasis on the user experience.

Google Play’s technical quality bar now uses new user-perceived crash and ANR metrics, which we evaluate on a per-device basis as well as overall. We have introduced an 8% quality bar at the device level, and we now steer users on Google Play away from titles that do not meet this threshold on their phone. To help you meet these guidelines, we’ve launched a number of new features in Android vitals to make it easier to monitor and act on issues. Learn more about these features in this session and about our quality bar in this blog post.

  • Performance is another key aspect of technical quality and for a smooth user experience, games on Google Play should aim for at least 30 frames per second. To help you reach this goal, we’ve just launched frame rate metrics for games in Android vitals. You can see these metrics in Play Console or with the Developer Reporting API. In due course, we will start steering users away from games that cannot achieve 20 frames per second on their phone. Learn more about the new metric in this session.

Screenshot of Android vitals in Play Console
Android vitals in Play Console now offers frame rate metrics to help you understand how smooth and fluid your game feels to users.

We’ve also introduced a range of new tools and services to help you improve the quality of your game.

  • We announced updates to Firebase Crashlytics to improve the quality of Unity stack traces, including Unity on-demand-fatal event reporting. We also now support the symbolication of native Android ANRs, and will soon support memory debugging for GWP-ASAN-enabled games.

  • We’re also introducing a suite of Adaptability APIs to the Android Game Development Kit to help your game respond to changing device performance and thermal scenarios. The Android Dynamic Performance Framework includes a hinting library that can send signals about your workload to the CPU, so your game can tap into performance when you need it and save power when you don’t. There’s also a Thermal API to listen during runtime for when the device is about to thermally throttle so that you can adjust your workloads to smooth performance without overheating the device.


Connecting with players

Building and connecting with your players is key to success for many games, which is why we’re creating more opportunities to help you find new players or engage and re-acquire existing ones.

  • We relaunched our LiveOps tools as Promotional content and made it available to more developers. Eligible developers can upload promotional assets in Play Console to promote in-game events, offers and deals, and major updates, and customize that content for new or returning users.

  • Custom store listings allow you to create up to 50 different store listings with different descriptions and graphic assets based on country, pre-registration status, and more. We’ve now introduced inactive custom store listings, so you can target churned users with a different story about how to come back to your game.

  • We also announced the early access program for Machine Translation in the Play Console, which can translate your game’s strings in minutes. This uses Google Translate and the best-in-class transformer-based language models for quality translation in over 8 languages including Simplified Chinese and Japanese. Sign up here to be one of the first developers to try it.

Reaching higher with large screens

Large screens offer new opportunities for an enhanced gaming experience. Our research shows that the majority of phone owners have access to a large screen, like a tablet, Chromebook, or PC, and gamers want to play their games across those screens. Large screens give you the real estate to implement high-resolution graphics, take advantage of multi-tasking or foldable-specific experiences, and add keyboard, mouse, and game controller support to give users more control.

The beauty of Android is that your games can be easily adapted for all these screens and we’ve made several updates to make the user experience better.

Four different screen sizes displaying seamless sync across devices playing Asphalt 9:Legends
Easily adapt your game to different form factors so your users can play whenever and wherever they want.
(Example shown here is Asphalt 9: Legends, subject to game availability and PC compatibility.)

  • Although each form factor has its unique advantages, you don’t need to customize your game for each one independently. Watch this session to ensure great playability across large-screen platforms.

  • Google Play Games for PC, now in beta in 13 countries, is expanding to Japan and countries in Europe in the coming months and is also expanding its catalog to include top games like Garena Free Fire, Ludo King, and MapleStory M.

  • And starting today, we’re making it much easier to join Google Play Games on PC with your existing mobile build, whether you support x86 or not. Through our partnership with Intel, you can now submit your mobile build while you work on optimization — no need to recompile for x86 right away.


You can learn more about these updates in this blog post or express interest in joining Google Play Games on PC.

For more announcements from the Google for Games Developer Summit, please visit g.co/gamedevsummit. Thank you as always for your thoughtful feedback and partnership as we create high-quality game experiences for players around the world.

Google Play Games on PC is available to download in 13 countries. Please see g.co/googleplaygames for more information. Game titles may vary by region.

Unlock seamless gameplay across mobile and PC with Google Play Games

Posted by Arjun Dayal, Director, Google Play Game

Google Play Games on PC gives users the ability to play their favorite mobile games on PC, with the security and stability they expect from Google Play. With a catalog of top-tier games and over 10 billion monthly sessions on mobile, our users have met this product with enthusiasm for its high-quality, high-performance emulation and cross-screen gameplay.

For developers, joining Google Play Games on PC can help you increase user reach, engagement, and ROI and build high-quality games across Google surfaces.
Moving image showing seamless sync across signed-in devices of four varying sizes playing Asphalt 9: Legends
Illustrative example of seamless sync across signed-in devices for Asphalt 9: Legends
Subject to game availability and PC compatibility

At today’s Google for Games Developer Summit, we announced how we’re making cross-platform game development even easier, by continuing to simplify and improve the onboarding process for Google Play Games on PC. Watch our Google Play Games on PC playlist or, keep reading to check the most important updates from today.

Moving image showing Google play Games home page on a desktop monitor
Google Play Games is available to download in 13 countries*. Subject to game availability and PC compatibility

  • Google Play Games on PC is expanding to more regions and including more games loved by billions of users worldwide. The program will be expanding to Japan and countries in Europe in the next couple of months and adding several new games including Garena Free Fire, Ludo King, and MapleStory M.

  • Through our partnership with Intel, we’re making it easier to join Google Play Games on PC with an existing mobile build. While fully optimized games still offer the best experience for users and qualify for unique cross-platform marketing and promotion, we now offer the option to submit your existing mobile build in the meantime to reach players faster. So if your mobile game already plays well on desktop, you can express interest now to join Google Play Games.

  • The new Google Play Games on PC developer emulator is a developer-focused build of Google Play Games specially designed for your debug and build process. It allows you to deploy games directly such as sideloading APKs via adb command or using Android Studio to adjust some graphics and hardware settings to validate different player configurations. To download the emulator, express your interest today.

  • In order to ensure that players have a high-quality experience on Google Play Games, use our new release checklist to verify that you've completed all the necessary steps before submitting a build to ensure a quick approval process. This checklist covers key requirements including using high-resolution textures and assets, supporting Windows aspect ratios, and implementing mouse and keyboard input.

  • With over 2 billion gamer profiles, Play Games Services stands at the core of ensuring seamless continuity across devices for Google Play Games. This year, we will roll out Next Generation Player IDs. These will keep a user's Player ID consistent across surfaces for any given game, while enabling them to be unique across different games.

  • Over the last few years, there’s been a huge push for large-screen devices in the gaming industry, including desktops, laptops, tablets, and foldables. Even though each form factor has its unique advantages, you don’t need to customize your game for each one independently. Check out this session to learn how to ensure great playability across different platforms, all at once.

You can learn more about Google Play Games on PC at the developer site, and watch all the sessions from the Google for Games Developer Summit at g.co/gamedevsummit.


Windows is a trademark of the Microsoft group of companies.
*Google Play Games on PC is available to download in 13 countries as of March 14, 2023. 
Please see g.co/googleplaygames for more information. Game titles may vary by region.

Grow your games with Google Play’s Indie Games Accelerator & Festival

Posted by Leticia Lago, P&E Developer Marketing

Google Play Indie Games Festival and Accelerator 

At Google Play, we are committed to helping developers of all sizes reach their full potential, and go further, faster. To continue supporting indies as they bring some of the most innovative titles to players worldwide, today we’re opening submissions to the 2022 edition of our two annual programs - the Indie Games Accelerator and Festival.

Through these programs, independent game developers and small studios can boost their game’s visibility, get training, and tap into a network of gaming experts:

  • If you are a small games studio looking for help to launch or grow a new title, enter the Accelerator to get exclusive training by mentors and industry experts;
  • Or, if you have already created and launched a high quality game that is ready for the spotlight, enter the Festival in Japan, South Korea or Europe for a chance to win promotions and reach new players.

Submissions for both Indie Games programs are open from June 1st to July 1st, 2022.



For more updates about Google Play’s programs, resources and tools for indie game developers, follow @GooglePlayBiz on Twitter & Google Play business community on LinkedIn.

Submissions now open: Indie games programs to help developers grow with Google Play

Posted by Leticia Lago, P&E Developer Marketing

Google Play Indie Games Festival and Accelerator 

At Google Play we’re committed to helping developers of all sizes reach their full potential, and go further, faster. Today we’re opening submissions for our two annual programs supporting the indie game community, as they bring some of the most innovative titles to players worldwide.

If you are an indie games developer, check out our Accelerator and Festival programs, where you have the chance to boost your game’s visibility, get training, and tap into our community of gaming experts.

These programs are designed to help you grow no matter what stage you are in:

  • If you are a small games studio looking for help to launch or grow a new title, enter the Accelerator to get exclusive training by mentors and industry experts;
  • Or, if you have already created and launched a high quality game that is ready for the spotlight, enter the Festival in selected European countries, Japan or South Korea. for a chance to win promotions and reach new players.

After being selected as a Festival finalist and participating in the Accelerator in 2021, Co-founder of Jimjum Studios, Nimrod Kimhi said "being in the Accelerator probably saved us two years worth of mistakes." Read below to learn more about the programs.

Submissions are open until July 1st.


Indie Games Programs 

Supercharge your growth with mentorship & live masterclasses

If you’re an indie developer who is early in your journey - either close to launching a new game or have recently launched a title - this high-impact program is designed for you.

With the help of our network of gaming experts, the Indie Games Accelerator provides education and mentorship to help you build, launch and grow successfully.

Selected game studios will be invited to take part in the 10-week acceleration program starting in September 2022. This is a highly-tailored program for small game developers from across 70+ eligible countries. It includes a series of online masterclasses, talks and gaming workshops, hosted by some of the best in the industry.

You’ll also get the chance to meet and connect with other passionate developers from around the world who are looking to take their games to the next level.

Apply to the Accelerator by July 1st.


Indie Games Accelerator 

Win promotions that put your indie game in the spotlight

If you have recently launched a new, high quality game on Google Play, enter your game to be showcased at the Indie Games Festival and win promotions.

Once again, we are hosting three international competitions for indie game developers from selected European countries, Japan or South Korea.


The Festival jury consists of both gaming experts and Googlers, who are charged with selecting creative indie games that are ready for the spotlight.

Top indie games will be featured during the online Festival finals, where you can get your game discovered by game industry experts and players worldwide. The winners will also get featured on Google Play, prizes and additional promotions such as campaigns worth 100,000 EUR.


Apply to the Festivals in Europe, Japan or South Korea by July 1st.

Indie games Festival 

All submissions must be completed by 1 July @ 1 pm CET and meet all eligibility requirements.

For more updates about all of our programs, resources and tools for indie game developers, follow us on Twitter @GooglePlayBiz and Google Play business community on LinkedIn.


How useful did you find this blog post?

Google Play logo

Google for Games Developer Summit returns March 15

Posted by Greg Hartrell, Product Director, Games on Play/Android

Image with Google for Games castle, rocket, volcano, and racetrack

With over three billion players showing strong engagement worldwide, the games market continues to remain resilient and grow beyond expectations. As we look ahead this year, the influx of new and returning players creates a great opportunity for developers to scale their games businesses.

The Google for Games Developer Summit returns virtually on March 15, 2022 at 9AM Pacific. From mobile to cloud, learn about our new solutions for game developers that make it easier to build high-quality games and reach audiences around the world.

Join us for the keynote at 9AM Pacific followed by over 20 developer sessions on-demand. We’ll share deep-dives and updates on the Android Game Development Kit, Google Play Games beta on PC, Play Asset Delivery, Play Console, and more. The summit is open for all. Check out the full agenda today at g.co/gamedevsummit.

Recommended strategies and best practices for designing and developing games and stories on Google Assistant

Posted by Wally Brill and Jessica Dene Earley-Cha

Illustration of pink car collecting coins

Since we launched Interactive Canvas, and especially in the last year we have been helping developers create great storytelling and gaming experiences for Google Assistant on smart displays. Along the way we’ve learned a lot about what does and doesn’t work. Building these kinds of interactive voice experiences is still a relatively new endeavor, and so we want to share what we've learned to help you build the next great gaming or storytelling experience for Assistant.

Here are three key things to keep in mind when you’re designing and developing interactive games and stories. These three were selected from a longer list of lessons learned (stay tuned to the end for the link for the 10+ lessons) because they are dependent on Action Builder/SDK functionality and can be slightly different for the traditional conversation design for voice only experiences.

1. Keep the Text-To-Speech (TTS) brief

Text-to-speech, or computer generated voice, has improved exponentially in the last few years, but it isn’t perfect. Through user testing, we’ve learned that users (especially kids) don’t like listening to long TTS messages. Of course, some content (like interactive stories) should not be reduced. However, for games, try to keep your script simple. Wherever possible, leverage the power of the visual medium and show, don’t tell. Consider providing a skip button on the screen so that users can read and move forward without waiting until the TTS is finished. In many cases the TTS and text on a screen won’t always need to mirror each other. For example the TTS may say "Great job! Let's move to the next question. What’s the name of the big red dog?" and the text on screen may simply say "What is the name of the big red dog?"

Implementation

You can provide different audio and screen-based prompts by using a simple response, which allows different verbiage in the speech and text sections of the response. With Actions Builder, you can do this using the node client library or in the JSON response. The following code samples show you how to implement the example discussed above:

candidates:
- first_simple:
variants:
- speech: Great job! Let's move to the next question. What’s the name of the big red dog?
text: What is the name of the big red dog?

Note: implementation in YAML for Actions Builder

app.handle('yourHandlerName', conv => {
conv.add(new Simple({
speech: 'Great job! Let\'s move to the next question. What’s the name of the big red dog?',
text: 'What is the name of the big red dog?'
}));
});

Note: implementation with node client library

2. Consider both first-time and returning users

Frequent users don't need to hear the same instructions repeatedly. Optimize the experience for returning users. If it's a user's first time experience, try to explain the full context. If they revisit your action, acknowledge their return with a "Welcome back" message, and try to shorten (or taper) the instructions. If you noticed the user has returned more than 3 or 4 times, try to get to the point as quickly as possible.

An example of tapering:

  • Instructions to first time users: “Just say words you can make from the letters provided. Are you ready to begin?”
  • For a returning user: “Make up words from the jumbled letters. Ready?”
  • For a frequent user: “Are you ready to play?”

Implementation

You can check the lastSeenTime property in the User object of the HTTP request. The lastSeenTime property is a timestamp of the last interaction with this particular user. If this is the first time a user is interacting with your Action, this field will be omitted. Since it’s a timestamp, you can have different messages for a user who’s last interaction has been more than 3 months, 3 weeks or 3 days. Below is an example of having a default message that is tapered. If the lastSeenTime property is omitted, meaning that it's the first time the user is interacting with this Action, the message is updated with the longer message containing more details.

app.handle('greetingInstructions', conv => {
let message = 'Make up words from the jumbled letters. Ready?';
if (!conv.user.lastSeenTime) {
message = 'Just say words you can make from the letters provided. Are you ready to begin?';
}
conv.add(message);
});

Note: implementation with node client library

3. Support strongly recommended intents

There are some commonly used intents which really enhance the user experience by providing some basic commands to interact with your voice app. If your action doesn’t support these, users might get frustrated. These intents help create a basic structure to your voice user interface, and help users navigate your Action.

  • Exit / Quit

    Closes the action

  • Repeat / Say that again

    Makes it easy for users to hear immediately preceding content at any point

  • Play Again

    Gives users an opportunity to re-engage with their favorite experiences

  • Help

    Provides more detailed instructions for users who may be lost. Depending on the type of Action, this may need to be context specific. Defaults returning users to where they left off in game play after a Help message plays.

  • Pause, Resume

    Provides a visual indication that the game has been paused, and provides both visual and voice options to resume.

  • Skip

    Moves to the next decision point.

  • Home / Menu

    Moves to the home or main menu of an action. Having a visual affordance for this is a great idea. Without visual cues, it’s hard for users to know that they can navigate through voice even when it’s supported.

  • Go back

    Moves to the previous page in an interactive story.

Implementation

Actions Builder & Actions SDK support System Intents that cover a few of these use case which contain Google support training phrase:

  • Exit / Quit -> actions.intent.CANCEL This intent is matched when the user wants to exit your Actions during a conversation, such as a user saying, "I want to quit."
  • Repeat / Say that again -> actions.intent.REPEAT This intent is matched when a user asks the Action to repeat.

For the remaining intents, you can create User Intents and you have the option of making them Global (where they can be triggered at any Scene) or add them to a particular scene. Below are examples from a variety of projects to get you started:

So there you have it. Three suggestions to keep in mind for making amazing interactive games and story experiences that people will want to use over and over again. To check out the full list of our recommendations go to the Lessons Learned page.

Thanks for reading! To share your thoughts or questions, join us on Reddit at r/GoogleAssistantDev.

Follow @ActionsOnGoogle on Twitter for more of our team's updates, and tweet using #AoGDevs to share what you’re working on. Can’t wait to see what you build!

Recommended strategies and best practices for designing and developing games and stories on Google Assistant

Posted by Wally Brill and Jessica Dene Earley-Cha

Illustration of pink car collecting coins

Since we launched Interactive Canvas, and especially in the last year we have been helping developers create great storytelling and gaming experiences for Google Assistant on smart displays. Along the way we’ve learned a lot about what does and doesn’t work. Building these kinds of interactive voice experiences is still a relatively new endeavor, and so we want to share what we've learned to help you build the next great gaming or storytelling experience for Assistant.

Here are three key things to keep in mind when you’re designing and developing interactive games and stories. These three were selected from a longer list of lessons learned (stay tuned to the end for the link for the 10+ lessons) because they are dependent on Action Builder/SDK functionality and can be slightly different for the traditional conversation design for voice only experiences.

1. Keep the Text-To-Speech (TTS) brief

Text-to-speech, or computer generated voice, has improved exponentially in the last few years, but it isn’t perfect. Through user testing, we’ve learned that users (especially kids) don’t like listening to long TTS messages. Of course, some content (like interactive stories) should not be reduced. However, for games, try to keep your script simple. Wherever possible, leverage the power of the visual medium and show, don’t tell. Consider providing a skip button on the screen so that users can read and move forward without waiting until the TTS is finished. In many cases the TTS and text on a screen won’t always need to mirror each other. For example the TTS may say "Great job! Let's move to the next question. What’s the name of the big red dog?" and the text on screen may simply say "What is the name of the big red dog?"

Implementation

You can provide different audio and screen-based prompts by using a simple response, which allows different verbiage in the speech and text sections of the response. With Actions Builder, you can do this using the node client library or in the JSON response. The following code samples show you how to implement the example discussed above:

candidates:
- first_simple:
variants:
- speech: Great job! Let's move to the next question. What’s the name of the big red dog?
text: What is the name of the big red dog?

Note: implementation in YAML for Actions Builder

app.handle('yourHandlerName', conv => {
conv.add(new Simple({
speech: 'Great job! Let\'s move to the next question. What’s the name of the big red dog?',
text: 'What is the name of the big red dog?'
}));
});

Note: implementation with node client library

2. Consider both first-time and returning users

Frequent users don't need to hear the same instructions repeatedly. Optimize the experience for returning users. If it's a user's first time experience, try to explain the full context. If they revisit your action, acknowledge their return with a "Welcome back" message, and try to shorten (or taper) the instructions. If you noticed the user has returned more than 3 or 4 times, try to get to the point as quickly as possible.

An example of tapering:

  • Instructions to first time users: “Just say words you can make from the letters provided. Are you ready to begin?”
  • For a returning user: “Make up words from the jumbled letters. Ready?”
  • For a frequent user: “Are you ready to play?”

Implementation

You can check the lastSeenTime property in the User object of the HTTP request. The lastSeenTime property is a timestamp of the last interaction with this particular user. If this is the first time a user is interacting with your Action, this field will be omitted. Since it’s a timestamp, you can have different messages for a user who’s last interaction has been more than 3 months, 3 weeks or 3 days. Below is an example of having a default message that is tapered. If the lastSeenTime property is omitted, meaning that it's the first time the user is interacting with this Action, the message is updated with the longer message containing more details.

app.handle('greetingInstructions', conv => {
let message = 'Make up words from the jumbled letters. Ready?';
if (!conv.user.lastSeenTime) {
message = 'Just say words you can make from the letters provided. Are you ready to begin?';
}
conv.add(message);
});

Note: implementation with node client library

3. Support strongly recommended intents

There are some commonly used intents which really enhance the user experience by providing some basic commands to interact with your voice app. If your action doesn’t support these, users might get frustrated. These intents help create a basic structure to your voice user interface, and help users navigate your Action.

  • Exit / Quit

    Closes the action

  • Repeat / Say that again

    Makes it easy for users to hear immediately preceding content at any point

  • Play Again

    Gives users an opportunity to re-engage with their favorite experiences

  • Help

    Provides more detailed instructions for users who may be lost. Depending on the type of Action, this may need to be context specific. Defaults returning users to where they left off in game play after a Help message plays.

  • Pause, Resume

    Provides a visual indication that the game has been paused, and provides both visual and voice options to resume.

  • Skip

    Moves to the next decision point.

  • Home / Menu

    Moves to the home or main menu of an action. Having a visual affordance for this is a great idea. Without visual cues, it’s hard for users to know that they can navigate through voice even when it’s supported.

  • Go back

    Moves to the previous page in an interactive story.

Implementation

Actions Builder & Actions SDK support System Intents that cover a few of these use case which contain Google support training phrase:

  • Exit / Quit -> actions.intent.CANCEL This intent is matched when the user wants to exit your Actions during a conversation, such as a user saying, "I want to quit."
  • Repeat / Say that again -> actions.intent.REPEAT This intent is matched when a user asks the Action to repeat.

For the remaining intents, you can create User Intents and you have the option of making them Global (where they can be triggered at any Scene) or add them to a particular scene. Below are examples from a variety of projects to get you started:

So there you have it. Three suggestions to keep in mind for making amazing interactive games and story experiences that people will want to use over and over again. To check out the full list of our recommendations go to the Lessons Learned page.

Thanks for reading! To share your thoughts or questions, join us on Reddit at r/GoogleAssistantDev.

Follow @ActionsOnGoogle on Twitter for more of our team's updates, and tweet using #AoGDevs to share what you’re working on. Can’t wait to see what you build!