Aidez nous a financer le site: Joignez l'utile à l'agréable et profitez d'FR-Minecraft sans publicités en
devenant VIP ! Ou ajoutez FR-Minecraft dans vos exceptions, nous n'abusons pas des pubs
Hier nous vous expliquions que Dinnerbone était en train d'implémenter un nouveau système permettant de créer des loots aléatoires. Si vous n'avez pas lu l'article,
lisez le avant toute chose.
Aujourd'hui Dinnerbone nous explique plus en détail le fonctionnement de ces loots aléatoires.
Les loots seront inscrit dans des fichiers de configurations liées à la map, il ne sera donc pas possible des les modifier via des commandes, ni via des packs de ressources. C'est pourquoi cette fonctionnalité sera surtout utile aux maps makers. Chaque fichier de configuration aura un nom, il sera ensuite possible, en modifier les tag NBT, d'affecter un fichier de configuration à un mob, un coffre ou n'importe quel bloc en particulier. Il sera possible de réutiliser les fichiers déjà existant (par exemple reprendre le contenu aléatoire d'un coffre d'un donjon ailleurs dans le jeu), mais il sera aussi possible de créer ses propres configurations personnalisées qui seront liées à la map (le fichier de configuration sera inclu dans le dossier d'enregistrement de la map).
Dinnerbone nous propose aujourd'hui un nouvel exemple de configuration plus complet qu'hier: les coffres des villes de l'end:
end_city_treasure.json
{
"rolls": {
"min": 2,
"max": 6
},
"items": [
{
"item": "minecraft:diamond",
"weight": 5,
"functions": [
{
"function": "set_count",
"count": {
"min": 2,
"max": 7
}
}
]
},
{
"item": "minecraft:iron_ingot",
"weight": 10,
"functions": [
{
"function": "set_count",
"count": {
"min": 4,
"max": 8
}
}
]
},
{
"item": "minecraft:gold_ingot",
"weight": 15,
"functions": [
{
"function": "set_count",
"count": {
"min": 2,
"max": 7
}
}
]
},
{
"item": "minecraft:emerald",
"weight": 2,
"functions": [
{
"function": "set_count",
"count": {
"min": 2,
"max": 6
}
}
]
},
{
"item": "minecraft:beetroot_seeds",
"weight": 5,
"functions": [
{
"function": "set_count",
"count": {
"min": 1,
"max": 10
}
}
]
},
{
"item": "minecraft:saddle",
"weight": 3
},
{
"item": "minecraft:iron_horse_armor",
"weight": 1
},
{
"item": "minecraft:golden_horse_armor",
"weight": 1
},
{
"item": "minecraft:diamond_horse_armor",
"weight": 1
},
{
"item": "minecraft:diamond_sword",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:diamond_boots",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:diamond_chestplate",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:diamond_leggings",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:diamond_helmet",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:diamond_pickaxe",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:diamond_shovel",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_sword",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_boots",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_chestplate",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_leggings",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_helmet",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_pickaxe",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
},
{
"item": "minecraft:iron_shovel",
"weight": 3,
"functions": [
{
"function": "enchant_with_levels",
"treasure": true,
"levels": {
"min": 20,
"max": 39
}
}
]
}
]
}
On remarque quelques changements, et des nouvelles fonctions:
-
un champ "rolls" a été ajouté en début du fichier, Dinnerbone n'a pas expliqué son utiliser, peut être est-ce le nombre d'élément à tirer au sort dans cette liste ?
-
Les valeurs "min" et "max" de la fonction "set_count" sont maintenant imbriquées dans un paramètre "count" (changement purement syntaxique)
-
Une nouvelle fonction est utilisé: "enchant_with_levels" qui permet d'enchanté des objets. Il est ensuite possible de spécifié un level d'XP utilier pour l'enchantement
Selon Dinnerbone, le système est d'ores et déjà fonctionnel dans le jeu, et il sera disponible dans la snapshot de ce mercredi. Mais il est possible que certaines fonctionnalités ne soit pas encore finalisées pour la snapshot. Notamment il manque pour le moment les fonctions de prédicats: cela permettra de conditionner la création d'un objet à un événement (par exemple ne donner une potion que si le joueur a déjà visité le Nether, ou s'il a tué l'Enderdragon, etc.).
Parmi les possibilités offertes par ce système Dinnerbone donne quelques exemples de personnalisation possible:
-
Les zombies ne droppent plus rien
-
Les dongeons donnent de la TNT
-
Miner du lapis lazuli à une chance de donner un diamant
-
etc.
Voici un exemple de commande permettant de spawn un zombie qui drop le même type de contenu que les coffres des dongeons:
/summon Zombie ~ ~ ~ {DeathLootTable:chests/simple_dungeon}
Il sera bien sur possible de remplacer "chests/simple_dungeon" par un fichier de configuration que vous auriez créé vous même.
Astuce: si vous souhaitez faire des test, il est possible de modifier les configurations, puis de le recharger sans relancer le jeu en faisant F3+T.
Ce nouveau système semble avoir séduit Searge, qui n'a pas voulu attendre pour en profiter, c'est pourquoi il a créé une nouvelle structure pour le jeu, visible sur cette image, mélant "feu et glace" selon son bref commentaire.
Comme toujours avec Searge, la nouveauté est a chercher dans l'image. Elle pourrait bien être l'igloo visible en haut à droite de l'image:
Nous devrions en savoir plus dès ce mercredi en fin de journée avec la sortie de la snapshot 15w43a.
Minecraft 1.9: Une nouvelle structure avec les Loots Tables :