このブログはDesigning New Multimodal Games with the Alexa Web APIを翻訳したものです。
Alexa Web API for Gamesは、新しいマルチモーダルエクスペリエンスをプレイヤーに提供するためのツールを備えており、Alexaを使ったゲームの新境地を開きます。既存の音声のみのゲームを強化する場合でも、画面上でのエクスペリエンスを中心とした新しいスキルを作成する場合でも、この記事で紹介するデザインのベストプラクティスに従えば、印象的なゲームエクスペリエンスを備えたスキルを実現できます。
Alexa Presentation Language(APL)での経験から、優れたマルチモーダルエクスペリエンスを実現するためのベストプラクティスが判明しました。このインサイトに基づいてWeb API for Gamesのスキルを設計することで、よりアクセシビリティに優れた、楽しくプレイできるゲームを開発できます。以下に、マルチモーダルなAlexaスキル全般に通じるベストプラクティスをご紹介します。
Alexa Web API対応デバイスでのみプレイ可能なゲームを開発する場合でも、Alexa Web APIを使用して音声限定ゲームを強化する場合でも、Alexaのエクスペリエンスは音声を中心としたものであり、プレイヤーは主に自分の声を使ってゲームをプレイすることを期待しています。つまり、次のことを考慮してゲームをデザインする必要があります。
Alexa Web API for GamesはFire TVとEcho Showデバイスに対応しているため、ユーザーがこれらのデバイスをどのように使用するかを考慮してデザインしてください。多くの場合、ユーザーは1~3m程度離れた場所からFire TVやEcho Showの画面を見ます。
場合によっては、一部のAlexa搭載デバイスでは完全なゲームデザインを実現できないこともあります。Echo Dotなどのスピーカーのみのデバイスや、Echo Spotなどの古いデバイスは、Alexa Web API for Gamesをサポートしていません。Alexa Web API対応デバイスでのみプレイ可能なゲームをデザインする場合、次のベストプラクティスに従ってください。
音声のみのエクスペリエンスについては、画面を使わないAlexaエクスペリエンス向けの音声ファーストスキルまたは音声限定スキルに関するベストプラクティスに従ってください。詳細については、Alexaデザインガイドを参照してください。
Alexa Web API for Gamesは、これまでにないエクスペリエンスをプレイヤーに提供します。そのため、こうした対話のために、ほかにもいくつかデザインの可能性を検討する必要があります。
スキル側を主要部分とするAlexaゲームを制作する場合、ゲームロジックの中核をバックエンドに置くことになります。クラウド側がゲームの主要部分となり、HTML側のエクスペリエンスは単に補助的なものになります。これはAlexa Web API for Gamesを使わずに実践できる唯一のアプローチであるため、以前にAlexaスキルを開発したことがある方なら、このアプローチについてはよくご存知でしょう。 このアプローチの主な利点は、音声のみのエクスペリエンスを構築しやすく、より多くのプレイヤーにゲームを提供できることです。ここでは、スキル側を主要部分とするゲームを開発する際にデザインで考慮すべきことをいくつか紹介します。
HTML側を主要部分とするスキルでは、メインのゲームロジックは、デバイス上で実行されているJavaScriptのウェブアプリケーションで処理されます。これは時間ベースやフレームベースのゲームに最適であり、ウェブ向けのJavaScriptゲームを開発したことがある方ならよくご存知でしょう。この種のエクスペリエンスでは、すべてのAlexa搭載デバイスでゲームの中核部分を利用できるわけではありません。しかし、斬新なゲームをより自由に試せるようになります。音声でのプレイが適していれば、開発済みのJavaScriptゲームを移植してもよいでしょう。
Alexa Web API for Gamesを使用すれば、幅広いデザインを試すことができます。一般的なマルチモーダルスキルに関するデザイン知識の多くは今でも通用しますが、Alexa Web API for Gamesを活用すれば、可能性がさらに広がります。音声ファーストでデザインを行い、ベストプラクティスに従って、アクセシビリティに優れた、楽しくプレイできるゲームを開発しましょう。ウェブオーディオ、マイクインターフェース、拡張スキルセッションAPIを使用すれば、より多くのツールを自由に使えるようになり、斬新で没入感のあるゲームを開発できるようになります。皆さんが開発しているゲームを、ぜひTwitter(@JoeMoCode)で教えてください。