Star Citizen Live : Tech Talk avec Benoit Beausejour

Star Citizen Live

Dans ce Tech Talk du 11 septembre 2025 de presque 3 heures, nous plongeons dans les coulisses du développement de Star Citizen avec une session spéciale de Star Citizen Live, animée par Jared Huckaby et Benoît Beauséjour, Chief Technology Officer de Cloud Imperium Games.

Cette discussion fait suite à l'épisode Star Citizen Live : Vers un Univers plus Stable de février, revenant sur les changements fondamentaux dans l'approche et l'orientation du développement à la suite de la Lettre du Président de décembre 2024 de Chris Roberts sur la nécessité de stabiliser le jeu (Sans oublier le drama sur le fait que CIG s'obstinait à proposer du "contenu" sur une base trop instable).

Benoît Beauséjour, qui supervise tous les aspects techniques, des ingénieurs gameplay aux ingénieurs graphiques et IA, nous offre des perspectives précieuses sur les progrès réalisés et les défis relevés par les équipes de développement de Star Citizen.

Star Citizen Live: Tech Talk with Benoit Beausejour

A noter que la vidéo totalise 3 heures de temps, ce qui est probablement un record si on fait abstraction d'une vidéo de 10 heures publiée lors d'un trigerfish...

Même si Jared nous encourage à visionner la vidéo plutôt que de se contenter d'un résumer IA sur reddit, il faut quand même avoir du courage pour aller au bout de cette dernière. D'autant plus qu'elle comporte de grosses longueurs. Bravo à ceux qui la visionneront en totalité. Pour les non anglophones qui ont la volonté de visionner ladite vidéo, je vous recommande la traduction de Gaunt Slayer, qui a eu le courage de la traduire en totalité. Pour le moins courageux, vous retrouverez ci-dessous un résumer des principaux points abordés.


2025
Année de la Jouabilité & Changements Organisationnels

L'année en cours est souvent appelée l'année de la jouabilité, une désignation qui découle de la lettre du président de fin 2024 axée sur la jouabilité pour 2025. Cette approche marque un changement significatif après une décennie de développement "axé sur les fonctionnalités", où l'accent était mis sur la construction des fondations du jeu et l'introduction constante de nouveautés.

Désormais, l'objectif est de prendre du recul par rapport au travail sur de nouvelles fonctionnalités pour se concentrer sur la solidification, la correction et la résolution des problèmes de longue date, une transition en partie nécessaire en vue de la sortie de Squadron 42 dont l'intention est toujours prévue pour 2026.


Il y a un an, le jeu tournait sur un système à serveur unique (DGS) limitant à environ 100 le nombre de joueurs par "shard", avec un seul système stellaire et des performances serveur médiocres, souvent autour de 4 à 5 images par seconde (FPS), et des problèmes récurrents tels que la "30k".

Aujourd'hui, la situation est "beaucoup mieux".

Le déploiement de la version 4.0 a introduit le maillage de serveurs statique (Static Server Meshing), un élément crucial pour libérer la performance serveur. Actuellement, le FPS serveur moyen est de 20, et le jeu peut désormais accueillir entre 600 et 800 joueurs par shard.

Cette augmentation de la stabilité et de la performance a eu un impact direct sur l'expérience des joueurs : la durée des sessions de jeu a été multipliée par dix, signifiant que les joueurs restent connectés beaucoup plus longtemps. Bien que des zones spécifiques nécessitent encore des améliorations, les problèmes majeurs qui empêchaient les joueurs de se connecter ou de rester en ligne ont été considérablement réduits.

Pour réaliser ces avancées, des changements organisationnels majeurs ont été mis en oeuvre :

Les Escouades de Héros, ou "Hero Squads"

Ce concept, étendu depuis janvier, consiste à dédier des équipes de ressources à la résolution de bugs spécifiques pour un système donné, comme le système de transit.

La méthodologie a changé : les équipes QA (Assurance Qualité) dirigent désormais les priorités, se basant sur l'impact des bugs sur les joueurs. L'objectif est de réduire les "régressions" (l'introduction de nouveaux bugs en corrigeant d'anciens) en ralentissant le processus de correction pour une validation plus approfondie.

Le Feu Vert Intégré, ou "Embedded Green Light"

Des testeurs QA sont désormais intégrés directement aux équipes de développement et ont le pouvoir de "refuser" toute modification avant sa soumission. Ce changement culturel vise à garantir la vérification et à réduire le taux de régressions ou d'effets secondaires, historiquement très élevé.

