Exploit Dupe Rollback

Fil fermé
Partager Rechercher
Citation :
Publié par Felino
Je ne suis pas sur de ton histoire d'ID....

Déjà pour des golds il n'y a pas d'ID... ce serait totalement ingérable au niveau mémoire...

Pour les objets, il y a certainement un ID, mais il s'agit d'un ID d'objet au sens générique et non d'un ID par instance de cette objet.

En gros on a par exemple un bouclier qui fait partie d'un set qui a telles et telles propriétés. Cet objet comporte un identifiant unique. Mais chaque fois qu'un joueur loot cet objet, il n'y a pas ajout d'un identifiant, mais juste un référencement à l'identifiant déjà existant. La raison est simple, s'il devait y avoir un identifiant unique pour tout les objets lootés quel-qu'ils soient cela ferait exploser les bases de données très rapidement. Il y a également une autre raison, si on découvre suite à usage que l'objet est déficient (par exemple avec un bonus intelligence alors que set guerrier) on va modifier la description de l'objet générique uniquement et automatiquement tout les loots de cet objet vont être mis à jour car pointeront tous sur le même identifiant. On peut donc techniquement seulement tracé que tel individu a tel objet, mais on ne peut en aucun cas dire que tel individu a obtenu cet objet par duplication.

Le moyen pour détecter les duplications se trouve dans la multiplication des objets identiques sur les deux avatars... si deux individus ont eu 40 fois des objets identiques au même moment et qu'ils sont du type rare ou plus, là il y a "bug exploit" tout à fait probable...
C'est faux ce que tu dis, nimporte quoi.

Chaque item looté a son propre ID, Blizzard a juste remis ce qu'ils avaient developpé sous D2. Tu pourras faire une recherche si tu veux tu trouveras facilement, et puis sous D2 tu as beaucoup plus d'items drop par jour que sur wow, donc gérer des tonnes d'ID ils savent faire.

Et puis au fait, t'imagines une justice qui se base sur des évènements probables ? (cf ton dernier paragraphe)
Citation :
Tout le monde hurle quand les serveurs sont down pour quelques heures ; tu veut une émeute ???
Ils n'ont qu'a hurler, je préfère ça à un crash total de l'économie...


Citation :
en meme temps il ets possible d'avoir ce genre de cas sans etre un cheateur et pre 1.6 (sans cet exploit donc)
Dans ce cas on contrôle l'inventaire des perso a un temps x et x+n, si entre deux on a une augmentation massive des po et objets épiques --> ban.
le rollback de 2 semaine

et ben je pense que bcp s'en iront

je connais plusieurs personne ayant pris leurs vacance suite au patch ou un peu avant

plusieur ont monté comme moi 7-9 lvl et on bientot fini les stuff

donc si il rollback de 2 semaine je pense pas que certains continuirons on a pas des rtt a tout vas

ps: même le 2 jours j le sentirais pas passer ,mais bon ds 5jours mon abo fini
ps2: pour bann ceux ayant 2 même item bleu ou épique ou plus ou 5000po ca existe dsl
Citation :
Publié par Maglor_Calaeran
Personnellement, j'espère que Blizzard va fermer ses serveurs quelques jours, histoire de faire le ménage... je préfère ça au rollback...
Pour identifier les tricheurs c'est simple :

- plus de deux objets bleu/violet identiques --> ban
- plus de 5000 Po --> ban

et c'est tout.
Damned, je triche, j'ai mis en vente 4 objets bleus identiques que j'ai fabriqués avec mes petits doigts
Si qqn qui connait le truc pouvait me dire par MP comment on fait histoire de comprendre le truc pour pouvoir report au GM des que je vois un truc louche merci.

Sinon ca va faire comme certaine partie de D2 avec toute la map rempli de SoJ et la c'est pas cool.
Citation :
Publié par Maglor_Calaeran
I.....Dans ce cas on contrôle l'inventaire des perso a un temps x et x+n, si entre deux on a une augmentation massive des po et objets épiques --> ban.
Ta mesure est inapplicable car elle part du principe que tous les tricheurs sont des abrutis ce qui n'est pas le cas.

