Ready Player Web

Créer des jeux pour le Web moderne

Tom Greenaway

Les bons développeurs de jeux savent que pour exploiter les opportunités d'une plate-forme particulière, il est important d'adopter ses caractéristiques uniques. Quelles sont les caractéristiques uniques du Web ? Qu'est-ce qui définit un jeu Web ?

Lors de la Google I/O 2019, j'ai présenté mon point de vue sur l'état de l'écosystème des jeux Web, les bonnes pratiques actuelles pour le développement de jeux Web modernes et l'évolution du secteur. Dans cet article de blog, je vais résumer certains des points clés de ma conférence, que vous pouvez regarder en intégralité sur YouTube :

Les défis des jeux Web

Avant de rejoindre Google, j'ai créé un jeu mobile appelé Duet, qui a été téléchargé près de 20 millions de fois. Cette expérience m'a appris que trois ingrédients essentiels sont nécessaires pour créer une entreprise prospère à partir d'un jeu :

  • Un jeu fonctionnel
  • Utilisateurs
  • Un moyen de monétiser les utilisateurs

Sans ces trois éléments, un développeur de jeux ne peut pas réussir. De nos jours, ces deux derniers points sont les plus cruciaux. Les écosystèmes HTML5 fermés tels que WeChat, Facebook Instant Games et d'autres ont démontré qu'il était possible de créer des jeux avec HTML5.

Bonnes pratiques modernes

Par "jeu fonctionnel", j'entends les trois éléments les plus essentiels qui font fonctionner un jeu :

  • Performances
  • Visuels
  • Audio

Dans chacun de ces domaines, la plate-forme Web a fait des progrès significatifs ces dernières années. Pour les performances du processeur, nous avons accès à une nouvelle norme performante appelée WebAssembly. Côté graphisme, WebGL 1.0 est bien compatible avec les différents navigateurs, et les futures normes telles que WebGPU positionnent la plate-forme Web pour un avenir extensible de la programmation graphique semblable à Vulkan et Metal. Enfin, pour l'audio Web, nous avons l'API Web Audio courante et plus récemment l'API Audio Worklet.

Récemment, Unity a présenté en avant-première un nouvel environnement d'exécution appelé Project Tiny, qui est axé sur la création de jeux 2D pour les plates-formes basées sur HTML5. Project Tiny applique une nouvelle conception modulaire à la structure du moteur Unity, ce qui permet de réduire la taille du moteur Unity de base à moins d'un mégaoctet.

Deux chars en combat.
Démonstration des Tanks d'Unity exportée via HTML5.

Sur le plan technique, c'est le moment idéal pour développer des jeux sur le Web.

Entrer dans la boucle

Un bon jeu ne se résume pas à de bonnes performances, des graphismes et un son de qualité. Pour être excellent, un jeu doit être amusant.

L'aspect ludique est un élément difficile à mesurer dans un produit. Lorsqu'un jeu est suffisamment amusant, intéressant ou innovant, les utilisateurs veulent en parler à leurs amis. En d'autres termes, ils veulent partager l'expérience. En exploitant cette opportunité et en l'associant au Web, vous disposez d'une combinaison gagnante qui ouvre de nombreuses opportunités de croissance virale. Sur le Web en particulier, sans plate-forme centrale de découverte, notre meilleur moyen d'acquérir des utilisateurs est de faire en sorte que nos jeux soient aussi viraux que possible.

Les bons développeurs de jeux savent que pour exploiter une plate-forme particulière, que ce soit au niveau logiciel ou matériel, il est important d'exploiter ses caractéristiques uniques. Par exemple, si vous créez un jeu pour une console avec des commandes de mouvement, vous devez probablement réfléchir au meilleur moyen de les intégrer.

En d'autres termes, vous devez respecter les attentes des utilisateurs de la plate-forme pour laquelle vous créez votre application. Quelles sont les attentes des utilisateurs du Web ? Ils s'attendent à ce que le contenu Web se charge rapidement et soit rapidement interactif. Dans ma présentation, j'ai donné plusieurs exemples de façons, sur et hors du Web, dont les jeux ont été conçus pour se charger rapidement, attirer les utilisateurs dans leurs univers de jeu, les engager et les inciter à partager leurs expériences.

Trois jeux avec des styles artistiques minimalistes.

Personnellement, je pense que la clé pour créer un jeu Web réussi est de s'appuyer sur cette caractéristique unique du Web. en particulier la force de la structure URL du Web et la boucle de partage que les utilisateurs peuvent rejoindre.

Voici un exemple de jeu Web que j'ai créé à l'aide de Construct 3. Il exploite l'URL de manière amusante et attrayante.

Interface d'éditeur de niveau pour un jeu.

