Dans l'ensemble, la partie "propagation du code serveur" est quand même peu pertinente : Ce qu'on veut, c'est pouvoir obtenir les message que renvoie le serveur au client. Le truc, c'est que ces messages sont déjà générés au cours de la partie. Il suffit alors de conserver les messages reçus par le client au cours de la partie pour reconstituer les informations auxquelles un compte a accès. Logiquement, ces informations sont similaires pour tous les joueurs d'une même équipe (puisqu'on sait tout ce que nos alliés font). Le soucis devient alors de transférer les donnés qu'ont reçu les joueurs ennemis.
Alors comme j'ai expliqué au dessus les informations ne sont pas les mêmes pour tous les joueurs. Quand tu as du lag ou des packets perdu le jeu ne freeze pas pour les 9 autres personnes comme sur SC2 (Car la tu attends les infos des autres). Tu lag bah tu verra à la fin de ton lag les gens se TP/Courir vite pour rattraper ton retard.
Observons les modes de transfert différents :
-Soit on s'autorise le P2P entre joueurs, et alors il est très simple de partager les infos en fin de partie pour constituer le replay sans surcharger le serveur (les joueurs adverses s'échangent les données manquantes). Cela pose cependant des problèmes de sécurité évidents vis-à-vis des joueurs (on pourrait utiliser ses paquets comme vecteurs d'infection). Globalement, c'est la solution la plus efficace mais aussi la moins sûre.
D'une manière générale les jeux p2p fonctionne sur de la simu synchro, et contrairement à ce que l'on crois c'est très sécurisé, les seuls cheat possible sont en gros le maphack et le disco hack. Le gros problème viens du fait que tu dois attendre le joueur le plus long pour ton tour réseau, une personne qui lag fait lag tous les autres. Gros problème de DoW2 si certains on joué.
-Soit on stocke les logs sur le serveur et on broadcaste les messages aux équipes adverses en fin de partie (problème : coûte cher en mémoire et pics d'utilisation de la bande passante en fin de partie).
Alors ça c'est possible mais il faut que le client soit capable de lire de tels logs et donc d'émuler un serveur en local à peu de chose pret. Et comme dit plus haut ça dévoilerai une partie du code serveur qui pourrait être utilisé par des gens mal intentionné pour développer des hacks. (Dans les C/S on peut avoir des ThuneHack, des speedhack, des InvincibilityHack etc etc)
-Soit on envoie toutes les informations aux deux équipes en continu (en gros, vous recevez également les paquets dédiés à vos adversaires). On pourrait penser que cela crée une ouverture pour les tricheurs, mais en fait il est assez simple de chiffrer les données et de communiquer une clé aux équipes en début de partie pour analyser leurs données. Il suffit de transférer la clé de l'équipe adverse en fin de partie pour pouvoir constituer le replay complet de la partie, puisqu'on dispose alors de tous les logs reçus par le client. Les surcoûts de temps de calcul induits par le chiffrage/déchiffrage des messages en cours de partie devraient être assez bas en utilisant des algorithmes de crypto modernes (par exemple, ceux basés sur les courbes élliptiques).
Cette solution est tout à fait envisageable mais elle pose le même problème qu'au dessus.
Une fois qu'on a résolu les problèmes de collection des logs, il faut résoudre le problème majeur : la gestion des patches. C'est le plus gros soucis, puisqu'il faut maintenir une rétro-compatibilité du client de manière à pouvlir lire des vieux replays sans utiliser les modifications des patches les plus récents.
Alors ce problème n'en est presque pas un en fait. Encore une fois c'est un soucis dans les jeux en simu synchro mais ce n'est pas un problème en client serveur ou presque.
J'y connais rien à tout ces trucs techniques, mais pour prendre un jeu plus proche de LoL, HoN y'a des replays depuis la beta, alors j'vois pas pourquoi ça pose tant de problème sur LoL.
Oui HON est le plus proche de LOL car c'est aussi du C/S, je n'ai jamais joué donc je peux difficilement en déduire les technos associés, mais je viens de DL un replay pour voir. Il fait 10mega compressé donc y'a de grande chance que se soit une version serveur émulée en locale les replay de HON.
Le problème c'est que si ça n'a pas été prévu à la base le portage en local du serveur peut être problématique. C'est une erreur de GameDesign de ne pas y avoir pensé plus tôt, et j'imagine déjà les prog réseaux dire, "Je vous l'avais bien dit que si on y pensait pas des le début ça serait la merde à implémenter plus tard", problème auquel je suis confronté tous les 2 mois
PS: C'est un bon pavé que j'ai écrit contenant pas mal de technique, je m'en excuse pour tous ceux que ça n’intéresse pas.
PS2: Tecumseh, je donne des cours d'implémentation de replay en simu ou c/s pour arrondir mes fins de mois donc que Riot n'hésite pas à faire appel à moi

(C'est une boutade bien évidemment)