Anatomie d'un Drop

U

ulmo

Invité
Oui pardon...
Je parlais de ItemRatio.txt.
Si par exemple je fais des class-specific en classic, il va chercher une ligne supplementaire, non ?
 
M

Myrdinn

Invité
Oui c'est à toi de la créer, cependant ma remarque est en partie hypothétique, vu le traitement ca devrait fonctionner, mais rien ne vaut un essai réél.

donc ta question est Si la chance de base n'est pas renseignée ?? Je crois me souvenir que l'on a une assertion error ??
 
U

ulmo

Invité
Pour les erreurs, si on met 0 pour la chance de base, le test réussit à chaque fois. Normal.
Mais si divisor = 0, il y a une assertion failure.
Enfin, si il manque une ligne, il y a un autre message où il dit qu'il manque un objet.

Maintenant j'ai essayé : en classic, si il y a un objet classspecific, il utilise la ligne expension correspondante. Donc en fait il n'y a pas de ligne supplementaire requise.
 
U

ulmo

Invité
[*]A propos des proba de drop dans les TC weapXX et autres, j'ai fait quelques tests statistiques (en LOD, en cauchemar). C'est sans aucun doute la valeur de "rarity" présente dans ItemTypes qui est utilisée.

J'ai laissé deux armes avec un niveau entre 67 et 69, la "hand axe", type "axe", et l'"Eldritch Orb", type "orb". Les rarity dans Weapons.txt sont 3 et 3.
Avec pour rarity 3 et 1 dans ItemTypes.txt, j'obtiens 319 haches et 101 orbes.
Avec 1 et 9 comme rarity, c'est 16 haches pour 140 orbes.
Cela me semble sans appel (et j'y gagne une correction à faire).

[*]D'autre part, un rare qui n'obtient pas d'affixe devient un objet de bonne qualité. Même si il y a des affixes pour en faire un objet magique. Idem, un magic sans affixe devient un objet de bonne qualité. Et ce malgré des valeurs "HiQuality" = 10000 "HiQualityDivisor" = 100. Là aussi il ne reste guère de doute.
 
M

Myrdinn

Invité
Parfait Ulmo. Je n'arrivais plus à retrouver d'ou venait mes valeurs.
@Paul. Théoriquement tu ne devrais pas dropper l'objet (sauf si tous sont a 0), mais je crois que tu avais obtenu des résultats différents. Je me dois de retrouver la séquence incriminée. J'ai bien avancé la version 2 du MOD 1.11, je vais bientôt revenir sur l'anatomie des drops :)
 
L

LittleswingTemp

Invité
plop

Du coup à quoi servent les colonnes rarity de weapon.txt et Armor.txt ?

Dans les files guides 1.10 correspondants de Phrozen, on trouve l'explication suivante:

'rarity' (Armor.txt):
0 => Exclure cet item des Racks d'armures;
>= 1 => Utiliser ce 'rarity' pour le drop de cet item sur un Rack ( plus rarity est grand, plus l'item est rare)
Idem pour les weapons sur les Racks d'armes

PS. Du coup comment fait-on le calcul à partir de ces 'rarity' ?
 
U

ulmo

Invité
J'avais oublié quelques tests...

Si on met rarity à 0 dans ItemTypes.txt, le jeu utilise une valeur de 1 à la place.
Les valeurs de rarity dans Weapons.txt ne semblent pas utilisées du tout (mettre 0, 1, 19, ... aucun effet visible).
J'imagine que c'est pareil pour Misc.txt et Armors.txt puisque tout est mis dans la même table...
 
M

Myrdinn

Invité
Hum d'après ce que cites littleswing ils seraient utilisés pour les drops spéciaux que sont les rack.
Il faudrait essayer des valeurs significatives et faire des racks Run (ou attendre que je regarde en détail la fonction)
 
P

Paul Siramy

Invité
Ou éditer la ville de départ et mettre plein de racks dans ses ds1, plus facile non ? ;)
 
U

ulmo

Invité
Un peu, oui... Encore que méfiance avec les villes, c'est un coup à ce que le mapLevel ait un comportement particulier (il y a des valeurs en D2C mais pas en LoD)... Je vote pour le cloître intérieur ou le Harem lvl1.
 
P

Paul Siramy

Invité
Bon, je vais essayer là bas. Mais en attendant, voici le résultat des tests en ville de l'acte 1 :

En mettant cap/hat rarity à 0, skull cap à 1, helm à 10 et tous les autres à 0, les armor rack me droppait du cap/buckler/quilted armor (en normal, mais aussi en hell).

tests similaire pour weapons.txt : aucune différence.

J'ai donc mis toutes les rarity de armor.txt / weapons.txt et ItemTypes.txt à 0 (toutes les lignes), et ... ben toujours aucune différence, j'ai toujours mes buckler/cap/quilted armor.

http://paul.siramy.free.fr/_divers2/rarity_zero_hell.gif

Je tiens à préciser que mes .txt en bien été pris en compte, je n'avais aucun .bin au départ, et après avoir testé et eu ce screenshot, j'avais des .bin.

Bon, je ferais mes autres tests un peu plus tard, là j'ai un biberon à faire ;)
 
U

ulmo

Invité
Il y a le risque qu'il remplace rarity 0 par 1 là aussi. Tu devrais essayer de mettre un gros chiffre (40 ?) pour un objet particulier, et les autres à 1, ou éventuellement 0
 
M

Myrdinn

Invité
Bon j'ai regardé entre temps la fonction et j'ai bien fait :lol:

Si j'ai bien compris le jeu fait une liste d'objet possible et après il tire au hasard un objet dans la liste de façon équiprobable.

Pour chaque objet, la chance d'être dans la liste vaut 1 chance sur (Rarity - ActNumber)(actNumber commence à zéro)
Bref si rarity-ActNumber vaut 0 ou moins l'objet est automatiquement dans la liste
Esnuite il faut également que le QLVL de l'objet soit inférieur ou égal a l'area level -1 sinon l'objet est enlevé de la liste.

Il y a aussi un autre check pour weapons.txt sur les bitfields ??? Je me rapelle vaguement que Jarulf m'avait dit que c'était un classement spécial de Weapons.txt fait par blizzard pour ne tirer que les objets en métal.

Bon c'est un oneshot, c'est à prendre avec des pincette, faute de temps je dis pas mal d'anerie en ce moment ;)

Bref Paul essayes de mettre tout à rarity = 50 (on n'est jamais trop prudent :lol: )sauf 1 et celui la devrait être l'élu de tous les drops (ou presque car 50 objets à 1 chance sur 50 ca réduit fortement les proba :D )... Ca me fera une confirmation. Enfin si tu as un peu de temps entre 2 biberons ;) Félicitation au passage :gratz:
 
U

ulmo

Invité
1 chance sur (Rarity - ActNumber)
Et évidemment on n'a essayé qu'à l'acte 1...
Et tu parles uniquement des racks, là ? L'histoire des bitfields, je pense bien; mais pour (rarity - actnumber) ?

D'autre part, rassure-moi :
Pour chaque objet, la chance d'être dans la liste vaut 1 chance sur ...
Tu parlais bien de "pour chaque objet de la liste, la proba de sortir est ..." ?
 
M

Myrdinn

Invité
Oui oui c'est pour les racks et les Stand??? qui n'utilise pas le système des TCs. Comme d'ahb chez blizzard rarity n'a pas la même signification suivant le fichier ;)

