I. Introduction▲
Ces cinq dernières années, InnoGames a fait face à un défi de taille : passer d'une stratégie entièrement basée sur le développement de jeux sur navigateur, en PHP, Java, JavaScript et Action Script, à un fonctionnement d'équipes agiles capables de développer sur mobiles avec Unity, l'Unreal Engine 4 et Java. La route a été longue, et la société allemande était persuadée que cette approche cross-platform (mobiles et navigateur) était la première étape logique vers l'acquisition d'une base de joueurs engagée sur mobiles. Ce n'est pas totalement le cas, et InnoGames l'a appris à ses dépens.
L'éditeur et développeur a suivi différentes approches pour parvenir à cette conclusion, et une seule s'est avérée réellement payante. Voilà les chemins qu'elle a empruntés, et les méthodes pour améliorer concrètement l'engagement de sa base de joueurs sur mobiles.
II. Prochain arrêt : le cross-platform▲
La transition a démarré début 2012, lors du lancement de Tribal Wars 2, juste après la sortie de Forge of Empires. Il apparaissait clair que le marché du jeu sur navigateur atteindrait bientôt son apogée, alors que de son côté le mobile continuerait de grimper. InnoGames décide donc logiquement que tous les nouveaux titres cibleraient à la fois navigateurs et supports mobiles (iOS et Android), et qu'ils fonctionneraient de concert tout en offrant exactement les mêmes fonctionnalités.
C'était la toute première incursion d'InnoGames dans le développement pour mobiles, dont l'éditeur ignorait tout ou presque jusqu'alors.
Un certain nombre de nouvelles problématiques, inhérentes à ce nouveau support d'exploitation, émergent d'un tel changement de méthode de production : le jeu doit-il être présenté en mode portrait ou paysage ? Comment doivent s'échelonner les mises à jour compte tenu des processus de validation spécifiques sur Android et iOS ? Est-il possible de réaliser un hotfix sur mobiles ? Comment créer une interface intuitive sur un éventail de plateformes si large ? Comment être mis en avant par Apple et Google ? Où recruter les experts nécessaires ?
Toutes ces questions légitimes se résument en une seule : quelle est la cible à privilégier entre la tablette, le téléphone et le navigateur ? InnoGames opte alors pour quatre approches complètement différentes à la fois, dans l'idée de réduire au minimum le risque d'échec. Dans chacune d'entre elles, des technologies frontend différentes ont été utilisées sur navigateur, iOS ou Android, pour téléphone et tablette, l'objectif étant malgré tout d'obtenir un résultat entièrement cross-platform.
III. Cross-platform : quatre approches différentes, quatre résultats différents▲
Les premiers projets mobiles à voir le jour sont les companion-apps des jeux Grepolis et Guerre Tribale. Il s'agit pour InnoGames de découvrir les spécificités du développement sur mobiles en permettant à son noyau dur de joueurs d'opérer un certain nombre d'actions spécifiques sur leur dispositif mobile, quelle que soit leur localisation géographique. L'idée n'était pas - encore - de proposer l'ensemble des fonctionnalités du jeu, mais de se concentrer sur les tâches que les joueurs doivent fréquemment effectuer. Deux petites équipes de moins de cinq développeurs sont missionnées pour ces projets : Grepolis Mobile est conçu avec Adobe Air tandis que Guerre Tribale est développé à l'aide d'Objective-C pour iOS et Adobe Air pour Android.
Le but est alors de minimiser les risques représentés par ce défi de taille, tout en améliorant la rétention de la base existante grâce à ces nouvelles possibilités. La mission est accomplie, mais n'entraine pas pour autant le transfert des utilisateurs de mobiles vers la version navigateur du jeu.
Tribal Wars 2 est la toute première production entièrement cross-platform, et ce dès le départ. L'objectif est de sortir exactement le même jeu au même moment sur navigateur, tablettes et téléphones Android et iOS. La solution backend choisie, pour gérer l'ensemble des clients, est le PHP, tandis que le client sur navigateur est en JavaScript et l'interface pour mobiles réalisée avec PhoneGap. Tout ne se déroule pas comme prévu. Après six mois de travail, il devient clair que le même niveau de qualité ne peut être atteint avec cette méthode. Le développement des versions pour mobiles passe alors sous Objective-C, tant pour iOS qu'Android. Les deux supports ne pouvant être traités de la même manière, InnoGames se voit contraint de repousser la sortie de son titre d'un an sur les mobiles, et de recruter une dizaine de développeurs supplémentaires pour offrir à chaque support le travail qu'il nécessite. Le retard accumulé n'est pas sans incidence sur la réussite du jeu. La concurrence se fait plus féroce, et le concept a déjà pris un peu la poussière : Tribal Wars 2 est certes une suite importante pour la série, mais il n'a jamais atteint le succès espéré par son créateur sur la durée.
Une autre approche est alors adoptée pour le jeu Rising Generals, annulé depuis : Java pour l'aspect serveur, Adobe Air pour le côté client. En termes d'expérience utilisateur, le choix est fait de se concentrer sur les plateformes mobiles et de laisser la version navigateur au second plan, tandis qu'il est également décidé de privilégier la version téléphone à la version tablette. La difficulté de la tâche est d'élaborer un design assurant une expérience utilisateur parfaite sur téléphone, tout en prenant en compte les spécificités techniques de chaque appareil disponible sur le marché, le tout avec un seul et même code de base. L'équipe en charge du projet est expérimentée sur ActionScript, mais pas nécessairement familière à cette méthode de développement : elle apprendra à la dure que les solutions pérennes aux nouveaux défis technologiques sont trouvées par les experts. Le jeu est repoussé de huit mois, et meurt en bêta ouverte à cause de ses nombreux problèmes techniques.
Suite au travail réalisé sur les companion-apps pour Grepolis et Guerre Tribale, une nouvelle stratégie est décidée pour étendre la base des utilisateurs de Forge of Empires du navigateur vers le mobile. L'objectif est de proposer une version du jeu complète sur mobiles accessible avec un seul et même compte. La version pour mobiles devient alors une porte d'entrée pour les nouveaux joueurs, au même titre que la version navigateur. Les serveurs sont partagés, et l'aspect client est porté d'ActionScript vers Cocos2d, qui gère aussi bien les plateformes iOS qu'Android avec un seul et même code. De l'aide est requise à l'extérieur, dans la mesure où il s'agit du tout premier projet de l'éditeur allemand avec Cocos2d : il s'écoule un an avant l'arrivée d'une première version pour mobiles, ce qui convainc InnoGames d'internaliser le développement de la version nomade du jeu pour sa sortie publique. Le résultat est alors - et est toujours - un très grand succès pour la firme, qui trouve donc sa méthode de production privilégiée pour soutenir sa stratégie cross-platform.
IV. Les cinq enseignements principaux du développement cross-platform▲
- La qualité nécessite de faire des choix ! Il n'est pas possible de créer un jeu cross-platform dès le départ sans sacrifier l'expérience utilisateur sur l'ensemble des supports. Une plateforme principale doit impérativement être choisie. Dans le cas contraire, l'ensemble des supports peut souffrir de tous les compromis qui devront être faits. Développer sur plusieurs supports à la fois complexifie les tâches de chacun des partis impliqués : les programmeurs, mais aussi les game designers, les artistes, les project managers et les product managers auront à gérer de plus gros problèmes au quotidien si l'équipe doit se battre sur tous les fronts en même temps.
- Les experts sont nécessaires ! Développer sur différents supports implique d'énormes challenges techniques, que seuls les experts pourront adresser efficacement.
- Le développement cross-platform est lent et cher ! Le recrutement d'experts prend du temps, et la communication se complexifie à mesure que l'équipe s'étend. Adapter le fonctionnement d'une structure élargie prend du temps, et l'arrivée de nouvelles têtes augmente les chances de devoir revoir des pans techniques et ludiques entiers. Si une arrivée rapide sur le marché est l'objectif, alors le développement cross-platform n'est sans doute pas l'approche à adopter.
- Les companion-apps peuvent améliorer l'indicateur clé de performance (ICP) des jeux ! Les companion-apps modestes sont idéales pour améliorer la rétention d'une base de joueurs existante, mais pas suffisantes pour attirer le public des mobiles. Si l'objectif est de croître sur mobiles, il est nécessaire de faire un jeu mobile complet.
- Réussir un projet cross-platform est possible, mais cela a un coût ! Avec Forge of Empires, InnoGames est parvenu à sortir un jeu mobile à succès. Cette réussite implique de disposer une équipe de plus de quarante personnes travaillant exclusivement pour ce projet. Avant la sortie de la version navigateur, l'équipe était composée d'une douzaine de personnes. L'augmentation du staff était nécessaire pour assurer l'ensemble des fonctionnalités sur mobiles tout en poursuivant la maintenance de la version navigateur. Trouver la bonne organisation d'équipe et le management adéquat prend du temps, et il est compliqué de diriger une seule équipe œuvrant à des rythmes différents sur un seul et même jeu.
V. Choisir la stratégie « une plateforme à la fois » : arrivée à destination▲
Juste après avoir décidé d'arrêter Rising Generals, InnoGames a réalisé un post mortem du projet, et en a partagé les découvertes avec l'ensemble de la société. Malgré l'accent mis sur la version téléphone mobile, le niveau de qualité requis n'a pas été atteint. Trop de compromis ont été faits compte tenu de l'importance indéniable de la version navigateur pour l'équipe. Alors qu'un échec potentiel avait été imaginé avant la sortie en bêta ouverte, InnoGames a poussé pour rendre l'impossible possible. Il est important de considérer la fermeture d'un projet comme quelque chose de positif et précieux : cela doit faire partie de la culture de l'entreprise d'accepter l'échec pour en tirer les conséquences qui l'aideront à réussir à l'avenir.
Sur la base de ce post mortem, mais également de divers éléments découverts au long du chemin, il parait important, pour réussir sur le marché des mobiles…
… d'apprendre ! Plutôt que d'utiliser différentes technologies sur différents jeux, il faut utiliser la même technologie. Partager au maximum ses connaissances réduit la probabilité d'un échec total.
… de se concentrer sur un élément à la fois ! Au lieu de travailler sur différentes plateformes à la fois, il apparait important de choisir un support privilégié et de permettre à l'équipe de se concentrer dessus. Le succès implique de proposer une expérience utilisateur parfaite.
… d'échouer rapidement ! Au lieu de rester dans sa bulle pendant des années à développer son projet, il est plus efficace de centrer son travail sur le joueur. Des play-tests intensifs et réguliers sont la clé de la réussite. L'échec doit également faire partie de la culture d'entreprise.
… d'être réactif et agile ! Plutôt que de diriger 30 à 40 personnes au travers d'une production complexe, il vaut mieux constituer des équipes de 10 à 20 développeurs pour centrer son travail sur le joueur.
… mettre en place des outils puissants ! Plutôt que de forcer les développeurs à intégrer les interfaces utilisateurs et autres assets, il faut s'assurer de disposer d'un pipeline de production efficace. Les content designers seront plus que ravis de pouvoir appliquer les changements par eux-mêmes.
Pour InnoGames, la route fut longue pour réduire les risques lors de la phase de production. L'objectif global était de convertir une partie de sa base utilisateur sur navigateur vers les plateformes mobiles. Cela a complexifié les productions, tant au niveau technique que du design, sans leur permettre d'atteindre le niveau de qualité suffisant. Forge of Empires est le seul projet à répondre parfaitement aux attentes placées en lui, et a donc servi de modèle : InnoGames se concentre désormais sur une seule plateforme, sans spécialement considérer les autres au départ.
Depuis, trois jeux mobiles ont entamé leur phase de production, chacun ayant bénéficié d'un soin tout spécifique pour son expérience utilisateur sans considération pour une éventuelle version navigateur. Plus de 100 idées de jeux ont été abandonnées sur la route, lors de leur phase de conception. Les tests utilisateurs débutent désormais dès la phase de conception, et sont au cœur de la stratégie éditoriale d'InnoGames. Les moteurs Unreal Engine 4 et Unity offrent un panel d'outils idéal pour le travail en équipes réduites d'une vingtaine de personnes maximum, chacune partageant ses ressources et découvertes avec les autres. L'organisation et la communication sont les clés de la réussite.
VI. Posez vos questions à InnoGames▲
Developpez.com vous permet de poser des questions à InnoGames, par exemple, pour avoir plus de précision sur le portage ou sur les technologies et méthodologies utilisées lors de la conception de ses jeux. Pour ce faire, il suffit d'écrire vos questions sur cette discussion du forum. Par la suite, celles-ci seront envoyées à InnoGames.