Space Board est un jeu très simple qui peut se jouer sur mobile avec des commandes tactiles ou sur ordinateur avec un clavier. L'objectif est de parcourir un labyrinthe d'obstacles pour atteindre un objectif à la fin.

Comment Space Board exploite-t-il l'URL de manière unique ? En codant la structure du niveau dans l'URL elle-même. Tous les niveaux sont définis sous la forme d'une grille de 10 par 10 d'objets (par exemple, des murs, des tourelles ennemies, des clés, des portes verrouillées, etc.). L'URL répertorie ensuite toutes les positions individuelles de la grille et leur contenu. Un mur est représenté par le caractère W. Un espace vide est un caractère de soulignement.

Exemple :

https://io-space-board.firebaseapp.com/?gameWorld=_wwwwwwwwww___ww__eww_k__d___ww___ww___ww_wwwww_www_wwwww_www___ww___ww_s_ww_f_ww___ww___wwwwwwwwwwww

C'est moche, mais ça fait le travail.

Une fois qu'il a terminé un niveau dans Space Board, le joueur peut concevoir son propre niveau à l'aide de l'éditeur de niveau simple illustré ci-dessus. En permettant aux joueurs de concevoir leurs propres niveaux, nous leur donnons la possibilité de les personnaliser. Lorsqu'un utilisateur se sent connecté à un jeu et qu'il a le sentiment d'en être le propriétaire grâce à la création et à la personnalisation, il est plus susceptible de vouloir partager cette "chose" avec le monde entier.

Le désir de partager un jeu est le début de la boucle virale que nous souhaitons atteindre avec nos jeux Web. Ce mécanisme de conception et de partage de jeux n'est qu'un exemple parmi d'autres. Je vous invite à regarder ma conférence pour en découvrir d'autres.

de retour sur investissement

À l'heure actuelle, il existe en fin de compte deux notions de pensée concernant la façon dont un développeur de jeux peut générer des revenus grâce aux jeux Web:

  • Monétiser directement les jeux
  • Les considérer comme un canal d'acquisition

Traiter les jeux Web comme un canal d'acquisition signifie exploiter la version Web de votre jeu iOS/Android/ordinateur de bureau comme un mécanisme pour attirer vos joueurs et les convaincre de télécharger votre binaire iOS/Android/ordinateur de bureau plus volumineux. Vous générez ensuite des revenus grâce aux backends de paiement et de facturation intégrés de la plate-forme iOS/Android/ordinateur.

La monétisation est généralement un mélange de publicité et de microtransactions. Le Web doit encore faire des efforts pour rivaliser avec les plates-formes mobiles dans la publicité pour les jeux. Par exemple, les formats tels que les annonces vidéo avec récompense sont extrêmement populaires pour les jeux mobiles depuis plusieurs années, mais les réseaux publicitaires ne les déploient que maintenant sur le Web.

Néanmoins, certains développeurs de jeux continuent de réussir sur le Web ouvert grâce à la publicité via des bannières traditionnelles et des annonces vidéo interstitielles. Pour en savoir plus sur ces formats, consultez AdSense pour les jeux.

Pour les microtransactions, le Web offre une flexibilité totale grâce au nombre illimité de modes de paiement pouvant être implémentés. Toutefois, cette qualité est à double tranchant. L'inconvénient est que les joueurs ont moins confiance implicite envers un nouveau site Web qu'ils découvrent par rapport aux méthodes de paiement des plates-formes mobiles familières.

L'API Payment Request est une solution qui offre une interface utilisateur de paiement plus cohérente sur le Web. Cette API appelle une UI affichée par le navigateur et simplifie l'acquisition des informations de paiement, telles que les cartes de crédit et les adresses de facturation. Toutefois, obtenir les informations de paiement n'est que la première étape d'une transaction. Vous avez également besoin d'une plate-forme de facturation backend.

L'avenir

Ces dernières années, nous avons vu plusieurs jeux Web étonnamment populaires. Slither.io a développé une activité à la fois axée sur le Web et sur les plates-formes, qui démontre l'immense audience et les opportunités de croissance virales offertes par le Web. Des portails tels que Poki.com innovent dans leur expérience utilisateur et lancent de nouveaux jeux chaque jour, y compris des titres qui égalent la fidélité de leurs homologues mobiles, comme Subway Surfers ou Crossy Road.

De plus, si vous regardez au-delà du Web ouvert, vous pouvez constater que les jeux Web décollent déjà. Les écosystèmes fermés tels que WeChat et LINE proposent des jeux satisfaisants qui ne sont pas jouables sur le Web ouvert, mais qui sont basés sur des technologies Web telles que HTML5 et WebViews. C'est un signe clair que le Web a atteint un niveau de fidélité capable de rivaliser avec les jeux mobiles spécifiques à une plate-forme, peut-être pas dans la définition classique de la fidélité, mais dans une métrique plus importante : l'attention des joueurs.