Ajouté en 1.4, le command block est aujourd’hui incontournable dans l’univers du map making. Il offre un très grand panel de fonctionnalités. Dès aujourd’hui, nous étudierons un système très pratique qui permettra aux map makers d’enrichir leurs connaissances et de créer des systèmes extraordinaires ! Dans cette astuce, nous allons exploiter le drop des items. Il s’agira d’une mécanique que vous pourrez réutiliser et adapter selon votre envie. Nous allons donc étudier plusieurs exemples qui pourront vous donner des éventuelles idées.
Pomme dans un arbre
Abordons le premier exemple. Voici un arbre comportant plusieurs pommes, ici créées grâce à un crâne. Le but est que, lors de la destruction du bloc, le joueur puisse ramasser une vraie pomme au lieu d’une tête.
Voici ce qui devrait normalement se passer après avoir détruit la pomme :
Passons maintenant au système. Le tout tient en quatre blocs de commande ! Le bloc de commande du bas est un repeating command block toujours actif, et les trois autres blocs de commande du haut sont des chain command blocks.
Tout d’abord, placez cette commande dans le command block repeat :
/scoreboard players tag @e[type=Item] add ItemD {Item:{id:minecraft:skull,Damage:3s,Count:1b}}
Elle va appliquer un tag nommé « ItemD » aux items qui seront identifiés comme des têtes, et qui seront au nombre de 1 et auront un data tag de 3 (ce qui correspond aux têtes humaines).
Remplissez ensuite le second command block par :
/execute @e[tag=ItemD] ~ ~ ~ particle cloud ~ ~ ~ 0.1 0.1 0.1 0.03 5 force
Cette commande permettra de créer un nuage de fumée blanche qui cachera la « transformation » de la tête en pomme. Elle créera donc cinq particules de nuage avec une vitesse de 0.03 dans un rayon de 0.1 bloc. La dernière métadonnée est facultative elle permet aux entités les plus éloignées de voir le nuage de particules.
Continuez la rangée avec cette commande :
/execute @e[tag=ItemD] ~ ~ ~ summon Item ~ ~ ~ {Item:{id:minecraft:apple,Count:1b}}
En effet, cette commande fait apparaître un item (ici la pomme) aux coordonnées de l’autre item (ici la tête).
Enfin, pour qu’il ne reste que la pomme, il nous faut tuer toutes les entités ayant le tag « ItemD ». Pour se faire, insérez cette commande :
/kill @e[tag=ItemD]
Cette deuxième version nécessite deux command blocks ! Elle est, certes, plus optimisée mais moins pratique puisqu’il s’agira de rentrer à chaque fois des coordonnées plutôt que de les définir relativement.
Commencez donc par placer cette commande dans le premier command block repeat en mode « always active » :
/testforblock x y z air
Globalement, cette commande teste de manière répétitive si il y a un bloc d’air. Remplacez donc x y z par les coordonnées de la tête à transformer.
Après le comparateur, placez donc le commmand block impulse en « need redstone« . Insérez cette commande :
/entitydata @e[type=Item,x=?,y=?,z=?,r=2] {id:"Item",Item:{id:"apple",Count:1}}
Celle-ci modifiera l’item autour du bloc cassé et la transformera en pomme.
Minerais piégés
Si vous rêvez de piéger vos amis, ce système vous plaira peut-être puisqu’il s’agira de faire apparaître un monstre lors de la destruction d’un minerai !
Le système se base sur le précédent mais en y ajoutant un son, et en modifiant un peu les commandes. Cette-fois ci vous devrez disposer cinq command blocks.
En cassant le minerai d’or, on entent un bruitage d’explosion et un Zombie apparaît !
Tout comme le système précédent, insérez cette commande dans le bloc du bas :
/scoreboard players tag @e[type=Item] add ItemE {Item:{id:minecraft:gold_ore,Count:1b}}
Cette commande assigne donc un tag à toutes les entités qui sont au nombre de un et sont un minerai d’or.
Ensuite, dans le deuxième bloc, placez cette commande :
/execute @e[tag=ItemE] ~ ~ ~ particle cloud ~ ~ ~ 0.5 0.9 0.5 0.01 30 force
Toujours la même commande, mais en diminuant la vitesse et en agrandissant le rayon de fumée.
Dans le command block supérieur, continuez en copiant cette commande :
/execute @e[tag=ItemE] ~ ~ ~ summon Zombie ~ ~ ~
Cette commande fait un apparaître un zombie aux coordonnées relatives du minerai d’or.
Continuez la ligne en tapant cette commande :
/execute @e[tag=ItemE] ~ ~ ~ playsound minecraft:entity.generic.explode master @p ~ ~ ~
Toujours par rapport à l’item de minerai d’or, cette commande joue un son au joueur le plus proche et dans la section master du menu volume (Ici, explosion).
Finissez le système en tuant toutes les entités ayant le tag en insérant cette commande :
/kill @e[tag=ItemE]
Rien de plus simple n’est-ce-pas ?
Muffin mangeable
Un tel système permet également d’ajouter des items consommables, comme des muffins, pour votre plus grand plaisir.
Ce tout dernier exemple est plus spécial que les deux autres car il ne s’agira pas de modifier un item mais plutôt de s’en servir pour effectuer des commandes.
Commencez donc par instaurer cette commande dans le premier command block :
/scoreboard players tag @e[type=Item] add ItemF {Item:{id:minecraft:skull,Damage:3s,Count:1b}}
Tout comme le premier système, on associe le tag « ItemF » à toutes les entités qui sont au nombre de un et qui sont des têtes humaines.
On place ensuite cette commande dans le bloc de commande consécutif :
/execute @e[tag=ItemF] ~ ~ ~ particle cloud ~ ~ ~ 0.1 0.1 0.1 0.03 5 force
Qui fait donc apparaître un nuage blanc. Se référer au premier exemple pour plus d’informations.
Dans le troisième bloc, on insère donc la commande suivante :
/execute @e[tag=ItemF] ~ ~ ~ effect @p minecraft:saturation 2 3 true
Cette commande effectue un effet de saturation au joueur le plus proche de la tête pendant deux secondes avec un puissance de 3 (ce qui donne quatre points de nourriture).
Pour continuer la rangée, on instaure cette commande dans le bloc suivant :
/execute @e[tag=ItemF] ~ ~ ~ playsound minecraft:entity.player.burp voice @p ~ ~ ~
Qui émet un son lorsque le joueur mange.
Et enfin, on finit par tuer toutes les entités ayant le tag « ItemF » en insérant cette commande :
/kill @e[tag=ItemF]
Voilà tout. Laissez donc courir votre imagination créer les plus fabuleux systèmes et partagez vos créations avec les autres membres de la communauté Minecraft !
Je ne sais pas si le post est toujours suivi par quelques personnes s’y connaissant en command bloc mais est t’il possible d’ajouter à la command pour pop un monstre quand on détruit un bloc un % de pop afin que cela ne soit pas systématique mais par exemple 5% de pop un zombie lors du minage d’or?
Sa me dit Que le DaTaTag ne correspond pas : »(
Je n’arrive pas a utilisé la technique de la pomme
@anate : Je sais que c’est un peu tard de te répondre maintenant, mais sache que je me suis entretenu avec l’auteur. J’ai été autorisé à reproduire le même tutoriel. Sans plagier, évidemment :D
le tag {Item:{id:minecraft:skull,tag:{SkullOwner:{Name: »Pomme »}},Damage:3s,Count:1b}} marche non ?
Bonjour, bien que les articles puissent sembler similaire de prime-abord, ils résultent d’une réflexion différente, si certains résultats sont similaires, la démarche est tout-à-fait différente.
Bonne journée :)
Il y a u le même article sur fr minecraft il y a quelque mois et il s’appeler « Concept : exploiter le drop des items »
Petite question: pour le premier système on pourrait pas ajouter un test sur le data tag skullOwner pour ne remplacer que les têtes de la bonne texture?
Super intéressant ! Merci :)
Super intéressante comme article! il faudrait en faire d’autre comme ça!
intéressant comme article !
Super tuto, qui va surement en aider plus d’un !
@FireAlpha Globalement, c’est ça. Seul problème : les lags. Mais sa favorise les gens qui ne s’attarde pas trop sur la programmation et le développement ^^
Oui et non, je corrige ça tout de suite ^^
Mais ça changera pas le système étant donné que dans un command block, un « / » n’est pas obligatoire !
Merci ^^
@Mncc
@Arobazzz Oui ! évidemment ! Il a pour but d’aider les redstoners, alors fais toi plaisir ^^
Gé-nial !
En tant que créateur de no-mod débutants, puis-je me servir de ce tuto ?
Article intéressant, ça donne des idées :)
Par contre, dans certaines commandes /execute il y a un deuxième « / » sur la commande à exécuter, ce ne serait pas une erreur ?
En fait les commands blocks, c’est les plugins des maps solo ^^