Les Initiatives dites d'Hygiène, ou "Hygiene Initiatives"

Il s'agit d'un ensemble d'initiatives visant à nettoyer les logs d'erreurs, les avertissements et les asserts dans le moteur de jeu et le DataCore (base de données du jeu). L'objectif est de rendre les messages d'erreur plus pertinents, afin que les développeurs ne soient pas submergés par un "bruit" constant et puissent se concentrer sur les véritables problèmes.

Les Scores de Stabilité Internes, ou "Internal Stability Scores"

Un indicateur interne, bien que parfois qualifié d'alchimie, évalue la stabilité de chaque build déployé. Ce score, calculé automatiquement à partir de données sur les déconnexions, la durée d'exécution du build et la concurrence, est classé sur une échelle allant d'optimal à "critiquement instable".

Par exemple, la version 3.2.x était souvent considérée comme "instable", tandis que la 4.3.0 se situe entre "optimal" et "excellent". Ces scores aident à décider si un build peut être mis en ligne, en visant toujours une amélioration par rapport à la version live.

Le Rythme de Publication et la Stabilité Interne

Le rythme de publication a considérablement accéléré, avec huit ou neuf patchs cette année, contre trois ou quatre auparavant. Pour soutenir ce rythme tout en maintenant la stabilité, une nouvelle stratégie de "branching" a été adoptée : les patchs sont désormais basés sur un flux "SC Patch" qui reçoit très peu de mises à jour technologiques majeures du moteur ou des outils, stabilisant ainsi le travail des équipes de contenu.


Maillage des Serveurs
Server Meshing

Le maillage des serveurs statique, lancé fin de l'année dernière, est en opération depuis 7 à 9 mois. Ce système distribue les zones clés de l'univers (objets conteneurs de haut niveau) sur différents serveurs de ressources, avec actuellement 10 serveurs de jeu par "shard". Les transitions entre zones sont fluides, même si le joueur passe d'un serveur à un autre.

L'équipe apprend constamment à distribuer la charge de simulation, et la configuration du maillage a été ajustée à chaque patch pour optimiser les performances lors d'événements ou dans des zones à forte affluence.

Le serveur "hybrid", le composant réseau auquel les joueurs sont connectés, est au coeur de ce système et sa stabilité est primordiale. Des améliorations de performance significatives ont été apportées pour réduire le "rubber banding" et la désynchronisation.

L'équipe a également beaucoup appris sur le "coût" des emplacements en termes de puissance de calcul nécessaire, en tenant compte du nombre de joueurs, des IA et des vaisseaux présents.

La prochaine étape est le maillage de serveurs dynamique, ou "Dynamic Server Meshing" (DSM).

Le DSM permettra une subdivision arbitraire de l'univers, où un serveur pourra prendre l'autorité sur n'importe quel "groupe de streaming", n'étant plus lié aux limites territoriales prédéfinies. Ce travail est étroitement lié au développement de l'instancing, permettant des zones superposées (comme les hangars) et leur distribution dynamique à travers le maillage. L'objectif principal est de distribuer automatiquement la charge de travail du calcul.

L'approche de CIG en matière de maillage de serveurs diffère de celle des autres jeux.

CIG a séparé la simulation du jeu de la réplication réseau dans le serveur "hybrid", les joueurs sont connectés au "hybrid", qui gère la synchronisation et la réplication de l'état du jeu, tandis que les serveurs de jeu agissent comme des "clients avec autorité".

De plus, la séparation de l'espace se fait en 3D et selon une structure arborescente, et non sur une simple grille. Cela permet des transitions fluides et la persistance des actions (comme les tirs) à travers les limites de serveurs.

Les étapes futures du DSM incluront le déploiement progressif de fonctionnalités, comme la capacité à faire disparaître dynamiquement des serveurs dans des zones inactives.


Tech Preview

La Tech Preview (TP) est un outil essentiel pour valider les hypothèses clés et isoler les tests de nouvelles technologies.

La TP actuel contient environ huit à neuf mois de changements graphiques, incluant de nombreuses optimisations Vulkan, ainsi que des mises à jour majeures de l'éditeur et du système de "scripting" de missions, désormais appelé StarScript (anciennement Subsumption). Cette TP est cruciale pour tester ces changements avec un large éventail de configurations matérielles avant qu'ils ne deviennent la nouvelle base pour les patchs.

