L’atelier de l’ingénieur : développer pour mobile et PC
La bêta de Shadowlands a commencé, et nous aimerions vous faire découvrir les coulisses du développement de quelques-unes des extraordinaires nouveautés de l’extension. Dans cet épisode de L’atelier de l’ingénieur, nous nous concentrons sur le développement simultané d’une fonctionnalité pour mobile et PC : les aventures, un nouveau système de progression hors ligne pour Shadowlands. Les aventures sont le successeur spirituel des systèmes de missions et de sujets des précédentes extensions ; elles vous permettent d’envoyer des groupes réunissant jusqu’à cinq aventuriers combattre l’ennemi dans des batailles automatisées.
Tout commence par la conception système
Chaque fonctionnalité passe d’abord par l’équipe de conception système ; celle-ci sélectionne plusieurs objectifs et crée une première proposition de fonctionnalité, qui devient ensuite une fonctionnalité jouable. Dans le cas des aventures, nous souhaitions conserver les points positifs des anciens systèmes de missions et de sujets, et améliorer les autres aspects. Nous aimions particulièrement l’idée d’un système qui offre régulièrement des récompenses et objectifs au joueur, permette de progresser même en dehors du jeu, et ouvre de nouvelles possibilités narratives tout en étoffant l’univers du jeu. Nos principales pistes d’amélioration portaient sur le gameplay, que nous voulions rendre plus intéressant, et la résolution des missions, que nous souhaitions rendre plus fluide. Les précédentes itérations du système de missions et de sujets étaient parfois assez simples à résoudre, surtout avec l’aide des add-ons. Par ailleurs, les aventures sont un système intégré au jeu, pas un jeu à part entière. Les nouveaux joueurs doivent pouvoir débuter et réussir sans avoir besoin de guides, mais le système doit comporter assez de complexité pour récompenser ceux qui y consacrent plus de temps. En outre, nous ne voulions pas que ce système de progression hors ligne occupe une trop grande partie du temps d’un joueur installé devant son PC.
À ce stade du développement, le tableur est le meilleur ami des développeurs. Les tableaux permettent aux concepteurs de faire le lien entre idées et données. Grâce à cette vue d’ensemble approximative, l’équipe peut déterminer si une idée fonctionne ou non, appliquer différentes courbes de données pour ajuster l’expérience, la puissance d’attaque ou d’autres éléments, et multiplier rapidement les itérations tant que les essais les plus fous ne coûtent que peu de ressources.
Finalement, nous avons abouti à un modèle de « combats automatiques allégés », dont les combats se déroulent au tour par tour et sont résolus automatiquement. Le joueur place cinq aventuriers sur le plateau en soignant leur positionnement et en tenant compte de leurs capacités individuelles. Si tous les ennemis sont vaincus, vous gagnez et recevez des récompenses. Toutefois, en sélectionnant et en positionnant judicieusement leurs aventuriers, les joueurs les plus efficaces pourront minimiser les dégâts subis par leurs unités pendant le combat afin de les renvoyer plus rapidement à l’aventure.
Mobile : défis et réflexions
Les aventures sont une fonctionnalité parfaite pour l’application WoW Companion, et leur développement simultané sur mobile et PC a donné lieu à une collaboration étroite entre les équipes de conception système et de conception de l’interface, et la naissance d’une vision commune pour l’interface des deux plateformes. L’interface des aventures se devait d’être aussi proche que possible sur PC que sur mobile. Toutefois, l’application WoW Companion a vocation à accompagner l’expérience sur PC ; cette parité ne doit pas se faire au détriment du jeu principal.
Le développement sur PC comporte des défis complexes, comme le rendu d’un monde en 3D sur toutes sortes de matériels et la gestion du nombre de joueurs connectés, mais les plateformes mobiles ont aussi leurs propres particularités. La résolution d’écran et les dimensions peuvent largement varier d’un téléphone à l’autre, et l’interface et l’expérience utilisateur doivent en tenir compte. La consommation de données de l’application doit être minimale pour que nous puissions prendre en charge autant de modèles d’appareils que possible. Le plus grand défi, lorsque nous développons pour cette plateforme, provient du fait que le jeu n’a pas été conçu pour mobile. En 2004, à l’époque de la sortie de World of Warcraft, le téléphone le plus répandu était le Motorola Razr et le jeu mobile le plus populaire était Snake. Il va sans dire que les développeurs de l’époque se souciaient peu de la compatibilité mobile. Même les fonctionnalités les plus simples peuvent nécessiter beaucoup de travail sur PC avant d’être implémentées sur mobile.
Conception technique
Heureusement, dans le cas des aventures, nous avons pu réutiliser la majeure partie du travail réalisé pour les précédentes itérations des missions et sujets ; après tout, il s’agit d’un système où les joueurs choisissent des personnages parmi leur collection et leur attribuent une mission. Nous avons choisi de développer sur PC et mobile de manière simultanée plutôt que séquentielle en raison de leur conception étroitement liée. Développer ces deux facettes en partant de zéro nous a apporté un autre avantage : pouvoir écrire des messages serveur pour prendre explicitement en charge les deux plateformes. Avant de pouvoir intégrer les principaux éléments de l’interface au jeu, nous avons utilisé un logiciel de prototype pour permettre à nos tableaux de s’incarner dans le jeu sous une forme plus interactive et itérative.
Apparence et style
L’un des défis majeurs à résoudre pour les deux plateformes concernait les effets spéciaux utilisés pendant la rediffusion des combats. Nous avons vite découvert que les effets spéciaux étaient essentiels au rythme et à la clarté des combats, en plus d’apporter un côté plus immersif et prégnant à l’expérience. Cela nécessitait toutefois d’innover en matière d’interface, et ce sur les deux plateformes. Même si la plateforme PC disposait déjà d’un solide catalogue d’effets, la technologie existante nécessaire pour afficher ces effets dans les cadres de l’interface n’était pas assez sophistiquée pour l’animation des combats. La plateforme mobile disposait d’un bon système d’animation, mais les effets n’étaient pas optimisés pour une utilisation mobile. Finalement, nous avons décidé de combler les lacunes de chaque plateforme en sachant que ce travail serait réutilisé dans bon nombre de futures fonctionnalités.
Sur mobile, nous savions déjà que le poids de l’application serait un sujet délicat. Ajouter des effets spéciaux pour toute une série d’aventuriers et de combats en plus du contenu existant promettait d’être un défi en termes de mémoire. Au-delà de l’aspect visuel de ces effets, nous sommes également passés de quelques sons pour toute l’application à une multitude de bruitages pour chaque effet de sort. Nous avons consulté les équipes des effets spéciaux de World of Warcraft et Hearthstone pour en tirer quelques leçons que nous avons incorporées à nos processus. Nous avons opté pour un système qui détermine l’effet de sort à utiliser en fonction de l’école de magie et du type d’aventurier, et nous y avons ajouté quelques éléments dont nous parlerons dans un autre article, afin de contribuer à répartir les données.
Test en jeu
Passé un certain point du développement, il est important de prévoir des tests en jeu sans tarder et de manière régulière. Votre jeu aura beau être techniquement parfait, si les joueurs ne le trouvent pas amusant, vous aurez raté votre coup. La situation actuelle, qui oblige les développeurs à travailler à domicile, a représenté un obstacle supplémentaire pour l’équipe mobile : traditionnellement, lors des sessions de test, nous installons une version sur plusieurs appareils mobiles et nous jouons tous ensemble dans une même pièce. Dans le contexte du travail à domicile, nous avions besoin de distribuer des versions mobiles sur les appareils personnels des développeurs de manière fiable et sécurisée, et nous n’avions que quelques semaines pour nous préparer avant de commencer à travailler chez nous pour de bon. Grâce à la collaboration rapide de plusieurs équipes de Blizzard, nous avons pu déployer un système de distribution assez performant pour mettre en place des tests sur mobile. Ce travail a porté ses fruits car outre la coordination des tests, il nous permet de distribuer des versions de l’application aux autres membres de l’équipe de World of Warcraft et ouvre de nouvelles possibilités pour de futures fonctionnalités.
Et la suite ?
Le développement de cette fonctionnalité est encore loin d’être terminé, et nous allons continuer de perfectionner les aventures pendant la bêta de Shadowlands et après. Nous espérons que cette visite de l’envers du décor vous a permis d’en apprendre plus sur les processus, les défis et les solutions propres au développement de fonctionnalités comme les aventures de World of Warcraft. Les tests en interne sont essentiels, mais nos testeurs ne représentent qu’un effectif négligeable par rapport aux nombreux joueurs de World of Warcraft ; si vous avez des commentaires susceptibles de nous aider à améliorer les aventures, faites-nous-en part sur le forum de la bêta de Shadowlands (en anglais). Merci d’être avec nous et à bientôt dans Shadowlands !