Citation :
Publié par Cach
Si qqn qui connait le truc pouvait me dire par MP comment on fait histoire de comprendre le truc pour pouvoir report au GM des que je vois un truc louche merci.

Sinon ca va faire comme certaine partie de D2 avec toute la map rempli de SoJ et la c'est pas cool.
SImple par exemple fait un who Maraudon si dans la liste de noms apparaissent des petits niveaux, il te reste plus qu'a send un MJ
Felino dans son dernier post se trompe, car tous les objets on biel est bien un identifiant unique, donc deux objet identique onrint bien deux identifiant diférents. c'est comme ca dans tout les mmo depuis un certain temps, je le sais bien pour avoir bosser sur des log de DAoC.
Citation :
Publié par Delicioso Stracciat.
...
à moins que Blizzard n'ait inventé de nouveaux concepts fumeux c'est simple

ton personnage est une ligne dans une table dans une base de données.

cette table "personnage" dispose de plusieurs colonnes telles que
Nom, Classe, niveau etc.
et Surtout une colonne de type Personnage_ID, cette colonne contient l'identifiant unique de ton perso sur ton serveur , si ton personnage à le n° 123 personne d'autre ne l'aura (unicité DB bla bla)

Pour les armes il y a une table "armes" avec plusieurs colonnes telles que
Nom, Vitesse, dégats etc.
et Surtout une colonne de type arme_ID, cette colonne contient l'identifiant unique d'une arme , si la lame de trash à l'identifiant 456 aucune autre arme n'aura cet identifiant (mais toutes les lames de trash auront l'identifiant 456)

Pour savoir si un perso possède la lame de trash il doit exister une autre table du type "personnage_armes" avec au moins 2 colonnes : personnage_id et arme_id
donc si on a une ligne comme ceci dans cette table :

personnage_id : 123 arme_id : 456

on sait que le personnage 123 possède l'arme 456.

(pour rester simple je ne dévellope pas plus loin, je sais si on veut avoir plusieurs fois le même objet il faut des colonnes en plus )

pour l'or c'est différent car tout personnage va avoir une somme d'or (même si elle est égale à 0 il faut le savoir) donc cette information est stocké dans la table "personnage". pourquoi ? parceque si on stocke d'un côté les personnages, de l'autres les armes et qu'on stocke la relation entre les 2 dans une table intermédiaire c'est nottament pour des questions de gain de place de stockage car tous les persos n'ont pas les mêmes armes etc. alors que de l'or tous les persos en ont et ils ont UN et un seul montant d'or par perso.

en fait c'est très dur d'expliquer simplement... pourtant c'est pas très compliqué.

enfin... moi j'me dis que j'ai bien fait de couper mon abo avec cette m**de de patch 1.6, plus ça va plus ils pourrissent leur jeu.
Pour le rollback de toute manière, si y'en a pas on sera lésés, si il y en a un on sera lésés, si ils recherchent que les personnes incriminées il y aura du monde pour faire les rebelz et crier a tort ou a raison qu'ils sont innocents.... Mais que faire ?

Citation :
Publié par LeChuck
Damned, je triche, j'ai mis en vente 4 objets bleus identiques que j'ai fabriqués avec mes petits doigts
Ah oui ? Et tu as fait comment pour avoir autant de ressources pour crafter ces 4 objets bleus identiques ?

hmmm ?

REPORT !!!!


PS : Edit pour Franvoz : Oui c'est ce que j'ai explique dans la 2eme manière de procéder, mais dans ce cas ça veut dire que chaque personnage ne peut posséder qu'une lame de trash a la fois. (Unicite de la concaténation des identifiants des entités reliées blablabla)

Re Edit : Ah oui tu l'as signale, mais dans ce cas la première méthode reste la meilleure )
Citation :
Publié par Odd3k
C'est faux ce que tu dis, nimporte quoi.

Chaque item looté a son propre ID, Blizzard a juste remis ce qu'ils avaient developpé sous D2. Tu pourras faire une recherche si tu veux tu trouveras facilement, et puis sous D2 tu as beaucoup plus d'items drop par jour que sur wow, donc gérer des tonnes d'ID ils savent faire.

Et puis au fait, t'imagines une justice qui se base sur des évènements probables ? (cf ton dernier paragraphe)
Ba .. je ne te contredirais pas, n'ayant aucune certitude...

Je me base sur mon expérience personnelle d'ingénieur développeur avec quelques années d'expérience derrière moi...

Vu la multiplication des objets, la gestion d'un identifiant unique pour chaque loot qui tombe me semble aberrant au niveau performance et viabilité de l'application à moyen et long terme.... cela peut se comprendre assez facilement, un joueur même s'il ne joue qu'une ou deux heures va au minimum looter 15 objets par jour (genre 3 oeils de truc, 1 parcho, 1 popo de soin, ...), si tu multiplies cela par disons 2000 personnes (moyenne tout à fait fabulatoire de la population régulièrement connecté sur un serveur chaque jour), cela te fait 30 000 nouveaux identifiants chaque jour.... 900 000 par mois... et je suis sûrement bien en deçà... le problème ne se situe pas bien sur au niveau stockage disque dur, mais plutôt au niveau stockage en mémoire vive de ces infos...

S'ils ont effectivement programmer cela comme ça, dans quelques mois les serveurs n'arriveront même plus à se lancer tellement il y aura d'information à gérer. La mise en place d'un identifiant par objet générique est par contre cohérent et correspond à ce qui est généralement fait quand on utilise une base de données (non duplication des informations, à un objet genre popo soin mineur correspond un identifiant et tout loot de cet objet reprend ce même identifiant).

J'aimerais bien jeter un oeil à leur code... franchement ça m'intéresserai
Citation :
Publié par anianca
Felino dans son dernier post se trompe, car tous les objets on biel est bien un identifiant unique, donc deux objet identique onrint bien deux identifiant diférents. c'est comme ca dans tout les mmo depuis un certain temps, je le sais bien pour avoir bosser sur des log de DAoC.
Le repérage par identifiant serait inefficace, car le bug existant et étant exploitant depuis un certain temps, beaucoup d'objet dupé ont été mis en circulation. Donc pour ne pas faire d'erreur il faudrait faire un analyse transaction par transaction. Une telle mesure ne sera jamais mis en oeuvre compte tenu de son coût.
Citation :
Publié par anianca
Felino dans son dernier post se trompe, car tous les objets on biel est bien un identifiant unique, donc deux objet identique onrint bien deux identifiant diférents. c'est comme ca dans tout les mmo depuis un certain temps, je le sais bien pour avoir bosser sur des log de DAoC.
euh.... ?

donc les milliers d'unités de sels de deeprock par exemple auraient toutes un ID unique ?

ça me parait TRèS bizarre, à moins que ce ne soit un ID d "instance" renvoyant vers un autre ID de "propriétés" d'objets ?

ou alors tu parles du pseudo ID formé par player_ID + objet_ID ou de personnages_armes_ID ? ( de personnages_armes contenant personnages_armes_ID, personnage_ID et arme_ID)


tu aurais plus de détails ? simple curiosité.
Citation :
Publié par Felino
Vu la multiplication des objets, la gestion d'un identifiant unique pour chaque loot qui tombe me semble aberrant au niveau performance et viabilité de l'application à moyen et long terme.... cela peut se comprendre assez facilement, un joueur même s'il ne joue qu'une ou deux heures va au minimum looter 15 objets par jour (genre 3 oeils de truc, 1 parcho, 1 popo de soin, ...), si tu multiplies cela par disons 2000 personnes (moyenne tout à fait fabulatoire de la population régulièrement connecté sur un serveur chaque jour), cela te fait 30 000 nouveaux identifiants chaque jour.... 900 000 par mois... et je suis sûrement bien en deçà... le problème ne se situe pas bien sur au niveau stockage disque dur, mais plutôt au niveau stockage en mémoire vive de ces infos...
Le truc c'est que la plupart de ses objets disparaissent aussi rapidement qu'ils sont apparus (consommation, vente à des PNJ, etc.), donc la place en mémoire est aussitôt libérée. Et de toute façon, pour mettre en place un MMORPG, les ressources à mettre en oeuvre sont énormes, donc je pense qu'ils doivent avoir les infrastructures nécessaires à la mise en place et à la gestion d'une telle base.
Citation :
Publié par Soupir
Le truc c'est que la plupart de ses objets disparaissent aussi rapidement qu'ils sont apparus (consommation, vente à des PNJ, etc.), donc la place en mémoire est aussitôt libérée. Et de toute façon, pour mettre en place un MMORPG, les ressources à mettre en oeuvre sont énormes, donc je pense qu'ils doivent avoir les infrastructures nécessaires à la mise en place et à la gestion d'une telle base.
Je reafirme et je plussoie fortement cette affirmation. (Tiens j'aimerai bien savoir quel type de serveur BDD ils peuvent utiliser par serveur WOW )


(Quand on parle d'ID pour les objets Stackables (Or, Minerais, Potions etc etc) dans l'inventaire, on veut dire que la table pourrait contenir selon ce schema simplifie:

Code:
TABLE INVENTAIRE :
----------------------------------------
character_id, obj_id, item_id, count
----------------------------------------
1000004521, 1035471, 57, 14571950  <---- booo le vil tricheur !  :p 
1000004521, 1034815, 98, 3
----------------------------------------

TABLE ITEMS :
----------------------
item_id, name
----------------------
57, GOLD
98, MANA_POTION
----------------------
Ce qui signifie que 14571950 pieces d'or ne sont pas caracterises par autant d'identifiants, mais bien par un seul (1035471 dans notre cas))
Citation :
Publié par Delicioso Stracciat.
PS : Edit pour Franvoz : Oui c'est ce que j'ai explique dans la 2eme manière de procéder, mais dans ce cas ça veut dire que chaque personnage ne peut posséder qu'une lame de trash a la fois. (Unicite de la concaténation des identifiants des entités reliées blablabla)

Re Edit : Ah oui tu l'as signale, mais dans ce cas la première méthode reste la meilleure )
euh... je ne suis pas où tu veux en venir là ? (la première méthode reste la meilleure ) mais je voulais juste expliquer que logiquement la somme d'or possédée par un perso n'est qu'un nombre dans une colonne de la table "personnage" et certainement pas des liens vers des ID's de chaque pièce d'or



Soupir => admettons mais quel serait l'avantage d'utiliser ces ID's uniques pour chaque instances d'objet ? les premiers auquels je pensent seraient : augmenter la sécurité au niveau des manipulations d'objets (duplications etc... ) apparamment ça n'apporte pas cette sécurité...
et sinon je dirais pouvoir logger très exactement les échanges mais si tu pars du principe que ces ID's sont aussi vite crées que détruits (et donc remplacés ou incrémentés) ça peut pas être ça non plus donc à part bouffer une quantité impressionnate de ressources pour rien je ne comprends pas pourquoi on ferait comme ça (en même temps j'ai pas la science infuse et j'ai jamais programmé de MMO, je me renseigne juste)
Citation :
Publié par Felino
cela te fait 30 000 nouveaux identifiants chaque jour.... 900 000 par mois... et je suis sûrement bien en deçà... le problème ne se situe pas bien sur au niveau stockage disque dur, mais plutôt au niveau stockage en mémoire vive de ces infos...

S'ils ont effectivement programmer cela comme ça, dans quelques mois les serveurs n'arriveront même plus à se lancer tellement il y aura d'information à gérer.
D'un autre côté, et je parle là sans connaissance du réel fonctionnement de WoW, mais par simple hypothèse, les objets n'existent pas indéfiniment. En effet, la capacité de stockage de chaque perso est limitée en taille. Même si on bidouille avec l'AH, la poste et plusieurs comptes, on n'a pas un besoin de stockage infini. En dehors des équipements utilisés, la plupart des loots sont réutilisés pour créer de nouvelles choses (à raison de X composants pour 1 objet final), vendus aux PNJ, consommés ou encore détruits.
Ainsi, lorsqu'un objet et vendu au PNJ, il dis parait de la base, idem lors d'une consommation de potion. Et d'autre part, lorsque des loots sont utilisés pour créer un nouvel objet, il disparaissent aussi, l'objet fraîchement crafté prenant une nouvelle ID.

A l'arrivée, si les devs ont bien fait leur boulot, ils peuvent donc avoir à stocker un nombre limité d'ID. Même si ce nombre est important, il ne grandit pas avec le temps, une fois sa "vitesse de croisière atteinte", après l'ouverture d'un serveur.

Ca doit pouvoir fonctionner comme ça, non ?

[EDIT] Damned, grilled by Soupir...
Citation :
Publié par Delicioso Stracciat.
Je reafirme et je plussoie fortement cette affirmation. (Tiens j'aimerai bien savoir quel type de serveur BDD ils peuvent utiliser par serveur WOW )
bah Oracle non ?
Vu qu'on arrive à un débat de programmeur (j'aime bien ), ce pose la question alors de l'utilité d'avoir un id unique par loot ?

A un loot correspond une description de ce loot (si armure, le type, les attributs, le skin, etc etc)...

On peut supposer, enfin j'espère qu'ils n'ont pas fait ça, que la description d'un objet n'est pas dupliqué mais se situe à un seul et même endroit...

Donc quelle utilité d'avoir un identifiant unique d'un loot ? quel serait l'apport par rapport à directement utiliser l'identifiant où se trouve la description....

Ceci dit quand un objet se détériore, seul celui de porteur s'abîme, pas tous les autres (heureusement ), donc il y a forcément une unicité quelque part... pas obligatoirement pour tout les objets, mais sûrement pour les objets type armure ayant des particularités en fonction du porteur et de la situation....

Bref bref... il y aurai pas un développeur de wow en ligne là
Citation :
Publié par Felino
Bref bref... il y aurai pas un développeur de wow en ligne là
même si il y en a un, je suis pas sur qu'il est le droit de révéler ce type d'information. ^^
Citation :
Publié par Felino
Ba .. je ne te contredirais pas, n'ayant aucune certitude...

Je me base sur mon expérience personnelle d'ingénieur développeur avec quelques années d'expérience derrière moi...

...

J'aimerais bien jeter un oeil à leur code... franchement ça m'intéresserai
Je pense que dans leur code il ne font pas que des insert mais aussi des delete
Quand, par exemple tu bois une potion tu detruit l'objet, j'espere qu'ils enlevent l'occurence correspondante... enfin je suppose
il existe bien une table arme avec un numéro de clef primaire

Dans cette table il est cler qu'un objet ne revien qu'une fois, par exemple épée du soleil, id n°1356 et sur la meme ligne toute les caracteristique de cette arme.

En revanche, a chaque fois qu'une épée du soleil apparait en jeu on copie ll ligne de l id 1356 dans une nouvelle base avec un nouveau num d'id, dans celle ligne apparait aussi l id du joueur qui la possede etc ...
Citation :
Publié par Delicioso Stracciat.
Je reafirme et je plussoie fortement cette affirmation. (Tiens j'aimerai bien savoir quel type de serveur BDD ils peuvent utiliser par serveur WOW )
Mysql


non sans rire, je parie 1 gold (multiplié à l'infini) que c'est soit oracle soit db2.
Citation :
Publié par fouloup
Mysql


non sans rire, je parie 1 gold (multiplié à l'infini) que c'est soit oracle soit db2.
Je me suis peut être (sans doute) mal exprimée, je voulais dire niveau puissance, pour pouvoir gérer la BDD.

EDIT pour Felino : En absence d'ID unique par loot, dit moi par exemple comment tu fais pour gerer les trades entre joueurs
Citation :
Publié par fouloup
Mysql


non sans rire, je parie 1 gold (multiplié à l'infini) que c'est soit oracle soit db2.
je me demande sur quelle systeme d'exploitation ils sont
Fil fermé

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés