CrzGames - RCNET (moteur de serveur de jeu)
Moteur serveur C++ orienté UDP, microservices et orchestration
Un moteur serveur modulaire pour les architectures de jeu modernes.
Le besoin client
Contexte
CrzGames avait besoin d’un moteur serveur robuste pour ses jeux multijoueurs et ses services backend.
Problème
Assembler manuellement réseau, sécurité, orchestration et inter-services augmente fortement la complexité opérationnelle.
Objectif
Livrer un socle serveur unique, versionné et industrialisé autour de RCNETCore.
Les enjeux
Garantir des builds reproductibles multi-OS
Fiabiliser la communication UDP, HTTP et inter-services
Intégrer nativement les usages Kubernetes/Agones
La solution proposée
Ce qui a été construit
RCNET en C++17 avec CMake, gestion des dépendances verrouillées et CI/CD automatisée.
Pourquoi ce choix
Le découpage par modules permet de faire évoluer le moteur sans casser les usages des serveurs de jeu.
Comment ça répond au besoin
Setup CMake piloté par dependencies.txt, exemples client/serveur, API publique include/ et documentation versionnée.
Les fonctionnalités clés
Noyau serveur RCNETCore en C++17
Communication UDP via RCENet et HTTP/HTTPS via cpp-httplib
Bus NATS pour communication inter-services
Intégration Agones SDK + gRPC pour orchestration Kubernetes
Pipelines de release avec versioning et changelog automatisés
Les résultats
Base serveur unifiée pour les projets CrzGames
Déploiements plus fiables entre Windows, Linux et macOS
Réduction du coût de maintenance backend long terme
Stack technique
Choix techniques utilisés sur ce projet.
Vous avez un besoin similaire ?
Parlons de votre projet. Je vous aide à transposer cette approche à votre propre contexte.