Butin de classe automatique
Cette page décrit l'implémentation actuelle d'EliteMobs. Les anciennes versions peuvent ne pas disposer de ces réglages. Vérifiez le fichier généré ClassLootSettings.yml et l'autocomplétion des commandes avant de les configurer.
Le butin de classe utilise les fichiers d'objets personnalisés et les tables de butin des boss habituels. Un profil fournit le tirage de base des enchantements pour la difficulté et le rang de la rencontre ; l'objet personnalisé fournit le matériau, le nom, la description, le modèle, la propriété et les remplacements explicites.
Fonctionnement des récompenses
Définissez itemType: CLASS_LOOT dans un objet personnalisé, puis référencez son fichier dans uniqueLootList du boss. Une table vide ne produit aucun butin de classe : le système n'invente pas les objets ou familles manquants.
# customitems/winter_sword.yml
isEnabled: true
itemType: CLASS_LOOT
material: DIAMOND_SWORD
name: "&bWinter's Edge"
lore: ["&7Taken from $boss on $difficulty."]
# customitems/winter_helmet.yml
isEnabled: true
itemType: CLASS_LOOT
material: DIAMOND_HELMET
classLootFamily: TANK_HELMETS
name: "&bDeepwinter Helm"
lore: []
# custombosses/winter_keeper.yml
isEnabled: true
entityType: STRAY
name: "&bWinter Keeper"
level: 50
healthMultiplier: 7.0
damageMultiplier: 1.4
classLoot: true
classLootRank: BOSS
classLootDifficulty: AUTO
uniqueLootList:
- filename: winter_sword.yml
chance: 1.0
amount: 1
- filename: winter_helmet.yml
chance: 1.0
amount: 1
Renseignez material, un name non vide et une liste de chaînes lore ; lore: [] est valide. Les champs requis manquants ou invalides désactivent l'objet. Les familles d'armes suivent le matériau, sauf les armes magiques qui utilisent weaponType: WANDS ou STAVES. Les boucliers sont reconnus comme SHIELDS. L'armure nécessite une famille explicite DPS_<slot> ou TANK_<slot> correspondant à la pièce ; un casque ne peut pas déclarer une famille de bottes.
Les familles prises en charge sont SWORDS, AXES, BOWS, CROSSBOWS, TRIDENTS, HOES, MACES, SPEARS, STAVES, WANDS, DPS_HELMETS, DPS_CHESTPLATES, DPS_LEGGINGS, DPS_BOOTS, TANK_HELMETS, TANK_CHESTPLATES, TANK_LEGGINGS, TANK_BOOTS et SHIELDS.
| Champ du boss | Signification |
|---|---|
classLoot | Active la couverture pour ce boss ; activé par défaut sauf dans les définitions de renforts |
classLootDifficulty | AUTO, NORMAL, HARD ou MYTHIC ; AUTO utilise la difficulté de l'instance, sinon la valeur par défaut configurée |
classLootRank | AUTO, TRASH, MINIBOSS ou BOSS ; AUTO utilise le type de boss, puis les anciennes indications de niveau dans le nom |
uniqueLootList | Références habituelles aux objets ; les entrées CLASS_LOOT admissibles forment l'ensemble des candidats |
Le réglage global enabled de ClassLootSettings.yml s'applique également. Les renforts, montures, morts marquées par l'anti-exploit, niveaux invalides, joueurs exclus des récompenses et participants ayant infligé moins de 10% de la santé maximale du boss ne reçoivent pas ces tirages.
Les chances par défaut de la première étape sont de 5% pour les ennemis ordinaires, 25% pour les miniboss et 100% pour les boss, par participant admissible. Après sa réussite, la sélection considère uniquement les entrées de classe disponibles satisfaisant la difficulté et les permissions, avec une quantité et une chance positives. La chance propre à l'entrée choisie est ensuite tirée ; en cas de succès, sa quantité configurée est générée. Aucun nouveau tirage n'est garanti si cette chance échoue.
Les entrées de classe sont traitées par cette couverture et ne sont pas dupliquées comme récompenses habituelles du boss. Les récompenses hors classe peuvent coexister dans la même table. L'équipement d'instance rejoint le vote du donjon ; l'équipement de groupe admissible rejoint le partage du groupe ; le reste constitue un butin personnel.
Réutiliser la présentation entre créatures
Référencez les mêmes fichiers d'objets personnalisés depuis plusieurs boss. Chaque récompense utilise le rang, la difficulté et le niveau de récompense de sa rencontre. $boss, $weapon, $item et $difficulty sont remplacés dans le nom et la description de l'objet de classe.
Les enchantements explicites de l'objet remplacent les résultats correspondants du profil ; ses effets de potion s'ajoutent à ceux du profil. Les champs du modèle, les permissions et Soulbind restent des réglages habituels d'objets personnalisés. Un objet nommé peut ainsi réutiliser une base tout en conservant une propriété spéciale voulue.
Cette implémentation ne propose pas de définition classLootItems, classLootNames ou classLootLore côté boss. Déplacez la présentation vers des définitions normales d'objets personnalisés et ajoutez leurs références de butin ; ne vous fiez pas à l'ancienne migration automatique décrite dans la documentation des versions de test.
Préférences de classe
Les tirages personnels utilisent la spécialisation active du destinataire. Chaque tirage partagé de donjon choisit uniformément un participant admissible, indépendamment des dégâts au-delà du seuil existant de 10%, puis utilise sa classe pour la sélection. Les tirages de groupe font de même parmi les membres proches de ce groupe ayant contribué. Les objets rejoignent toujours le vote partagé existant et ne sont pas réservés au joueur sélectionné. Le nombre de tirages, le seuil, les exclusions et les conditions de vote ne changent pas.
La pertinence d'une arme vient des affinités d'armes configurées pour la forme de classe active, y compris les bonus propres à la spécialisation. Elle ne dépend pas de l'arme tenue. Les préférences d'armure et de bouclier de chaque classe figurent dans les réglages générés :
selection:
classBiasEnabled: true
relevantChance: 0.8
categoryWeights:
WEAPONS: 50
ARMOR: 45
SHIELDS: 5
classes:
paladin:
armor: TANK
shields: true
champion:
armor: DPS
shields: false
ranger:
armor: DPS
shields: false
battlemage:
armor: BOTH
shields: false
Les préférences tank explicites par défaut concernent Paladin, Gardien, Égide, Rempart, Porte-bouclier, Templier, Seigneur de la bannière, Impérissable, Cuirassé, Colosse et Chevalier arcanique. Justicier, Maréchal, Juggernaut, Belliciste, Mage de bataille et Cryomancien acceptent les deux rôles d'armure. Les autres formes préfèrent l'armure DPS, y compris celles du Clerc. Les préférences de bouclier sont activées par défaut pour Paladin, Gardien, Égide, Rempart, Porte-bouclier, Justicier, Templier, Maréchal et Seigneur de la bannière. Ce sont des préférences d'équipement modifiables, pas des restrictions de rôle au combat.
Une sélection de classe absente ou un biais désactivé utilise les poids de catégorie sans séparation 80/20. Un ensemble vide transfère sa probabilité à l'ensemble disponible. Les familles magiques ou de matériaux indisponibles sont retirées avant le calcul. Un poids nul exclut la catégorie des tirages réels ; si tous les poids sont nuls, les tirages automatiques sont désactivés et un avertissement apparaît. Les poids sont relatifs au sein de chaque ensemble de pertinence : ils ne garantissent donc pas une répartition globale 50/45/5 pour chaque classe.
Inspection par l'administrateur
Permission : elitemobs.loot.admin. Les commandes exigent un joueur et proposent l'autocomplétion par Tab.
/em loot preview <mob.yml> <level> <NORMAL|HARD|MYTHIC>
/em loot preview <mob.yml> <level> <NORMAL|HARD|MYTHIC> <AUTO|TRASH|MINIBOSS|BOSS> <family|ALL>
/em loot giveall <mob.yml> <level> <NORMAL|HARD|MYTHIC>
/em loot giveall <mob.yml> <level> <NORMAL|HARD|MYTHIC> <AUTO|TRASH|MINIBOSS|BOSS>
Par exemple :
/em loot preview GK_boss_snickersnap.yml 100 MYTHIC
/em loot preview GK_boss_snickersnap.yml 100 MYTHIC BOSS WANDS
/em loot giveall GK_boss_snickersnap.yml 100 MYTHIC
preview affiche les familles disponibles, leurs probabilités pour la classe active de l'administrateur, les plafonds et chances d'enchantements définis, les règles rares, les effets de potion et les entrées de table. Une famille nommée fournit aussi un échantillon généré. Les formes courtes utilisent le rang résolu du boss. Les arguments explicites de rang et difficulté le remplacent pour l'inspection sans modifier sa configuration. Les probabilités de famille supposent la réussite d'un tirage automatique ; la chance de récompense configurée est indiquée séparément. Les règles d'enchantements sont des plafonds définis avant le budget et les disponibilités ou limites globales, pas des valeurs garanties sur chaque échantillon.
giveall donne un échantillon tiré indépendamment pour chaque famille automatique disponible et un échantillon par entrée d'objet hors butin de classe. Les candidats automatiques doivent toujours respecter la difficulté et les permissions de l'entrée, avoir une chance et une quantité positives, et désigner un objet disponible. Les échantillons ignorent les tirages de récompense, les poids de pertinence et les quantités configurées. Le passage séparé sur les autres objets ignore aussi les permissions des entrées. Les restrictions propres à l'objet passent toujours par le constructeur normal d'objets personnalisés. Les entrées définies comprennent toutes les variantes de difficulté, avec leurs conditions brutes affichées : la difficulté sélectionnée contrôle les profils automatiques et la commande ne suppose pas quel donjon possède une créature réutilisable. Les objets fixes et limités conservent leurs règles de niveau ; les échantillons évolutifs utilisent le niveau demandé sans plafond de progression de l'administrateur. Les objets indisponibles ou invalides sont signalés ; les générations manquantes déclenchent aussi un avertissement en console. Le surplus tombe aux pieds de l'administrateur.
Les commandes ne font pas apparaître de créature, ne déclenchent pas d'événements de mort, n'exécutent pas de récompenses de commandes, ne versent pas de monnaie et ne créent pas de votes. Les récompenses autres que les objets sont seulement signalées. La désactivation du butin automatique est indiquée, mais n'empêche pas les échantillons demandés volontairement. C'est un outil d'inspection, pas une simulation de fréquence de butin ni un audit des récompenses du donjon.
Formule des enchantements
Le fichier généré ClassLootSettings.yml contient les 171 profils de difficulté, rang et famille. Cet extrait montre la forme d'un profil modifiable ; modifiez le fichier généré au lieu de remplacer tous les profils par cet extrait :
enabled: true
defaultDifficulty: NORMAL
difficultyIds:
'0': NORMAL
'1': HARD
'2': MYTHIC
enchantmentBudgetFraction: 0.5
minimumPrimaryLevel: 1
dropChance:
TRASH: 0.05
MINIBOSS: 0.25
BOSS: 1.0
profiles:
MYTHIC:
BOSS:
WANDS:
primaryEnchantment: POWER
enchantments:
POWER:
level: 7
chance: 1.0
UNBREAKING:
level: 5
chance: 0.9
MENDING:
level: 1
chance: 0.15
MULTICAST:
level: 2
chance: 0.4
rareEnchantments:
MULTICAST:
level: 3
chance: 0.01
Chaque règle tire sa chance indépendamment. Les règles rares sont des tirages supplémentaires et ne remplacent une règle ordinaire réussie que si leur niveau est supérieur. Les niveaux natifs activés forment un ensemble d'unités d'enchantement. On en tire ceil(N * fraction) sans remise. Jusqu'à minimumPrimaryLevel de ces unités sont réservées à l'enchantement principal, dans les limites de son plafond sélectionné et du budget total. Un budget nul reste nul. Les enchantements personnalisés conservent leurs niveaux sélectionnés sans consommer d'unités natives, comme le butin personnalisé évolutif existant. La disponibilité globale et l'admissibilité procédurale des enchantements s'appliquent toujours. Les réglages des fournisseurs personnalisés utilisent le format actuel de définition. Le maxLevelV2 natif est une référence procédurale et de valeur, pas le plafond du contenu défini par l'auteur. Les combinaisons incompatibles d'arme et d'enchantement sont ignorées avec un diagnostic de configuration ; baguettes et bâtons ne peuvent pas recevoir Punch via les profils.
L'armure DPS utilise Sharpness comme enchantement principal avec une protection plus légère. EliteMobs compte déjà les enchantements de dégâts de l'armure équipée. L'armure tank utilise Protection comme principal, accompagné d'enchantements secondaires défensifs. Les boucliers utilisent Protection via le calcul de défense existant de la main secondaire. Les profils de casques et bottes peuvent inclure les enchantements propres à leur emplacement. Ce sont des objets séparés, pas un nouveau bonus d'ensemble complet ou de nouveaux types de compétences. L'armure utilise des matériaux en diamant ; les boucliers utilisent SHIELD. Chaque récompense possède son propre nom et sa description habituels d'objet personnalisé.
Les profils acceptent éventuellement potionEffects avec la syntaxe existante des objets, par exemple potionEffects: ["STRENGTH,0,SELF,ONHIT"]. Les amplificateurs commencent à zéro. Ces effets utilisent les règles et durées existantes des effets d'objets, indépendamment du budget d'enchantements. Les entrées invalides sont signalées puis ignorées. Les profils d'équipement fournis n'ont pas d'effets de potion : les échantillons examinés ne justifient pas d'imposer un déclenchement particulier comme avantage de base. Les profils d'armes existants ne changent pas ; les profils d'armure et de bouclier manquants sont ajoutés depuis les valeurs fournies.
Exemple : Power 7 et Unbreaking 5 créent 12 unités natives. Avec 0.5, six sont sélectionnées ; une est réservée à Power et cinq sont tirées parmi les unités restantes. Le résultat peut avoir Power 4 / Unbreaking 2. Multicast II, s'il est sélectionné, reste II. Son tirage rare distinct de 1% peut produire III sur une baguette de boss Mythic. Il s'agit de 1% des baguettes de boss Mythic générées, pas de 1% de toutes les morts de boss. Les profils se règlent sans dupliquer Winter's Edge dans trois fichiers d'objet personnalisé.
Origine des valeurs par défaut
L'audit des sources de septembre 2026 a couvert 58 packs DLC disponibles, 2 566 définitions d'objets personnalisés et 4 417 références de butin de boss. Il a conservé 68 références non résolues plutôt que d'inventer des objets manquants. La classification et les groupes peu représentés demandent du jugement ; ces profils sont donc un point de départ pour une révision manuelle de l'équilibrage.
Pour les groupes d'armes échantillonnés, les médianes des niveaux positifs d'enchantement sont arrondies à l'entier le plus proche, les demis vers le haut. Les chances secondaires utilisent la fréquence observée arrondie par pas de 5%. Un groupe doit avoir au moins cinq échantillons positifs pour sa propre médiane ; les groupes trop rares utilisent un équivalent mieux représenté. Les plafonds ne diminuent pas de Normal à Hard puis Mythic. Les effets binaires ou mécaniquement limités utilisent des plafonds explicites.
Les profils d'armure utilisent un audit ciblé de 920 armures et boucliers répartis par difficulté. Chaque règle privilégie le même rôle d'armure et le même emplacement, puis les autres emplacements du même rôle, puis le même emplacement des autres rôles. Les boucliers utilisent leurs propres données. L'absence de données entraîne un repli explicite. Les effets de potion n'atteignaient pas les seuils d'échantillonnage et de fréquence nécessaires pour un déclenchement par défaut ; les profils de base n'en contiennent donc pas.
Les armes magiques n'ont aucun échantillon classé dans cet audit. Leurs profils Power et Unbreaking dérivent des arcs. Les règles Multicast, Blast Radius et Ignition sont de nouveaux choix d'équilibrage. Les chances de récompense 5%/25%/100% et la préférence de classe de 80% sont aussi des choix de conception, pas des fréquences mesurées dans les DLC.
Cibles de l'enchantement principal
Il s'agit de plafonds configurés avant le budget aléatoire des enchantements natifs. Chaque cellule indique Normal / Hard / Mythic. Les niveaux finaux des objets ne sont pas garantis, et les enchantements secondaires consomment aussi du budget.
| Famille | Principal | Ennemi ordinaire | Miniboss | Boss |
|---|---|---|---|---|
SWORDS | SHARPNESS | 2 / 3 / 4 | 3 / 3 / 4 | 5 / 7 / 9 |
AXES | SHARPNESS | 2 / 3 / 4 | 3 / 4 / 4 | 3 / 5 / 6 |
BOWS | POWER | 2 / 3 / 4 | 3 / 3 / 4 | 4 / 5 / 7 |
CROSSBOWS | POWER | 2 / 3 / 4 | 3 / 3 / 4 | 4 / 5 / 7 |
TRIDENTS | SHARPNESS | 2 / 3 / 4 | 3 / 3 / 4 | 5 / 7 / 9 |
HOES | SHARPNESS | 2 / 3 / 4 | 3 / 3 / 4 | 5 / 6 / 8 |
MACES | SHARPNESS | 2 / 3 / 4 | 3 / 3 / 4 | 5 / 6 / 8 |
SPEARS | SHARPNESS | 2 / 3 / 4 | 3 / 3 / 4 | 4 / 6 / 8 |
STAVES | POWER | 2 / 3 / 4 | 3 / 3 / 4 | 4 / 5 / 7 |
WANDS | POWER | 2 / 3 / 4 | 3 / 3 / 4 | 4 / 5 / 7 |
DPS_HELMETS | SHARPNESS | 2 / 3 / 5 | 3 / 5 / 7 | 5 / 7 / 10 |
DPS_CHESTPLATES | SHARPNESS | 2 / 3 / 4 | 3 / 5 / 7 | 5 / 7 / 10 |
DPS_LEGGINGS | SHARPNESS | 2 / 3 / 4 | 4 / 5 / 7 | 5 / 7 / 10 |
DPS_BOOTS | SHARPNESS | 2 / 3 / 5 | 3 / 4 / 6 | 5 / 7 / 10 |
TANK_HELMETS | PROTECTION | 2 / 3 / 4 | 2 / 3 / 5 | 5 / 7 / 9 |
TANK_CHESTPLATES | PROTECTION | 2 / 3 / 4 | 3 / 4 / 6 | 5 / 7 / 10 |
TANK_LEGGINGS | PROTECTION | 2 / 3 / 4 | 2 / 3 / 4 | 5 / 6 / 8 |
TANK_BOOTS | PROTECTION | 2 / 3 / 4 | 3 / 4 / 6 | 5 / 7 / 10 |
SHIELDS | PROTECTION | 2 / 3 / 4 | 3 / 4 / 7 | 5 / 7 / 10 |
Équilibrer un donjon
- Choisissez le niveau de combat et la synchronisation de niveau du donjon avec le guide de difficulté. Gardez les ID de difficulté explicites.
- Attribuez
TRASH,MINIBOSSetBOSSselon le rôle de chaque rencontre. Ils sélectionnent la qualité et la fréquence du butin, pas les PV ou les dégâts du boss. - Commencez par les profils générés ci-dessus. Réglez
ClassLootSettings.ymlpour modifier la base dans tout le contenu, plutôt que de cloner chaque objet nommé trois fois. - Évaluez les objets finaux tirés, y compris les effets secondaires et rares. Augmenter un plafond accroît le nombre d'unités de niveau disponibles, pas une statistique garantie sur chaque récompense. La synchronisation de niveau préserve l'importance de la qualité des enchantements ; une forte hausse de plafond peut donc compter bien au-delà d'un donjon.
- Tenez compte des participants admissibles et du nombre de rencontres. Une chance de boss de 100% s'applique par participant admissible ; ce n'est pas un objet garanti pour tout le groupe. Des miniboss répétés peuvent fournir plus d'équipement que la rencontre finale.
- Examinez les récompenses exceptionnelles définies à la main avec la base. Gardez leurs particularités intentionnelles ; ne faites pas de chaque objet spécial une amélioration inconditionnelle de tous les objets de base. Utilisez les commandes de cette page avant un test en jeu.
La survie des boss suit toujours les valeurs recommandées pour les boss, séparément. Aucune formule ne convertit healthMultiplier en niveau d'enchantement. Validez la durée des rencontres et l'économie des récompenses en jouant après la révision de la configuration.
Disponibilité de la magie et migration
validWeapons.STAVES et validWeapons.WANDS dans ProceduralItemGenerationSettings.yml valent true par défaut. FMM doit aussi être compatible et opérationnel. Des services magiques absents ou en cours de rechargement retirent ces familles de la sélection ; les réglages de mondes du Advanced Combat System ne déterminent pas la disponibilité des objets.
Un objet magique CLASS_LOOT déclare weaponType. Omettez fmmItemModel pour utiliser l'arme fournie pour cette famille, ou indiquez un ID valide d'arme FMM créée. Les bâtons utilisent un matériau de lance compatible ; les baguettes utilisent BLAZE_ROD. Un modèle purement visuel ne remplace pas une arme magique fonctionnelle.
dropProcedurallyGeneratedItems contrôle les récompenses procédurales ordinaires. La couverture de classe utilise ses propres réglages globaux et par boss. Les noms procéduraux viennent de staffNames et wandNames dans StaticItemNames.yml ; ceux des objets de classe viennent de leurs fichiers d'objets personnalisés.
Pour l'ancien contenu de test, remplacez la présentation côté boss par des objets personnalisés CLASS_LOOT et des références habituelles de butin. Les clés d'enchantements natifs des profils gardent leur format existant ; les références d'objets personnalisés aux enchantements magiques exigent des ID avec espace de noms comme freeminecraftmodels:multicast,2.