La prochaine TP majeure se concentrera sur le gameplay ingénierie, avec une intention "désespérée" de le sortir avant la fin de l'année.

CIG encourage les joueurs à participer aux PTU et aux Tech Previews, car la participation a diminué avec l'amélioration de la stabilité de la version live, rendant plus difficile la collecte de données de test.

A noter que CIG cherche un moyen de motiver les joueurs à participer aux Tech Preview et/ou PTU, mais la publication mensuelle des mises à jour n'aide pas car cela revient à demander aux joueurs d'aller sur le PTU alors qu'ils n'ont pas toujours le temps de terminer les évènements en cours. Sans oublier le manque de motivation de participer au PTU, Benoit à évoqué un système de récompense, mais il n'aime pas cette idée.


Éléments Majeurs du Jeu

Plusieurs problèmes de longue date ont reçu une attention particulière :

Les Ascenseurs de Fret (Freight Elevators)

Un point de friction majeur. L'équipe a identifié des problèmes d'obstruction (souvent par de petits objets comme des stylos médicaux ou des entités détruites mais toujours présentes), de désynchronisation entre le kiosque et la plateforme, et d'interface utilisateur.

Les solutions incluent l'amélioration des vérifications d'obstruction, la correction des "bounds" (limites physiques) des objets, l'introduction de mécanismes d'auto-guérison (le système retente automatiquement la connexion des composants), et une meilleure gestion des erreurs.

La leçon principale a été la nécessité de tests multijoueurs beaucoup plus poussés en amont.

Le Nettoyage d'Entités (Entity Cleanup)

Pour gérer les épaves, les débris et les véhicules abandonnés, un système unifié a été mis en place.

Il comprend des classes de densité pour les objets dynamiques (définissant combien d'objets d'un certain type peuvent exister dans un volume donné), des durées de vie pour les objets destinés à disparaître, et un système de "pink slip" pour les vaisseaux en "intersection profonde" qui sont supprimés après être devenus "roses".

Ces valeurs sont constamment ajustées par région pour trouver le "sweet spot" entre la performance et l'expérience de jeu.

La Gestion du Spawn des PNJ (NPC Spawn Management)

Le problème de l'over-spawn d'IA est récurrent et souvent dû à une double initialisation des modules de mission ou à des limites mal configurées.

Un nouveau système de gestion de population est en cours de développement pour remplacer les systèmes actuels, qui saura exactement combien de PNJ sont nécessaires dans le monde du jeu.

De plus, des outils de débogage améliorés aident désormais les concepteurs à identifier et résoudre ces problèmes plus tôt.

Les Balises (Beacons) et l'Interdiction

Le maillage de serveurs a posé des défis pour l'interdiction et le fonctionnement des balises, notamment les marqueurs manquants entre systèmes stellaires.

Un nouveau service, l'Entity Cluster Service, a été créé pour fournir une vue symbolique du monde du jeu à travers les serveurs, permettant une coordination cross-serveur pour l'interdiction et, à terme, des balises fonctionnelles entre les systèmes stellaires.

L'équipe a l'intention de réactiver les balises médicales.

Le Système de Transit (Transit System)

Ce système (trains, ascenseurs, transports de base) a été une source de frustration.

Grâce à une escouade de héros dédiée et l'introduction de techniques d'auto-guérison, l'état actuel est jugé "acceptable" : les carriages ne sont plus perdus (ou sont auto-réparés), les destinations fonctionnent pour la plupart, et les problèmes de désynchronisation sont moins fréquents.

Cependant, l'équipe se tourne vers une réécriture complète du "système de transport" avec une approche plus robuste aux problèmes de streaming. Ce nouveau système est déjà fonctionnel en interne pour les hubs de New Babbage et est en cours d'adaptation pour gérer les "instances" et les trains.

Le Contrôle du Trafic Aérien (ATC)

L'ATC est responsable des files d'attente d'atterrissage, de l'attribution des aires d'atterrissage et de la gestion des instances de hangar.

Bien que non prioritaire cette année, des plans sont en cours pour scinder ses responsabilités, notamment en introduisant un "gestionnaire de hangar" pour prendre le relais une fois le joueur dans son hangar, résolvant ainsi les problèmes liés à l'ancien système.

Persistance à Long Terme (LTP)

La persistance à long terme des objets acquis en jeu est une préoccupation majeure pour la communauté.

Il existe une distinction fondamentale entre les objets achetés avec de l'argent réel sur la plateforme web et les objets acquis en jeu.

