Créer des Arènes
Créer des arènes
Créez un fichier .yml au nom unique dans plugins/EliteMobs/customarenas, puis exécutez /em reload une fois les mondes et contenus référencés chargés. Les références utilisent le nom complet, extension .yml comprise. Définissez chaque vague de 1 à un waveCount positif, et ne référencez que des points d'apparition définis dans le fichier. EliteMobs le vérifie au chargement de l'arène : une vague absente, une vague supérieure à waveCount, un point d'apparition inconnu ou une entrée spawnPoints ou bossList mal formée enregistre un avertissement et l'arène ne se charge pas. En cours de partie, si un mob d'une vague ne parvient pas à apparaître, la partie se termine par une défaite.
Rejoindre et lancer une arène
Une arène utilise une région physique existante ; elle ne clone pas un monde pour chaque groupe. Son PNJ ouvre un menu. Le bouton de joueur admet un participant seulement si la partie attend encore, s'il reste une place, si le joueur possède la permission configurée et s'il n'est pas déjà dans une autre partie. Le début du compte à rebours ferme les admissions.
Après admission, les joueurs arrivent à teleportLocation, ou à startLocation sans hall configuré. Un participant ayant elitemobs.instance.start peut utiliser /em start lorsque minimumPlayerCount est atteint. Le compte à rebours vérifie à nouveau ce minimum, puis téléporte les participants à startLocation et prépare la vague 1. Joueurs et spectateurs quittent avec /em quit.
Gardez le départ, le hall et les apparitions de boss dans la région, sur un sol sûr. Le contrôle des limites fonctionne aussi pendant l'attente et ramène les joueurs et spectateurs qui en sortent. Pendant le combat, il expulse les intrus sauf ceux ayant elitemobs.*. Les téléportations ordinaires sont restreintes pendant l'inscription à la partie ; utilisez la commande de sortie.
allowSpectatorsInInstancedContent dans dungeons.yml contrôle le bouton de spectateur et les réanimations. Avec cette option, un joueur à terre peut attendre en spectateur qu'un coéquipier frappe sa bannière ; le compteur permet trois réanimations. Sans joueur actif restant, la partie se termine par une défaite. Si l'option est désactivée, le joueur à terre quitte immédiatement. Les spectateurs ne reçoivent aucune récompense de vague et repassent en Survie en quittant ce mode.
La vague suivante commence quand toutes les entités suivies de la vague sont mortes ou devenues invalides ; chaque disparition ne doit pas forcément être une élimination par un joueur. La dernière vague remet ses récompenses puis termine la partie. La réinitialisation retire les mobs et bannières restants, fait sortir les participants et libère l'arène. La préparation est en secondes, mais la réinitialisation après la partie utilise actuellement la même valeur numérique en ticks.
arenaContainer
Utilisez arenaContainer: another_arena.yml pour partager une arène physique entre plusieurs définitions de partie. L'arène référencée, qui doit être activée, fournit les coins, départ, sortie, hall, points d'apparition et forme cylindrique. Le fichier courant conserve vagues, récompenses, messages, permission et limites de joueurs. Une seule partie peut occuper l'arène partagée, dès l'admission de joueurs ou spectateurs avant le combat. Elle est libérée à la réinitialisation ou à l'annulation d'une admission vide. Les chaînes de références sont acceptées, mais les références absentes et cycles sont rejetés. Omettez cette clé pour une géométrie propre à l'arène.
isEnabled
Définit si l'arène est activée.
| Clé | Valeurs | Défaut |
|---|---|---|
isEnabled | Boolean | true |
Exemple
isEnabled: true
arenaName
Définit le nom de l'arène.
| Clé | Valeurs | Défaut |
|---|---|---|
arenaName | String | aucune — définissez-la |
Définissez toujours arenaName explicitement. Sans cette clé, l'arène n'a pas de nom affiché.
Exemple
arenaName: Bedrock Arena

