• # Un sujet passionnant

    Posté par (site web personnel) . En réponse au journal Licence ouverte, jeu, incompatibilité?. Évalué à 3.

    Tout d'abord, je pense que ceux qui affirment qu'un problème de jouabilité peut être amené par une licence se trompent, de même que le fait qu'un programme soit proprio n'apportera rien en plus (à mettre en parallèle avec la sécutité par l'obscurité...).

    Sinon, je pense qu'empêcher la triche dans les jeux est un sujet très interressant. Alors la première règle pour empêcher la triche sur un jeu multijoueur, c'est que tous les paramètres importants du jeu soient calculés au niveau du serveur et pas du client. Le mieux est que le client envoie des ordres de haut niveau (aller ici, jeter un sort), et pas bas niveau (enlever 13 points de vie à l'orc) : ainsi le serveur peut valider les actions (non ton troll ne sait pas lancer de boule de feu) et aussi sauvegarder les données du jeu (les persos ne sont par sur le disque dur des clients).
    Ainsi utiliser un client modifié ne sert à rien, donc qu'il soit libre ou non ne change pas grand chose. Evidemment dans un jeu temps réel à grande échelle ça pose des problèmes de performances (CPU/mémoire du serveur, débit réseau...), mais tu dis que c'est un jeu au tour par tour, alors c'est déjà beaucoup moins problématique.

    Enfin, tu ne veux pas que les paramètres et 'formules magiques de calcul' soient connus : ils n'ont qu'à rester sur le serveur, vu qu'il fait tous les calculs pertinants, dans des fichiers de configuration/scripts. En plus c'est plus propre que d'avoir des valeurs en dur dans le code. Tu peux alors distribuer client et serveur sous licence libre, avec des fichiers de paramétrage par défaut (mais sur ton serveur perso tu auras des valeurs bien à toi ).

    En espérant avoir été utile !