Les premiers sont gérés par des "entitlements" (droits de propriété) stockés dans une base de données externe, garantissant qu'ils sont toujours disponibles après un "wipe" ou une mise à jour. Le système est robuste et fiable.

Pour les objets acquis en jeu (vaisseaux achetés avec des crédits du jeu, récompenses de mission, etc.), la LTP fonctionne différemment.

Lorsque vous "rangez" un objet dans un inventaire que vous possédez, le système crée des enregistrements LTP qui sont stockés dans une autre base de données, censée persister entre les patchs. Cependant, ce système est très fragile. De nombreux bugs peuvent empêcher la création correcte de l'enregistrement LTP, ou le faire enregistrer comme un composant au lieu de l'objet entier. De plus, lorsqu'un vaisseau est "sorti" pour être utilisé, il est supprimé de la base de données LTP et ajouté à la base de données du shard de jeu en direct. Si le vaisseau est détruit ou abandonné sans être "réclamé" (claim) ou "rangé" avant un patch, l'enregistrement LTP ne sera pas recréé, entraînant la perte de l'objet.

Une nouvelle solution est en développement pour les acquisitions en jeu.

L'objectif est de créer un enregistrement d'entitlement (similaire à ceux des achats web) pour tout vaisseau acheté ou gagné légitimement en jeu. Cela garantirait que, quel que soit ce qui arrive au vaisseau en jeu, il serait toujours disponible après un patch, avec la même stabilité et fiabilité que les objets achetés via la plateforme web.

Des mesures d'atténuation sont également envisagées pour réduire les pertes de vaisseaux en attendant le déploiement de cette fonctionnalité.

Enfin, il n'est actuellement pas possible de persister l'intégralité de l'état du jeu entre les patchs car la structure et les paramètres des entités changent constamment, ce qui rendrait la migration des données extrêmement complexe sans les outils de versionnage adéquats.


Sujets Divers

Cloud Imperium Games Montreal

La partie "jeu" de Turbulent a été renommée Cloud Imperium Games Montreal. Cette unification vise à clarifier la marque, faciliter le recrutement et tirer parti des talents de la ville. L'intégration s'est très bien passée, favorisant une collaboration transatlantique fructueuse.

Le bug surprise du Wolf

Lors du déploiement de la version 4.3 de Star Citizen, juste avant son lancement public, l'équipe a voulu réserver une surprise avec l'introduction d'un nouveau vaisseau, le "Wolf", en ne le mettant sur le PTU (Public Test Universe) qu'au dernier moment. Cependant, 24 heures seulement avant la sortie, des rapports étranges ont commencé à affluer du PTU. Les joueurs décrivaient une situation incroyable : après être descendus de leur Wolf, si un ami s'envolait avec le vaisseau, le monde entier disparaissait autour d'eux.

Ce qui ressemblait initialement à un bug anodin s'est rapidement avéré être un problème de désynchronisation complexe. Tandis que le client du joueur affichait son personnage marchant normalement sur la planète, le serveur le voyait toujours attaché au vaisseau, flottant en animation EVA (Activité Extra-Véhiculaire), sans gravité. Ce comportement était dû à une combinaison de plusieurs facteurs : de nouvelles animations d'entrée et de sortie spécifiques au Wolf, une grille physique du vaisseau mal configurée, une absence de gravité dans le vaisseau et une simulation des personnages par le serveur à une résolution inférieure, le tout avec une part d'aléatoire puisque la génération du bug n'avait rien de systématique.

L'équipe a dû se lancer dans un dépannage intense, impliquant de nombreuses itérations de correctifs et une analyse profonde du moteur. Finalement, c'est l'ingénieur Mark Abent, surnommé le "bug smasher", qui a mis le doigt sur le problème de gravité. Après plusieurs tentatives de correction, la validation a été un moment mémorable, avec une centaine de joueurs mobilisés sur le PTU, entrant et sortant du Wolf à répétition sur Hurston pour s'assurer que le problème était définitivement réglé.

CitizenCon Direct

Il a été confirmé qu'il n'y aura aucune présence de Squadron 42 cette année pendant l'événement CitizenCon Direct du 11 octobre. Cette décision permet à l'équipe de Squadron 42 de rester entièrement concentrée sur le développement du jeu, dans l'optique de la date de sortie ciblée pour 2026.

L'événement se concentrera sur le travail de l'équipe de Star Citizen et ses plans pour l'année de développement à venir, dans un format plus court et plus ciblé.


Notes et Références