corner1
Définit le premier coin de l'arène.
| Clé | Valeurs | Défaut |
|---|---|---|
corner1 | Location | aucun |
Exemple
corner1: my_arena_world,10,50,-10,0,0
Le format est world_name,x,y,z,yaw,pitch : nom du monde, coordonnées, rotation horizontale (0–360) et verticale (-90 à 90). La forme courte world_name,x,y,z est aussi acceptée, avec yaw et pitch à 0.
Les arènes en attente sont réessayées au chargement du monde de corner1. Si un monde de sortie distinct charge ensuite, cet événement ne relance pas l'arène ; exécutez /em reload après le chargement de tous les mondes référencés.
Sur cette image, corner1 est représenté par de la laine verte et corner2 est représenté par de la laine rouge. Cette configuration désigne la zone entre les deux comme étant l'arène, représentée par de la laine jaune.

corner2
Coin opposé de l'arène. Incluez toute sa hauteur ainsi que X/Z : deux coins au même Y donnent une région sans hauteur. Les deux coins et startLocation doivent être dans le même monde.
| Clé | Valeurs | Défaut |
|---|---|---|
corner2 | Location | aucun |
Exemple
corner2: my_arena_world,-10,80,10,0,0
Sur cette image, corner1 est représenté par de la laine verte et corner2 est représenté par de la laine rouge. Cette configuration désigne la zone entre les deux comme étant l'arène, représentée par de la laine jaune.

