Il est actif ce sujet !
Citation:
Quelles sont les avantages à décentraliser un jeu en ligne ?
Gain de BP (déjà dit et déjà contestés), mais il n'y pas que les logiques de jeux qui transitent, les images des joueurs, les voix, les vérifications de sécurité, les listes de tables, .... (mais il ne faut pas oublier qu'on ne parle pas spécifiquement d'un jeu de poker).
Gain sur la puissance de calcul. A ne pas avoir a gérer des centaines de connexions ni des centaines de calculs inhérents au jeu, le processeur est saturé bien moins rapidement.
L'infrastructure n'est plus un problème à gérer, n'importe quel serveur tiendra la charge, qu'importe le nombre de connectés (dans la mesure du raisonnable)
En cas de micro-coupure, les contrôleurs maitres "survivent" quelques temps en autonomie en attendant le retour du serveur. En cas de reboot du serveur, tout le monde n'est pas déconnectés.
Plus il y a de monde, plus il y a de puissance et de BP dispo, aucune limite matérielle théorique (on peux donc imaginer plus de traitement et plus de transit de données).
C'est vachement plus sympa comme défi technique !
Citation:
J'ai du mal a voir dans un jeu de poker ce qui pourrait prendre plus de 100 octets du serveur vers un client , et dans ce cas la mémoire et le processeur du serveur vont lâcher bien avant la saturation de la connexion de 200 Mbps.
Effectivement, mais on ne parle pas spécifiquement d'un jeu de poker, mais dans le cas présent, le but était surtout d'héberger le maximum avec le minimum !
On gère pour le poker, le chat, les voix, les images persos, les contrôles de sécurité, les routines de jeux, ... On arrive vite a quelque chose de conséquent (bien moins que n'importe quel autre jeu, mais lorsqu'on multiplie ne serait-ce que par 500 connectés , le processeur mouline ! Pas la BP je te l'accorde !)
Il est par exemple possible d'héberger près 200 personnes sur une simple ligne ADSL grâce à la décentralisation.
Reste à voir l'intégration pour d'autres jeux, ou le contenu diffusé est plus important !
Je m'amuse actuellement à l’intégrer et à tester les contraintes inhérentes aux FPS.
Pour exemple, actuellement (Poker):
Celeron d1.6Ghz => 500 Joueurs en pic (15% UC environ/ utilise moins de 280 Mo Ram / 11Mbit/s en pic)
Il est possible de limiter encore l'utilisation de bande passante (via différents reglagles) pour essayer d'héberger à la maison.
Citation:
Et vu le prix de la location d'un serveur qui est devenu relativement faible, on peut toujours clusteriser sans que cela coûte des sommes folles.
C’est vrai :)
Citation:
Multi valider les messages clients par divers contrôleurs maître. Avoir un contrôleur pirate est beaucoup plus facile à réaliser qu'en avoir 2 qui valide en simultané une partie sur laquelle tu joues.
Déjà implémenté de cette façon mais de façon aléatoire. Mais c’est quasiment toujours le cas
Citation:
Faire en sorte que toutes les sommes soient majorées (et minorées) côté serveur. En gros, si un contrôleur maître signale qu'un joueur à gagné 1 million d'euro, vérifier que c'est possible en comparant la somme gagnée à la somme de toutes les mises initiales. Ca permet, en cas de piratage, de limiter un peu la casse.
Se fait lors de la verification des règles de jeux.
Avec 11000 jetons a la table il faut qu’a chaque fois qu’il y a une sortie tout soit bon, sinon le contrôleur refait les comptes en demandant l'historique à tout les clients, pour revalider les paquet.