Une carte créée par un joueur n’a pas de niveau « cooked » vers lequel voyager, et sa géométrie est bien trop volumineuse pour être répliquée. Voici comment j’ai réussi à en mettre une sur chaque client dans un projet UE5 publié : stocker chaque pièce sous forme d’identifiant et de transformation, répliquer les octets de sauvegarde en tant que propriété sur un acteur toujours pertinent plutôt que via un RPC, et laisser chaque machine reconstruire le niveau à partir de son propre contenu « cooked ». Le sujet couvre l’en-tête de compression, la limite de taille et quoi faire quand une carte la dépasse, pourquoi un état en attente n’est pas un échec, les deux hachages qui empêchent un client de construire un niveau qui ne correspond pas à l’hôte, ainsi que le piège qui m’a le plus coûté : des pièces laissées mobiles amènent le client à en stocker une comme base de mouvement, que le serveur ne peut pas résoudre, et le joueur se fait tirer en arrière. Du C++ pur et de la réplication du…
https://dev.epicgames.com/community/learning/tutorials/p4Xq6/unreal-engine-envoyer-une-carte-creee-par-un-joueur-a-d-autres-joueurs-sans-envoyer-de-fichier