startLocation
Lieu où les participants commencent le combat et où les spectateurs arrivent. Sans teleportLocation, les joueurs y attendent aussi. Placez-le sur un sol sûr dans la région.
| Clé | Valeurs | Défaut |
|---|---|---|
startLocation | Location | aucun |
Exemple
startLocation: my_arena_world,1,50,1,0,0
exitLocation
Destination des sorties normales, du nettoyage et de l'expulsion des intrus. Placez-la hors de l'arène. Un joueur éliminé par des dégâts mortels peut plutôt revenir à sa position enregistrée avant l'entrée.
| Clé | Valeurs | Défaut |
|---|---|---|
exitLocation | Location | aucun |
Exemple
exitLocation: my_world,1,50,1,0,0
waveCount
Nombre de vagues. Utilisez un entier positif et au moins une entrée de boss pour chaque vague de 1 à ce nombre ; sinon l'arène ne se charge pas.
| Clé | Valeurs | Défaut |
|---|---|---|
waveCount | Integer | 0 |
Exemple
waveCount: 10
delayBetweenWaves
Délai de préparation en secondes avant chaque vague, première comprise. Utilisez un entier positif ou nul.
| Clé | Valeurs | Défaut |
|---|---|---|
delayBetweenWaves | Integer | 0 |
Exemple
delayBetweenWaves: 5
rawIntermissionWaves
Double la préparation avant chaque vague indiquée : delayBetweenWaves * 2.
Utile si vous voulez accorder aux joueurs un court répit entre certaines vagues.
| Clé | Valeurs | Défaut |
|---|---|---|
rawIntermissionWaves | Integer List | aucun |
Exemple
rawIntermissionWaves:
- '5'
- '10'
- '15'
spawnPoints
Points d'apparition nommés pour les boss de l'arène. Chaque point nécessite un name et une location valide dans le même monde que startLocation, sinon l'arène ne se charge pas. bossList doit reprendre les noms exactement. Réutiliser un nom remplace son emplacement précédent.
| Clé | Valeurs | Défaut |
|---|---|---|
spawnPoints | String List [1] | aucun |
Exemple
spawnPoints:
- name=north:location=my_arena_world,219.5,71,273.5
- name=south:location=my_arena_world,219.5,71,316.5
- name=west:location=my_arena_world,197.5,71,295.5
- name=east:location=my_arena_world,240.5,71,295.5
- name=center:location=my_arena_world,219.5,71,295.5
bossList
Boss de chaque vague. Une entrée fait apparaître une entité ; répétez-la pour en obtenir plusieurs. EliteMobs utilise le fichier de boss avec .yml. MythicMobs utilise le nom interne du mob et nécessite le plugin et le mob chargés.
| Clé | Valeurs | Défaut |
|---|---|---|
bossList | String List [2] | aucun |
Exemple
bossList:
- wave=1:spawnPoint=north:boss=my_boss_wave_1.yml
- wave=1:spawnPoint=south:boss=my_boss_wave_1.yml
- wave=2:spawnPoint=center:boss=my_mythicmobs_boss:mythicmob=true:level=10
Dans cet exemple, la vague 1 fera apparaître un boss au point d'apparition nord et un boss au point d'apparition sud. Puis, à la vague 2, un boss mythic apparaîtra, au niveau 10, au point central.
Les paramètres valides sont wave, spawnPoint, boss, mythicmob et level.
level ne s'applique qu'aux entrées MythicMobs. Les boss EliteMobs utilisent le niveau de leur propre configuration.
rawArenaReward
Récompenses de vague. Chaque entrée est tirée séparément pour chaque joueur actif à la fin de sa vague, avant la préparation suivante, dernière vague comprise. Spectateurs et joueurs partis sont exclus. Si la vague contient un boss EliteMobs de niveau positif, un joueur est exclu lorsque l'écart absolu entre son niveau de combat basé sur les compétences et le boss le plus fort dépasse lootLevelDifferenceLockout dans ItemSettings.yml. Les niveaux MythicMobs ne servent pas à cette comparaison. Aucun pourcentage minimal de dégâts n'est exigé.
Utilisez le format texte ci-dessous : wave désigne la vague terminée et itemlevel le niveau demandé, par défaut 1. Les règles de niveau fixe ou limité de l'objet restent applicables. Les objets vont dans l'inventaire, le surplus tombe à proximité, et la monnaie est créditée au solde. Probabilité, quantité et permissions du butin restent vérifiées ; les filtres de donjon difficultyID ne limitent pas une arène ordinaire. Les boss EliteMobs d'arène utilisent le combat normalisé sauf si leur fichier impose scaledCombat: true ; leur butin elite, aléatoire et vanilla ordinaire est désactivé.
| Clé | Valeurs | Défaut |
|---|---|---|
rawArenaReward | Table de butin universelle EliteMobs | aucun |
Exemple
rawArenaReward:
- filename=enchanted_book_damage_all.yml:wave=5:chance=0.25
- filename=elite_scrap_tiny.yml:wave=1:chance=0.5:amount=5
- currencyAmount=3:wave=3
- itemlevel=5:filename=summon_merchant_scroll.yml:wave=5
- filename=magmaguys_toothpick.yml:itemlevel=10:wave=10:chance=0.95
minimumPlayerCount
Définit le nombre minimum de joueurs qu'une arène doit avoir avant de démarrer.
| Clé | Valeurs | Défaut |
|---|---|---|
minimumPlayerCount | Integer | 1 |
Exemple
minimumPlayerCount: 1
maximumPlayerCount
Définit le nombre maximum de joueurs qu'une arène peut avoir. Les joueurs qui tentent de rejoindre une arène pleine sont informés qu'elle est pleine et ne sont pas admis.
Définissez-la explicitement. La valeur par défaut est 0, et toute valeur inférieure à 1 est traitée comme 1 : une arène sans cette clé n'admet donc qu'un seul joueur. Un minimumPlayerCount supérieur à cette valeur est abaissé pour lui correspondre.
| Clé | Valeurs | Défaut |
|---|---|---|
maximumPlayerCount | Integer | 0 |
Exemple
maximumPlayerCount: 100
arenaMessages
Messages envoyés aux joueurs et spectateurs au début de la préparation de la vague indiquée, avant son délai. Une entrée ultérieure pour la même vague remplace la précédente.
| Clé | Valeurs | Défaut |
|---|---|---|
arenaMessages | Spécial [3] | aucun |
Exemple
arenaMessages:
- 'wave=1:message=&a[Arena Announcer] &fTime for wave one!'
- 'wave=2:message=&a[Arena Announcer] &fWow, wave two already.'

