FR EN ES PT
La fusion de serveurs fusionnés. Une chimère longtemps inatteignable devenue aujourd'hui possible ... Cet article a pour but de vous présenter toutes les étapes qu'il a fallu franchir pour arriver à la fusion des serveurs d'octobre (spoiler : le mot « serveur » va être très souvent utilisé dans cet article).

Comment fonctionnent les fusions de serveurs chez DOFUS ?

Pour résumer, lorsque l'on fusionne des serveurs, on ne déplace pas réellement le personnage de l'ancien vers le nouveau serveur. On indique uniquement une liaison entre les 2 serveurs. Pour prendre un exemple, lors de la fusion des serveurs monocomptes vers Ilyzaelle, on a indiqué au serveur que le serveur Dramak était devenu le serveur Ilyzaelle. C'est lors de la première connexion du joueur sur Ilyzaelle que le serveur comprenait que le personnage était sur Dramak et qu'il devait le déplacer sur Ilyzaelle. 

Quel était le problème ?

Le système mis en place ne permet pas d'instaurer une liaison d'une liaison. Pour reprendre le cas d'Ilyzaelle : si nous voulions fusionner ce serveur, nous indiquerions la liaison entre Ilyzaelle et le nouveau serveur. Cependant, pour tous les personnages qui sont encore sur Dramak (qui ne se sont donc jamais reconnectés depuis la fusion d'Ilyzaelle en 2017), au moment où le joueur se connecterait après la deuxième fusion, le serveur irait chercher son personnage sur Ilyzaelle. Il n'en trouverait cependant aucun, car son personnage serait encore sur Dramak.

Comment régler le problème ?

Les modifications techniques se sont décomposées en 2 parties : 

  • La migration des personnages : comme expliqué juste au-dessus, il n'est pas possible d'établir une liaison de liaison. Au lieu de rendre cela possible, nous avons choisi une autre approche : forcer la migration des personnages. L'objectif est de ne pas attendre que le joueur se reconnecte pour migrer son personnage de l'ancien vers le nouveau serveur. Cela demande cependant une force de calcul au serveur pour migrer toutes les données des personnages (ses inventaires, équipements, caractéristiques, succès, maisons, enclos, banques, quêtes, etc.). C'est une tâche qui ne peut pas être réalisée d'une traite. C'est pourquoi nous avons trouvé le moyen de forcer ces migrations avec une petite partie de la force de calcul du serveur, en même temps que vous jouez sur ces serveurs.Pour donner un ordre de grandeur, pour les serveurs Echo, Rubilax, Atcham et Crocabulia, cela représente 11.8 millions de personnages à migrer. Ces migrations ont été réalisées durant les mois d'août et de septembre. Pour optimiser ce processus, nous avons réalisé une deuxième modification technique avant cela.
  • Suppression des comptes archivés : il existe un certain nombre de comptes archivés dans les bases de données de comptes (très majoritairement des comptes bannis pour utilisation de bots). Le problème est que les données des personnages de ces comptes archivés n'étaient pas forcément supprimées des serveurs de jeu. Ces derniers se retrouvent donc avec une liste de comptes très conséquente dont une partie est « inutile ». Pour éviter d'avoir à migrer tous ces comptes archivés, nous avons supprimé toutes les données associées. Pour vous donner un ordre de grandeur, pour les serveurs Echo, Rubilax, Atcham et Crocabulia, cela représente 8,78 millions de comptes supprimés.

Ces deux chantiers techniques nous permettent ainsi d'avoir des serveurs qui n'ont plus aucune liaison avec d'anciens serveurs et qui sont donc prêts à être fusionnés.

Nous tenons à préciser que toutes ces explications ont été grandement simplifiées pour faciliter leur compréhension. Même si la solution semble simple et évidente à la lecture de cet article, il faut bien comprendre que les contraintes techniques sont très fortes sur un projet de 18 ans. Ceci n'aurait jamais été possible il y a encore un an. Un grand bravo à l'équipe de développeurs des serveurs pour cela !

Comment cela va se passer ?

Les fusions des serveurs se dérouleront en 3 parties : nous commençons le 11 octobre avec une seule fusion, celle de Echo, Crocabulia, Atcham, et Rubilax. Cette fusion sera une première étape importante, car c'est la première fusion d'une part, et la fusion avec le plus de serveurs d'autre part : 4 serveurs fusionnés dont Echo qui n'a pas moins de 10 liaisons avec d'anciens serveurs.

Deux autres fusions sont prévues le 25 octobre. Là encore, et si tout se passe bien, nous faisons les trois dernières fusions le 2 novembre. Ce planning a été pensé pour pouvoir anticiper tout problème sans que cela ne vienne empiéter sur la mise à jour de décembre.

Les choix de ces fusions ?

La décision de faire ces fusions est multiple :

  • Les populations sur les serveurs sont très différentes, ce qui crée des inégalités dans l'économie, l'accès aux ressources et nous freine pour équilibrer ces aspects.
  • Maintenir 16 serveurs est plus coûteux et plus difficile que d'en maintenir 7 et les maintenances hebdomadaires en sont rallongées.
  • Certains serveurs peu peuplés (en particulier les serveurs internationaux) demandent ces fusions depuis très longtemps, afin de faciliter les rencontres et le jeu en groupe.
  • Les contraintes techniques présentées ci-dessus ont longtemps été bloquantes. De nouvelles idées, des évolutions des technologies et des chantiers techniques de fond lancés ces dernières années ont permis de rendre cela possible. L'occasion était donc idéale pour procéder à ces fusions.

En terme de population, l'objectif était d'avoir des serveurs avec environ le même nombre de joueurs en simultané que Ilyzaelle peut en avoir aujourd'hui. Concernant Agride, bien que l'économie soit relativement différente de celles des autres serveurs multicomptes, il a été décidé de le fusionner à un autre serveur, car sa population allait être en dessous de celle des autres serveurs, et pour retirer toute spécificité de serveurs.

Après ces fusions, cela fera un total de 7 serveurs (1 serveur monocompte, 1 serveur international, 4 serveurs multicomptes et 1 serveur épique)​. Ceci conclut cet article de présentation de la fusion des serveurs. Merci aux courageux qui ont tout lu. Nous espérons avoir réussi à vous expliquer toutes les étapes qui ont précédé ces fusions. En espérant que ces dernières soient synonymes de nouvelles rencontres et d'opportunités (et pas que économiques) pour tous !
Bon jeu.

Catégorie: Developpement