
Plongée approfondie dans le backend des jeux multijoueurs – Counter Strike 2
Counter-Strike 2 (CS2), développé par Valve, représente une évolution significative de la technologie des jeux en ligne. Sorti complètement par surprise le 27 septembre 2023, CS2 est essentiellement une version remastérisée de Counter-Strike: Global Offensive, mais avec des améliorations substantielles en matière de graphismes, de contenu et d'aspects techniques.
Le jeu est construit sur une version mise à jour du moteur Source 2 de Valve, initialement publié en 2015, le successeur du moteur Source d'origine qui a alimenté des classiques tels que Team Fortress et Half Life lui-même.
Bien que le moteur ne soit pas nouveau, il reste l'un des moteurs de jeu les mieux optimisés et les plus joués grâce à la scène compétitive et d'eSport qui s'est construite autour de Counter Strike.
Structure Backend de Counter Strike 2
Counter Strike 2 invite sa base de joueurs à héberger des serveurs dédiés. Les serveurs dédiés sont soit auto-hébergés, soit hébergés sur un réseau tiers, allant des services payants aux options open-source comme Pterodactyl.io. Bien que Valve ait permis aux joueurs d'héberger des serveurs dédiés depuis CS 1.6, une innovation majeure de CS2 est l'ajout de l'exécution de conteneurs Docker, y compris leur communauté construisant un soutien direct. Voici plus de détails :
Intégration des serveurs dédiés : Contrairement à son prédécesseur, CS2 intègre le serveur dédié avec le client de jeu (appid 730), un changement par rapport à la séparation précédente dans CSGO où le client (appid 730) et le serveur dédié (appid 740) étaient distincts. Cette intégration simplifie le processus de gestion des serveurs pour les développeurs et pourrait être une meilleure pratique pour rationaliser les interactions serveur-client dans les jeux. Le revers de la médaille est que l'image du serveur pourrait être alourdie car elle inclut des ressources inutiles que seul le client utilise.
Exigences système et compatibilité : Le jeu nécessite une spécification matérielle et logicielle plus élevée, y compris des systèmes d'exploitation 64 bits et des cartes vidéo compatibles DirectX 11 avec prise en charge du Shader Model 5.0. Cela souligne l'importance pour les développeurs de communiquer clairement les exigences système à leur public et d'assurer la compatibilité avec les systèmes modernes tout en tenant compte du support des anciennes versions.
Il est à noter que CS2 ne prend pas en charge macOS, ce qui reflète une décision stratégique que les développeurs de jeux pourraient être amenés à prendre en fonction de leur public cible et de la faisabilité de la plateforme.
Configuration et personnalisation des serveurs : CS2 permet une gamme de paramètres de ligne de commande et de variables de console (cvars) qui peuvent être utilisées pour configurer et personnaliser les serveurs dédiés. Des paramètres comme -dedicated, -ip, -maxplayers, et -port sont essentiels pour configurer un serveur adapté à des besoins spécifiques. Ce niveau de personnalisation est crucial pour que les développeurs offrent une flexibilité dans l'hébergement de jeux.
Outils et aides pour l'hébergement : Le jeu prend en charge Docker pour l'hébergement de serveurs, permettant des mises à jour automatiques et une gestion simplifiée des serveurs. De plus, des outils comme CS2 Multiserver facilitent l'exécution de plusieurs serveurs de jeu sur une machine, ce qui est particulièrement utile pour l'hébergement de tournois ou d'événements à grande échelle. Ces outils représentent les meilleures pratiques en matière de gestion efficace des serveurs et de scalabilité.
Améliorations techniques : Développé dans le moteur Source 2, CS2 présente des améliorations techniques significatives par rapport à son prédécesseur. Cela inclut des graphismes améliorés et un nouveau contenu, soulignant la nécessité d'une avancée technique continue et d'innovation dans le développement de jeux.
Pour les développeurs de jeux, ces aperçus sur la structure backend de CS2 offrent des leçons précieuses sur l'intégration des serveurs, la clarté des exigences système, la personnalisation des serveurs, l'utilisation d'outils pour l'hébergement, la diversité des modes de jeu, l'amélioration technique continue et l'engagement communautaire. Chacun de ces éléments joue un rôle crucial dans le succès et la durabilité des jeux multijoueurs en ligne.
Cependant, une chose à noter est qu'en permettant aux joueurs d'héberger leurs propres serveurs de jeu, Valve pourrait laisser de l'argent sur la table.
Bien que Valve n'ait probablement pas besoin d'un nouveau flux de revenus, un studio standard (comme Iron Gate avec Valheim) pourrait bénéficier d'un flux de revenus différent en permettant aux joueurs d'héberger leurs propres serveurs de jeu, mais par l'intermédiaire du studio lui-même. Cependant, cette opportunité de revenus est atténuée en raison de la complexité de l'hébergement des serveurs, y compris le défi de mettre en place un service client et des systèmes de paiement.
Un backend automatisé « conteneur en tant que service » permet désormais à ces studios d'intégrer et de revendre un serveur de jeu dédié et privé. Cela permet une meilleure compréhension et une analyse des comportements des joueurs et génère des revenus dans un domaine de leur entreprise généralement considéré comme un centre de coûts (hébergement de serveurs de jeu). Avec la nouvelle réglementation permettant aux studios de vendre en dehors du marché d'applications standard, ils peuvent gagner encore plus d'argent.
La technologie backend propriétaire derrière Counter Strike 2 peut ne pas être disponible pour tous les studios de jeux, car tout le monde n'a pas le soutien de Valve, c'est pourquoi les développeurs indie et les studios de jeux se tournent vers de nouvelles plateformes pour obtenir de l'aide.
Edgegap est une plateforme d'orchestration automatisée de serveurs de jeux et distribuée qui apporte la meilleure réduction de latence au monde à tous les développeurs de jeux.
Explorez ses avantages en sélectionnant votre moteur de jeu ou votre Netcode de choix :
Écrit par
l'équipe Edgegap