cylindricalArena
Utilise un cylindre plutôt qu'un pavé. Son centre X/Z est entre les coins, sa base est le Y inférieur, sa hauteur leur différence en Y et son rayon la moitié de leur différence en X. L'écart en Z ne détermine pas le rayon. Le bord circulaire extérieur et le Y supérieur sont exclus ; gardez les positions jouables à l'intérieur. Le pavé inclut ses deux coins.
| Clé | Valeurs | Défaut |
|---|---|---|
cylindricalArena | Boolean | false |
Exemple
cylindricalArena: false
permission
Permission pour entrer comme combattant. Omettez la clé pour une entrée libre. Le bouton de spectateur ne vérifie actuellement pas cette permission : elle ne restreint pas les spectateurs.
| Clé | Valeurs | Défaut |
|---|---|---|
permission | String | aucun |
Exemple
permission: mypermission.arena
teleportLocation
Lieu d'attente facultatif après admission comme joueur depuis le menu. L'interaction seule avec le PNJ ne téléporte pas. Gardez le hall dans la région, sinon le contrôle des limites ramène les joueurs au départ. Sans cette clé, ils attendent à startLocation. Cela ne permet pas à un autre groupe d'attendre dans une arène partagée occupée.
| Clé | Valeurs | Défaut |
|---|---|---|
teleportLocation | Location | aucun |
Exemple
teleportLocation: my_arena_world,10,50,10,0,0
Spécial [1]
Points d'apparition : utilise le format suivant : name=pointName:location=world_name,x,y,z.
Spécial [2]
Liste de boss : wave=X:spawnPoint=Y:boss=bossfilename.yml.
Deux clés facultatives sont disponibles :
| Clé | Description | Valeurs | Défaut |
|---|---|---|---|
level | Modifie seulement le niveau d'une entrée mythicmob=true. EliteMobs utilise sa propre configuration. | Entier | -1 est transmis à MythicMobs si omis ; définissez un niveau positif |
mythicmob | Interprète boss= comme nom de mob MythicMobs plutôt que fichier EliteMobs. Nécessite MythicMobs. | true / false | false |
Exemple : wave=3:spawnPoint=center:boss=my_mythic_boss:mythicmob=true:level=40
Les entrées sont séparées par :, puis au premier =. Les clés ne sont pas sensibles à la casse. Une clé inconnue ou répétée, une clé sans valeur, l'absence de wave, spawnPoint ou boss, une wave inférieure à 1, un level inférieur à 1 ou une valeur mythicmob autre que true ou false empêche le chargement de l'arène avec un avertissement. Les noms de points d'apparition et les identifiants de boss doivent correspondre exactement à leurs références.
Spécial [3]
Messages d'arène : utilise le format suivant : wave=X:message=votre message ici.
Le texte du message peut contenir des deux-points : il va de message= jusqu'à la fin de l'entrée, ou jusqu'à un champ :wave= suivant. Seules les vagues à partir de 1 sont acceptées. Entourez toute l'entrée de guillemets YAML si nécessaire ; des guillemets placés seulement après message= sont affichés dans le texte.
Exemple de configuration d'arène
isEnabled: true
arenaName: Example Arena
corner1: my_arena_world,0,0,0,0,0
corner2: my_arena_world,50,50,50,0,0
startLocation: my_arena_world,25,0,25,0,0
exitLocation: my_minecraft_world,234,44,245,0,0
waveCount: 5
delayBetweenWaves: 5
spawnPoints:
- name=north:location=my_arena_world,40.5,0,0
- name=south:location=my_arena_world,10.5,0,0
- name=west:location=my_arena_world,0,0,40.5
- name=east:location=my_arena_world,0,0,10.5
- name=center:location=my_arena_world,25.5,0,25.5
bossList:
- wave=1:spawnPoint=north:boss=example_arena_wave_1_mob.yml
- wave=1:spawnPoint=center:boss=example_arena_wave_1_mob.yml
- wave=1:spawnPoint=south:boss=example_arena_wave_1_mob.yml
- wave=2:spawnPoint=center:boss=example_arena_wave_2_mob.yml
- wave=3:spawnPoint=east:boss=example_arena_wave_3_mob.yml
- wave=3:spawnPoint=west:boss=example_arena_wave_3_mob.yml
- wave=4:spawnPoint=center:boss=example_arena_wave_4_mob.yml
- wave=4:spawnPoint=center:boss=example_arena_wave_4_mob.yml
- wave=5:spawnPoint=center:boss=example_arena_wave_5_mob.yml
- wave=5:spawnPoint=south:boss=example_arena_wave_5_mob.yml
- wave=5:spawnPoint=west:boss=example_arena_wave_5_mob.yml
rawArenaReward:
- currencyAmount=5:wave=1
- currencyAmount=10:wave=2
- currencyAmount=15:wave=3
- currencyAmount=20:wave=4
- currencyAmount=25:wave=5
- filename=magmaguys_toothpick.yml:itemlevel=5:wave=5:chance=0.5
minimumPlayerCount: 1
maximumPlayerCount: 3
arenaMessages:
- wave=1:message=&d[Arena NPC] &fWow! Wave 1!
- wave=2:message=&d[Arena NPC] &fAmazing it is wave 2!
- wave=3:message=&d[Arena NPC] &fWave 3 is now on!
- wave=4:message=&d[Arena NPC] &fWave 4 already!
- wave=5:message=&d[Arena NPC] &fWell it is all over after this one.
cylindricalArena: false
permission: arena.mypermission
Décomposition de l'exemple
Passons en revue cet exemple du début et expliquons ce que fait cette configuration d'arène.
D'abord, l'arène est activée avec isEnabled, et nous pouvons voir qu'elle s'appelle Example Arena grâce au réglage arenaName. Le nom sera affiché lorsque vous interagissez avec le PNJ de l'arène (nous expliquons comment créer un PNJ d'arène plus bas) qui permettra aux joueurs de rejoindre l'arène. corner1 et corner2 définissent la taille de l'arène. Ces coins devraient se trouver aux côtés opposés l'un de l'autre dans la zone que vous prévoyez d'utiliser pour l'arène.
startLocation est le départ du combat. Sans hall distinct dans cet exemple, les joueurs y attendent aussi. exitLocation est la sortie normale dans my_minecraft_world ; une élimination mortelle peut plutôt utiliser la position enregistrée avant l'entrée. Remplacez les coordonnées par des emplacements sûrs dans vos mondes chargés.
waveCount définit simplement le nombre de vagues que durera l'arène. Dans ce cas, ce serait 5 vagues. Si les joueurs parviennent à survivre aux 5 vagues, ils ont réussi à survivre à l'arène. delayBetweenWaves définit le nombre de secondes avant que la prochaine vague ne démarre. Dans notre exemple, les joueurs auraient 5 secondes pour se préparer avant le début de la vague suivante.
spawnPoints définit les emplacements où nos créatures peuvent apparaître. Nous pouvons en créer autant que nous le souhaitons et les nommer comme bon nous semble. Dans l'exemple, nous avons décidé de créer 5 points d'apparition et de les nommer north, south, center, east et west.
bossList est l'endroit où nous définissons quel boss doit apparaître à quelle vague et à quel emplacement. Dans l'exemple, la vague 1 fera apparaître 3 boss depuis les emplacements d'apparition que nous avons nommés north, center et south. Tous les trois sont configurés pour utiliser le même fichier de boss, mais nous aurions pu utiliser des fichiers de boss différents pour chacun.
rawArenaReward donne 5 pièces elite aux joueurs actifs admissibles après la vague 1. La vague 5 donne 25 pièces et une chance indépendante de 50 % d'obtenir la récompense MagmaGuy's Toothpick configurée au niveau 5. La restriction de niveau de combat et les conditions de butin décrites plus haut restent applicables.
minimumPlayerCount: 1 permet de lancer avec un joueur. maximumPlayerCount: 3 accepte au maximum trois participants ; les suivants sont refusés avec le message d'arène pleine.
arenaMessages vous permet d'ajouter un texte d'ambiance qui sera affiché dans le chat au début des vagues définies. Dans notre exemple, nous avons décidé d'afficher un court message au début de chaque vague. Nous avons aussi décidé d'inclure le nom du PNJ au début de chaque message, donnant l'illusion que le texte est un dialogue prononcé par l'annonceur (le maître d'arène).
cylindricalArena ce réglage nous permettra de basculer pour savoir si la zone définie que nous avons fixée avec corner1 et corner2 doit avoir une forme cylindrique plutôt que cuboïde. Dans notre exemple, nous l'avons défini sur false, ce qui signifie que l'arène d'exemple a une forme cuboïde.
permission exige arena.mypermission pour entrer comme joueur. Lancer nécessite aussi elitemobs.instance.start ; l'entrée en spectateur ne vérifie pas la permission d'arène.
Créer le PNJ de l'arène
Enregistrez un PNJ .yml au nom unique dans plugins/EliteMobs/npcs/, avec interactionType: ARENA_MASTER et arena: your_arena.yml. Rechargez après modification, puis placez-le avec /em place npc <npcfilename.yml> et elitemobs.place.npc, ou configurez spawnLocations. La référence des PNJ décrit placement, suppression, scripts, patrol, classRoot et transportRoutes.
isEnabled
Définit si le PNJ est activé.
| Clé | Valeurs | Défaut |
|---|---|---|
isEnabled | Boolean | true |
Exemple
isEnabled: true
name
Définit le nom d'affichage du PNJ.
| Clé | Valeurs | Défaut |
|---|---|---|
name | Chaîne | vide |
Exemple
name: "&aGladius"

role
Définit le rôle affiché sous le nom du PNJ.
| Clé | Valeurs | Défaut |
|---|---|---|
role | Chaîne | vide |
Exemple
role: "&c<Arena Master>"

profession
Définit la profession Minecraft du PNJ.
| Clé | Valeurs | Défaut |
|---|---|---|
profession | Profession | NITWIT |
Exemple
profession: ARMORER
Sera remplacé si un disguise est utilisé.

spawnLocation
Ancien emplacement unique, utilisé seulement si spawnLocations est vide ou absent. Préférez la liste et retirez cette ancienne clé lors d'une migration, sinon vider la liste peut restaurer l'ancien emplacement.
| Clé | Valeurs | Défaut |
|---|---|---|
spawnLocation | Location | aucun |
Exemple
spawnLocation: my_world,1.5,50,1.5,-108,0
spawnLocations
Placements enregistrés du PNJ. Une liste non vide remplace spawnLocation, elle ne s'y ajoute pas. Les mondes référencés doivent être chargés. Chaque emplacement crée un PNJ distinct utilisant cette configuration.
| Clé | Valeurs | Défaut |
|---|---|---|
spawnLocations | String List | aucun |
Exemple
spawnLocations:
- my_world,1.5,50,1.5,-108,0
- my_world,100.5,50,50.5,0,0
greetings
Salutations aléatoires à l'entrée détectée dans le rayon. La proximité est vérifiée tous les 100 ticks ; une visite brève peut être manquée. Le délai de parole de trois secondes est partagé entre joueurs pour chaque PNJ : saluer un autre joueur peut empêcher votre salutation.
| Clé | Valeurs | Défaut |
|---|---|---|
greetings | String List | aucun |
Exemple
greetings:
- Welcome to the Arena!
- The Arena welcomes you!

dialog
Pour ARENA_MASTER, répliques aléatoires de proximité lors des vérifications suivantes tant que le joueur reste proche. Le clic ouvre le menu d'arène. Seul CHAT utilise cette liste comme action intégrée au clic.
| Clé | Valeurs | Défaut |
|---|---|---|
dialog | String List | aucun |
Exemple
dialog:
- Ready for a challenge?
- Face the Arena?

farewell
Répliques d'adieu aléatoires à la fermeture de tout inventaire au titre non vide dans une boîte de 5 blocs par axe autour du PNJ, sous réserve du délai de parole. Ce n'est pas nécessairement son menu ; s'éloigner seul ne déclenche rien.
| Clé | Valeurs | Défaut |
|---|---|---|
farewell | String List | aucun |
Exemple
farewell:
- Bye.
- Return with your shield, or on it!

Utilisez un \n littéral dans une chaîne YAML simple ou entre apostrophes pour séparer les lignes de la bulle.
farewell:
- Bye.
- Return with your\nshield, or on it!

canTalk
Active les bulles ordinaires de salutation, dialogue et adieu. Le désactiver ne désactive ni menu d'arène, ni dialogue de quête, ni scripts, ni marqueurs.
| Clé | Valeurs | Défaut |
|---|---|---|
canTalk | Boolean | true |
Exemple
canTalk: true
activationRadius
Rayon tridimensionnel de proximité en blocs. Une valeur nulle ou négative désactive la détection ; les marqueurs de quête ont leur propre portée. Le déplacement ou l'édition d'une patrouille suspend la parole de proximité pendant son activité.
| Clé | Valeurs | Défaut |
|---|---|---|
activationRadius | Double | 3.0 |
Exemple
activationRadius: 3.0
timeout
Durée de vie en minutes ; zéro ou moins désactive l'expiration. Retire le PNJ actif mais garde son placement, qui peut revenir au rechargement ou à la restauration du chunk. Utilisez la procédure de suppression des PNJ pour retirer définitivement le placement.
| Clé | Valeurs | Défaut |
|---|---|---|
timeout | Double | 0 |
Exemple
timeout: 60
interactionType
Définit le type d'interaction que le PNJ effectuera.
| Clé | Valeurs | Défaut |
|---|---|---|
interactionType | Spécial [4] | NONE |
Exemple
interactionType: ARENA_MASTER
disguise
Définit le déguisement personnalisé du PNJ.
| Clé | Valeurs | Défaut |
|---|---|---|
disguise | Disguise | aucun |
Exemple
disguise: ZOMBIE

customDisguiseData
Données d'un déguisement nommé de LibsDisguises. Associez-les à disguise: custom:your_disguise_name ; ce champ seul n'active pas de déguisement.
| Clé | Valeurs | Défaut |
|---|---|---|
customDisguiseData | String | aucun |
Exemple
disguise: custom:arena_guide
customDisguiseData: player MHF_Pig
customModel
Modèle personnalisé chargé. FreeMinecraftModels est prioritaire lorsqu'il est disponible ; un modèle absent ne provoque pas de nouvel essai via ModelEngine. Un modèle fonctionnel prime visuellement sur le déguisement. Les joueurs ont besoin des ressources correspondantes dans leur pack.
| Clé | Valeurs | Défaut |
|---|---|---|
customModel | String | aucun |
Exemple
customModel: my_model
arena
Définition d'arène ouverte par ARENA_MASTER, avec .yml. Elle doit être activée et correctement initialisée. Ouvrir le menu n'admet ni ne téléporte automatiquement le joueur.
| Clé | Valeurs | Défaut |
|---|---|---|
arena | Filename | aucun |
Exemple
arena: my_arena.yml
command
Commande exécutée par le joueur, avec ses permissions. Nécessite interactionType: COMMAND. Omettez la barre initiale ; $player n'est pas remplacé.
| Clé | Valeurs | Défaut |
|---|---|---|
command | String | aucun |
Exemple
command: say Hello
questFileName
Définit les noms de fichiers de quête pour le PNJ. Nécessite que interactionType soit défini sur CUSTOM_QUEST_GIVER.
| Clé | Valeurs | Défaut |
|---|---|---|
questFileName | String List | aucun |
Exemple
questFileName:
- my_quest_1.yml
- my_quest_2.yml
noPreviousLocationMessage
Pour TELEPORT_BACK, message en l'absence de position de retour EliteMobs enregistrée. Cette position vient d'une téléportation EliteMobs depuis un monde extérieur à EliteMobs ; ce n'est pas simplement le dernier lieu parcouru ou celui d'une mort.
| Clé | Valeurs | Défaut |
|---|---|---|
noPreviousLocationMessage | Chaîne | vide |
Exemple
noPreviousLocationMessage: '&cCouldn''t find a previous location!'
instanced
Déclare un modèle de PNJ pour donjons instanciés au lieu de le faire apparaître dans le monde de référence. Les PNJ d'arène ordinaires utilisent false ; cette clé ne transforme pas une arène physique en donjon cloné.
| Clé | Valeurs | Défaut |
|---|---|---|
instanced | Boolean | false |
Exemple
instanced: false
scale
Échelle du villageois sous-jacent. Un déguisement ou modèle peut gérer sa propre taille visuelle ; ce champ ne garantit pas une taille identique avec chaque fournisseur.
| Clé | Valeurs | Défaut |
|---|---|---|
scale | Double | 1.0 |
Exemple
scale: 1.0
syncMovement
Synchronisation du mouvement du modèle avec le PNJ. Une patrouille valide la force même si ce champ vaut false, y compris lorsque la patrouille est en pause.
| Clé | Valeurs | Défaut |
|---|---|---|
syncMovement | Boolean | true |
Exemple
syncMovement: true
Exemple de configuration d'arène
isEnabled: true
name: Example NPC
role: <Arena Master>
profession: ARMORER
spawnLocations:
- my_minecraft_world,233,44,245,0,0
greetings:
- Welcome to the Arena!
dialog:
- Ready to enter the Arena?
farewell:
- Bye!
canTalk: true
activationRadius: 3.0
interactionType: ARENA_MASTER
disguise: ZOMBIE
arena: example_arena.yml
Cet exemple montre un PNJ d'arène basique qui apparaîtra dans my_minecraft_world avec un déguisement de zombie. Les joueurs peuvent interagir avec ce PNJ pour défier l'Example Arena.
Spécial [4]
Voici la liste des types d'interaction de PNJ valides :
| Type | Description |
|---|---|
GUILD_GREETER | Ouvre les bonus de compétences ; nécessite elitemobs.skill.npc. |
CLASS_TRAINER | Ouvre la formation de classRoot avec [Alpha] Advanced Combat System activé ; nécessite elitemobs.command. |
TRANSPORT | Ouvre les destinations de transportRoutes ; voir Transport. |
CHAT | Un clic droit choisit une ligne aléatoire de dialog. |
CUSTOM_SHOP | Ouvre le menu de la boutique personnalisée |
PROCEDURALLY_GENERATED_SHOP | Ouvre la boutique générée procéduralement |
BAR | Affiche le message indiquant que cette fonction sera disponible prochainement. |
ARENA | Ne fait rien. Utilisez ARENA_MASTER à la place. |
QUEST_GIVER | Ouvre le menu des quêtes générées procéduralement |
CUSTOM_QUEST_GIVER | Ouvre le menu de quête pour une quête spécifique définie dans questFileName |
NONE | Aucune action intégrée ; scripts, proximité et dialogue de quête peuvent fonctionner. |
SELL | Ouvre le menu de vente |
TELEPORT_BACK | Utilise la position de retour EliteMobs ; nécessite elitemobs.back.npc. |
SCRAPPER | Ouvre le menu de récupération (scrap) |
SMELTER | DÉPRÉCIÉ - Fonctionnalité supprimée, ne pas utiliser |
REPAIRMAN | Ouvre le menu de réparation |
ENHANCER | DÉPRÉCIÉ - Fonctionnalité supprimée, ne pas utiliser |
REFINER | DÉPRÉCIÉ - Fonctionnalité supprimée, ne pas utiliser |
UNBINDER | Ouvre le menu de déliaison |
ARENA_MASTER | Ouvre le menu d'arène pour l'arène définie dans arena |
COMMAND | Exécute la commande définie dans command |
ENCHANTER | Ouvre le menu d'enchantement |
SCROLL_APPLIER | Ouvre le menu d'application de parchemins |
ARROW_SHOP | Ouvre le menu de la boutique de flèches |
GAMBLING_BLACKJACK | Ouvre le jeu d'argent de blackjack |
GAMBLING_COINFLIP | Ouvre le jeu d'argent de pile ou face |
GAMBLING_SLOTS | Ouvre le jeu d'argent de machine à sous |
GAMBLING_HIGHERLOWER | Ouvre le jeu d'argent plus haut/plus bas |
Les autres types ont leurs propres permissions et réglages. Consultez la référence des interactions de PNJ avant de les utiliser ; une entrée d'arène nécessite ARENA_MASTER.