Je veux dire le jeu construit une liste pour le stand d'armure, le jeu parcours toutes les lignes d'armors.txt(enfin l'aglomérat de .bin tu auras compris) et pour chacun des objets de ce fichier, il y a 1/(Rarity-ActNumber) que cette armure soit inclues dans la liste en construction (evidement si le QLVL le permet)
Ensuite une fois dans la liste construite pour le rack, le tirage dans la liste est fait de façon équiprobable pour tous les armures de la liste.

C'est pareil pour les weapons avec le AND bizarre sur le champs bitfield1 pour voir si l'objet est metalique
 
M

Myrdinn

Invité
Je vois 2 solutions, j'essayerais de regarder ce soir ou demain.
1) Pas de drop (ca m'etonnerait)
2) Assertion error indiquant que la liste est vide
Je n'ai jamais vu blizzard oublier ce genre de check :lol:
 
L

LittleswingTemp

Invité
plop

Toujours dans la reference de Phrozen que j'indiquais pour les racks, il est bien précisé q' AU MOINS 1 Armure doit avoir un champ non vide

Citation: (Armor.txt - Files Guides 1.10)
http://phrozenkeep.it-point.com/forum/kb.php?mode=article&k=2

"rarity    0 = Exclude this item from armor racks
>= 1 = set the rarity for this item to drop from an armor rack, the higher, the rarer

Warning : there needs to be at least 1 armor with rarity 0 or 1 (but 1 is probably better), othervise the game will crash when you use an armor rack because it won't find any armor available."


Par ailleurs, j'ai deux 'chtites questions 'mineures':
- Les fichiers RarePrefix/Suffix.txt sont-ils toujours exploités par la 1.10 (je pense que oui puisqu'il s'agit de listes d'inclusion (itype) et d'exclusion (etype);
- Dans TreasureClassEx.txt, les groupes Misc1,2 &3 contiennent des items comme opl, opm, ops, gpl, gpm,… Mais on ne trouve pas ces codes (donc ces items) dans Misc.txt. Alors où et que sont-ils? S'agirait-il de class auto (j'en doute), mais générées où et comment?

unplop
 
Haut