tag:blogger.com,1999:blog-949706588497831852.post2179273837433462090..comments2020-03-27T00:08:46.136+01:00Comments on L'Aube des Héros: Développer son MMORPG - Persistance!M87http://www.blogger.com/profile/01230411662211999500noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-949706588497831852.post-3917617800536690352009-06-22T10:53:55.499+02:002009-06-22T10:53:55.499+02:00Il est interressant de noter que le problème de mi...Il est interressant de noter que le problème de mine infinie donné en exemple peut être un peu étendu. Par expérience en tant que joueur (de T4C en l'occurrence), un soucis qui revenait souvent était ce qu'on appelle la duplication. Dans ton exemple, un joueur duplique le minerai de la mine (une moitié dans sont inventaire, l'autre, de retour dans la mine après le crash) en exploitant une latence de sauvegarde entre l'inventaire et la mine. On peut le faire aussi différement : un joueur A donne son minerai à un autre joueur B. B se déconnecte, son inventaire est donc sauvegardé dans la BdD, à ce moment, on provoque un crash serveur avant que l'inventaire de A soit sauvegardé (ou on exploite un cas particulier dans lequel l'inventaire de A n'est pas sauvegardé (déco sauvage mal gérée, etc.)), et on a donc une duplication du minerais, la moitié dans l'inventaire de A, l'autre dans celui de B. Cette exploitation est beaucoup plus dommageable pour le serveur comme nous allons le voir.<br /><br />Ce genre d'exploitation de bug a causé de nombreux problèmes sur certains jeux, car il est assez compliqué à déceler si ce n'est par un comportement anormal du marché (en l'occurence, le cours du minerais qui chute si les dupliqueurs décident d'innonder le marché, ou qui monte s'ils sont juste 2 ou 3 à être capable de fournir un minerais rare), ou une progression anormalement rapide de certains joueurs dans certains domaines (une grand quantité de minerais permettrait par exemple d'augmenter rapidement une éventuelle compétence de forgeron, un autre cas étant la duplication d'objets de quête donnant une récompense en XP qui donne des joueurs gagnant anormalement vite de l'XP).<br /><br />Ces comportements sont difficiles à détecter de façon automatique par analyse de la base de données (rien n'empêche la présence d'un chinois ou d'un coréen (oui, c'est une caricature :) ) qui passe sont temps à massacrer du monstre pour leveler le plus vite possible qui est une anomalie statistique et pourtant parfaitement justifiée). La détection est donc un procédé subjectif supporté a fortiori par analyse manuelle de logs (souvent effectué par des GM en jeu constatant un comportement anormal, puis confirmé par analyse des dits logs).<br /><br />Tout ca pour dire : les joueurs trouveront *toujours* un moyen d'exploiter à leur avantage le comportement du jeu, créant ainsi un jeu du chat et la souris entre le vil exploiteur et le gentil programmeur :) Malheureusement, c'est toujours l'exploiteur qui gagne et trouve un moyen de déjouer les protections du programmeur, mais en contre partie, ce dernier peut apprendre beaucoup de choses en matière de sécurité et d'integrité des données et contextes.<br /><br />NB : Tu aurais pu citer MS SQL Server dans la liste des données qui possède également une version Express gratuite !!! Limitée à 1 CPU, 1Go de RAM et une taille de base de 4Go, mais c'est un début ![/miscrosoft]Kokumanoreply@blogger.com