mercredi , 22 novembre 2017
Accueil / Guides / Tutoriel sur les command blocks

Tutoriel sur les command blocks

Tutoriel sur les command blocks
4.7(93.75%) 32 votes

Ajouté en 1.4, le command block est aujourd’hui incontournable dans une majorité de domaines, que ce soit de la gestion de serveur ou du mapmaking, en passant par les systèmes redstone.

Ce tutoriel a évidemment pour but de présenter le command block, mais également les commandes telles que le /tellraw ou le /scoreboard. Toutes les commandes sont compatibles avec la 1.7, il n’y a donc pas de commandes 1.8 (le gamemode spectateur est toutefois ajouté).

Le command block

Le seul moyen de l’obtenir, n’étant pas craftable ni trouvable dans l’inventaire créatif, est d’exécuter la commande /give <pseudo> 137 1 ou /give <pseudo> minecraft:commandblock 1. Vous devrez de toute manière être opérateur et en créative pour l’éditer.

L’interface ressemblera à cela. Avant d’écrire votre commande, assurez vous d’être opérateur et en créative, sinon cela vous mettra un message disant qu’il faut être OP en créative lorsque vous appuyerez sur “Done”.

En multijoueur, pour activer les command blocks, il faut aller dans le server.properties, mettre “op-permission-level” à 2 ou plus, et mettre “enable-command-blocks” en “true” (cette valeur n’existe pas par défaut, vous devez l’écrire).

Le slash avant la commande n’est pas obligatoire ; “/give @p 1” et “give @p 1” feront la même chose.

Pour désactiver les commandes dans le chat (affichées en gris), utilisez la commande /gamerule commandBlockOutput false (avec les majuscules). Ils sont activés par un courant de redstone et agissent comme un bloc normal (vous pouvez mettre une torche de redstone dessus, etc).

Certaines commandes sont désactivées, pour des raisons différentes :

CatégorieRaison de la désactivationCommandes
Désactivées pour la sécurité du serveurCes commandes sont désactivées car elles pourraient être utilisées pour un mauvais usage. Exemple : un command block de /ban @a relié à une horloge bannirait tout le monde.ban, ban-ip, deop, kick, op, pardon, pardon-ip, save-all, save-off, save-on, stop, whitelist add/remove/on/off/reload, debug, publish
Désactivées pour une raison inconnueCes commandes ne pourraient pas être utilisées pour un mauvais usage, mais ne fonctionnent pas dans des command blocks.banlist, whitelist list
Activées, mais pas d’effet apparentCes commandes ne mettent de messages qu’à leurs utilisateurs ; ainsi, le seul moyen de lire le résultat est de regarder le “Previous output” du command block.help, seed, list, scoreboard objectives/players/teams list

Les comparateurs

Si toutes les conditions de succès d’une commande (indiquées à la fin de chaque commande) sont validées, le command block peut envoyer un signal à un comparateur. Dans les commandes sans aucun sélecteur (exemple : /gamerule), cela envoie un signal de 1 ; dans les commandes avec des sélecteurs, cela envoie un signal dépendant du nombre de joueurs touchés. Ainsi, “/give @p[c=3] 1” fera un signal de 3 et “/give @a 1” fera un signal équivalent au nombre de joueurs sur la map.

Les command blocks doivent être mis à jour (réactivés) pour que le comparateur soit mis à jour. Voici un exemple : il y a un command block avec la commande “/testfor @p[m=2]”, vérifiant s’il y a un joueur en gamemode aventure.

Si je me mets en gamemode aventure et active le levier, le comparateur envoie un signal de 1 car il n’y a qu’une personne en mode aventure.

Toutefois, si je désactive le levier et me remets en créative, le comparateur reste activé. Il faut que je réactive le command block pour que le comparateur n’émette plus de signal.

Les sélecteurs

Trois sélecteurs remplacent les noms des joueurs. Ces derniers sont @a, @p et @r. Les sélecteurs ne sont que pour un monde : si vous êtes dans un autre monde que le command block, le @a ne vous affectera pas.

  • @a est utilisé pour tous les joueurs. “/give @a 1” givera de la pierre à tous les joueurs de la map.
  • @p est utilisé pour le joueur le plus proche. “/give @p 1” givera de la pierre au joueur le plus proche du command block.
  • @r est utilisé pour un joueur aléatoire. “/give @r 1” givera de la pierre à un joueur choisi au hasard se trouvant sur le même monde, quel que soit sa distance.

Les sélecteurs peuvent également être utilisés pour remplacer un nom de joueur. Exemple : “/say Salut, @p !” affichera, si je suis le plus proche, “Salut, Zezombye !”

Paramètres des sélecteurs

Les sélecteurs peuvent avoir des paramètres afin de mieux préciser la sélection. Ils s’utilisent avec la syntaxe suivante : “@<sélecteur>[<paramètre>=<valeur>,<paramètre>=<valeur>]”. Exemple : “@a[r=30,m=2]”.

  • x, y et z sont les coordonnées à mettre. “/give @p[x=64,y=5,z=-35] 1” givera de la pierre au joueur le plus proche de x=64, y=5 et z=-35. Si des coordonnées manquent, les coordonnées du command block sont utilisées. Exemple : si “/give @p[y=128] 1” est mis sur un command block à x 32 y 54 z 68, cela givera de la pierre au joueur le plus proche de x=32, y=128 et z=68.
  • r est le rayon maximum. “/give @a[r=10] 1” givera de la pierre à tous les joueurs dans un rayon de 10 blocs. Le rayon est basé sur les coordonnées (voir ci dessus).
  • rm est le rayon minimum. “/give @a[rm=10] 1” givera de la pierre à tous les joueurs qui sont à plus de 10 blocs des coordonnées (voir ci dessus).
  • m est le gamemode. 0 = survival, 1 = creative, 2 = aventure, 3 = spectateur. “/give @p[m=2] 1” givera de la pierre au joueur le plus proche qui est en gamemode aventure.
  • c est le nombre de joueurs. “/give @r[c=3] 1” givera de la pierre à 3 joueurs aléatoires. Quand c est négatif, cela utilise les joueurs à la fin de la liste ; ainsi, “/give @p[c=3] 1” givera de la pierre aux 3 joueurs les plus proches, mais “/give @p[c=-3] 1” givera de la pierre aux 3 joueurs les plus éloignés.
  • l est le niveau d’expérience maximum. “/give @a[l=10] 1” givera de la pierre à tous les joueurs ayant un niveau de 10 ou moins.
  • lm est le niveau d’expérience minimum. “/give @a[lm=10] 1” givera de la pierre à tous les joueurs ayant un niveau de 10 ou plus.
  • score_name est le score maximum pour l’objectif “name”. “/give @a[score_death=4] 1” givera de la pierre à tous les joueurs ayant un score de 4 ou moins à l’objectif death.
  • score_name_min est le score minimum pour l’objectif “name”. “/give @a[score_death_min=5]” givera de la pierre à tous les joueurs ayant un score de 5 ou plus à l’objectif death.
  • team permet de vérifier si le joueur est dans une équipe. “/give @a[team=red] 1” givera de la pierre à tous les joueurs de l’équipe rouge. Mettre un point d’exclamation avant l’équipe excluera cette équipe : “/give @a[team=!red] 1” givera de la pierre à tous les joueurs qui ne sont pas dans l’équipe rouge.
  • name permet de vérifier le pseudo. “/give @a[name=zezombye] 1” donnera de la pierre à tous les joueurs qui ont zezombye comme pseudo. Le pseudo ne prend pas en compte les majuscules ; “/give @a[name=ZEZOMBYE] 1” et “/give @a[name=zEzOmByE] 1” fonctionneront toujours. Un point d’exclamation permet d’exclure le pseudo : “/give @a[name=!zezombye] 1” donnera de la pierre à tous les joueurs sauf moi.

Ainsi, la commande “/give @r[x=34,y=-235,z=32,r=10,rm=3,m=2,c=4,l=20,lm=10,score_death=10,score_death_min=5,team=red,name=!zezombye] 1” givera de la stone à 4 joueurs choisis aléatoirement se trouvant entre 3 et 10 blocs de distance de x 34, y -235 et z 32, ayant un niveau d’xp entre 10 et 20 inclus, un score de l’objectif death entre 5 et 10 inclus, de l’équipe rouge et de pseudo différant de zezombye.

Les commandes

Parce que connaître les sélecteurs sans connaître les commandes c’est comme savoir crafter une pioche en diamant sans savoir miner, voici un tutoriel détaillé sur absolument toutes les commandes pouvant être exécutées dans un command block. Bien sur, nous nous attarderons plus sur les commandes compliquées telles le /scoreboard que sur les autres telles le /give. Elles sont classées par ordre alphabétique.

Les conditions de succès sont utilisées pour les comparateurs.

La syntaxe utilisée est la suivante :

S’il y a :Alors :
<chevrons>C’est un paramètre requis. Il est impossible de l’enlever sans que la commande ne fonctionne pas. Exemple : “/give <joueur> <id>”.
[crochets]C’est un paramètre optionnel. Si vous ne le mettez pas, la commande fonctionnera toujours. Exemple : “/give <joueur> <id> [quantité]”.
texte en italiqueRemplacez par une valeur appropriée. Exemple : dans “/give <joueur> <id>”, joueur et id doivent être remplacés par le pseudo et l’id, ce qui fera par exemple “/give zezombye 1”.
texte normalTapez ça exactement comme c’est montré, avec les majuscules s’il y en a. Exemple : “/effect <player> clear” devra être écrit “/effect zezombye clear”.
barres|de|séparationIl faut prendre une des options séparées par des barres. Le texte en italique doit être remplacé, mais pas le texte normal. Exemple : “/difficulty <0|1|2|3>”.

/achievement give <nom de l’achievement> [joueur]

Donne un achievement à un joueur. Si le joueur n’est pas précisé, cela le donne à celui qui a exécuté la commande.

Conditions de succès : le nom de l’achievement doit être valide, le joueur doit être précisé et doit être connecté.

/clear <joueur> [item] [data]

Enlève des items de l’inventaire du joueur ; si aucun item n’est précisé, tous les items seront enlevés.

[item] est l’id de l’item/bloc. [data] est le sous-id de l’item/bloc, ex : “/clear @p 35 15” n’enlèvera que la laine noire, mais pas la bleue. Par contre, “/clear @p 35” enlèvera tous les types de laine.

Conditions de succès : au moins un item doit être enlevé, le joueur doit être connecté.

/defaultgamemode <survival|creative|adventure|spectator>

Permet de définir le gamemode dans lequel seront mis les joueurs qui se connectent. Les gamemodes peuvent être remplacés par leur numéro (respectivement 0, 1, 2 et 3).

Condition de succès : le gamemode doit être valide.

/difficulty <peaceful|easy|normal|hard>

Permet de définir la difficulté. Les difficultés peuvent être remplacées par leur numéro (respectivement 0, 1, 2 et 3).

Condition de succès : la difficulté doit être valide.

/effect <joueur> <effet|clear> [durée] [niveau]

Donne au joueur spécifié un effet. L’effet doit être spécifié avec son id : “/effect @p speed” ne fonctionnera pas, mais “/effect @p 1” fonctionnera. La liste des ids peut être trouvée ici.

La durée varie selon l’effet. S’il est de valeur 0, il enlève l’effet. L’effet est en secondes. Si non spécifié, il est de 30 secondes.

Le niveau de l’effet doit être spécifié avec le nombre inférieur. Ainsi, “/effect @p 1 40 2” donnera un effet de vitesse 3 et non pas de vitesse 2. Si non spécifié, il est de 0 (niveau 1).

“/effect <joueur> clear” enlèvera tous les effets sur le joueur. C’est utile pour clear complètement le joueur, par exemple lors des maps pvp.

Conditions de succès : l’id de l’effet doit être valide, le joueur doit être connecté, la durée doit être inférieure ou égale à 1.000.000, le niveau doit être inférieur ou égal à 255, si la durée est de 0 le joueur doit avoir cet effet sur lui, si c’est “/effect <joueur> clear” la commande doit clear au moins un effet.

/enchant <joueur> <enchantement> [niveau]

Permet d’enchanter l’item que le joueur tient en main. L’enchantement doit être spécifié avec son id : “/enchant @p protection” ne fonctionnera pas, mais “/enchant @p 0” fonctionnera. La liste des ids peut être trouvée ici.

Le niveau, au contraire de celui de la commande /effect, ne doit pas être spécifié avec le nombre inférieur ; “/enchant @p 32 1” enchantera l’item efficiency 1. Si non précisé, le niveau est par défaut 1.

Cela ne fonctionne que dans les limitations des enchantements. Ainsi, il n’est pas possible de mettre efficiency 6 sur une pioche, ni de mettre efficiency 3 sur une épée, ou de mettre sharpness et smite sur la même épée.

Conditions de succès : le joueur doit être en ligne, l’id de l’enchantement doit être valide, l’item tenu doit être apte à recevoir cet enchantement (pas de conflits, cela doit être un enchantement pour cet objet), le niveau de l’enchantement doit être dans les limitations.

/gamemode <survival|creative|adventure|spectator> [joueur]

Définit le gamemode du joueur. Les gamemodes peuvent être remplacés par leurs numéros (respectivement 0, 1, 2 et 3). Si aucun joueur n’est spécifié, cela change le gamemode de celui qui exécute la commande.

Conditions de succès : le gamemode doit être valide, le joueur doit être spécifié et connecté.

/gamerule <gamerule> [true|false]

Définit une gamerule : “true” l’active et “false” la désactive. Ne mettre aucun des deux montre l’état actuel de la gamerule. Voici la liste des gamerules ; vous devez respecter la casse (majuscules/minuscules).

  • commandBlockOutput : si les command blocks montrent les outputs de leurs commandes dans le chat.
  • doFireTick : définit si le feu se propage.
  • doMobLoot : définit si les mobs droppent des items.
  • doMobSpawning : définit si les mobs spawnent naturellement (ne définit pas leur spawn par un spawner ou un oeuf).
  • doTileDrops : définit si les blocs droppent un item quand ils sont minés.
  • keepInventory : définit si le joueur garde son inventaire quand il meurt.
  • mobGriefing : définit si les creepers, endermen, ghasts, et withers peuvent changer les blocs, ou si les zombies, squelettes, et pigzombies peuvent prendre des items.
  • naturalRegeneration : définit si le joueur peut se régénérer naturellement quand sa barre de faim est à 9 cuisses ou plus.
  • doDaylightCycle : définit si le cycle jour/nuit est actif.

Condition de succès : aucune, émettra un signal même si la gamerule n’est pas valide et si le second paramètre est autre chose que true ou false.

/give <joueur> <item> [quantité] [metadata] [dataTag]

Give un item au joueur défini. Note : cela droppe un item à la location du joueur, cela ne le place pas dans son inventaire comme le fait Essentials.

L’item est son id ou son nom (ex : minecraft:stone ou stone), la quantité doit être entre 0 et 64, la metadata est le sous-id, et le dataTag sont les différents paramètres NBT (exemple : “{display:{Lore:[“Super Planche”]}}” mettra une description disant “Super Planche”.

Condition de succès : Au moins un item doit être givé, c’est à dire que l’ID et la quantité doivent être valides. Un mauvais sous-id ou datatag résultera quand même en un succès.

/kill [joueur]

Tue le joueur en lui infligeant 500 coeurs de dégâts de vide, le tuant même en créative ou avec un effet de résistance supérieur à 5.

Condition de succès : le joueur doit être spécifié et connecté.

/playsound <son> <joueur> [x] [y] [z] [volume] [pitch] [volume minimum]

Permet de jouer un son au joueur défini et à personne d’autre. Le son est en format json, exemple : “mob.pig.say”. Les coordonnées sont là où jouer le son ; s’il y a un ~ avant (exemple : ~13 ~15 ~-15), c’est relatif au joueur. Le volume permet de contrôler la distance où le son peut être entendu par rapport aux coordonnées : par défaut, il est de 1.0 (son normal) et a un rayon de 16 blocs. S’il est plus petit que 1.0, il aura une plus petite sphère d’action et un rayon de 16 blocs. S’il est plus grand que 1.0, il ne sera pas plus fort mais aura une plus grande sphère d’action.

Le volume minimum (entre 0 et 1) est le volume hors de la sphère d’action du son. Le pitch détermine son pitch, mais également sa durée (et donc sa vitesse).

Conditions de succès : le joueur doit être connecté, le volume doit être d’au moins 0, le pitch doit être entre 0 et 2 (inclus), le volume minimum doit être entre 0 et 1 (inclus), le joueur doit être capable d’entendre le son depuis son origine.

/say <message>

Permet d’afficher un message dans le chat pour tous les joueurs. Dans un command block, son nom sera par défaut “@”, mais peut être renommé en le renommant avec une enclume.

Conditions de succès : il doit y avoir un message, si utilisation de sélecteurs (@p, etc) ils doivent être remplacés par des noms de joueurs.

/scoreboard <objectives|players|teams>

L’une des commandes auxquelles les joueurs auraient besoin d’un tutoriel exclusivement là dessus, c’est pourquoi nous allons en faire un.

Cela se divise en énormément de petites commandes différentes.

/scoreboard objectives list

Permet de faire une liste de tous les objectifs, ainsi que leur type.

Condition de succès : le scoreboard doit avoir au moins un objectif.

/scoreboard objectives add <nom> <type> [nom à afficher]

Permet d’ajouter un objectif. Le nom est son nom de système, qui sera utilisé si on veut modifier ou référencer l’objectif (16 caractères maximum). Le nom à afficher sera le nom affiché si on affiche cet objectif sur le côté (32 caractères maximum). Le type détermine la valeur de l’objectif, il doit être écrit en respectant la casse (majuscules/minuscules).

TypeDescription
dummyLe score n’est changeable que par des commandes. C’est utile pour les monnaies, etc.
deathCountAugmente de 1 lorsque le joueur meurt.
playerKillCountAugmente de 1 lorsque le joueur tue un autre joueur.
totalKillCountAugmente de 1 lorsque le joueur tue un autre joueur ou un mob.
healthSa valeur est la même que le nombre de demi-coeurs qu’un joueur a. Prend en compte les coeurs supplémentaires.

Depuis la 1.7, il y a également des centaines de “sous-types” ajoutés. La syntaxe est <type>.<sous-type>, exemples : “achievement.bookcase” ou “stat.mobKill.Zombie”.

TypeDescriptionNombre de sous-types
achievementSous-types : “acquireIron”, “bakeCake”, “blazeRod”, “bookcase”, “breedCow”, “buildBetterPickaxe”, “buildFurnace”, “buildHoe”, “buildPickaxe”, “buildSword”, “buildWorkBench”, “cookFish”, “diamonds”, “diamondsToYou”, “enchantments”, “exploreAllBiomes”, “flyPig”, “fullBeacon”, “ghast”, “killCow”, “killEnemy”, “killWither”, “makeBread”, “mineWood”, “onARail”, “openInventory”, “overkill”, “overpowered”, “portal”, “potion”, “snipeSkeleton”, “spawnWither”, “theEnd”, et “theEnd2”. La valeur dépend du nombre de fois que le joueur a eu l’achievement (ex : s’il a ramassé 3 blocs de bois, il aura 3 fois l’achievement “mineWood”).34
statPour des objectifs basés sur les statistiques du joueur. Sous-types : “animalsBred”, “boatOneCm”, “climbOneCm”, “damageDealt”, “damageTaken”, “deaths”, “diveOneCm”, “drop”, “fallOneCm”, “fishCaught”, “flyOneCm”, “horseOneCm”, “jump”, “junkFished”, “leaveGame”, “minecartOneCm”, “mobKills”, “pigOneCm”, “playerKills”, “playOneMinute”, “swimOneCm”, “treasureFished”, et “walkOneCm”. Le score augmente de 1 lorsqu’un joueur fait l’action du statistique. CM = Cubic Meter = bloc.23
stat.useItemLe sous-type est l’ID (exemple : “stat.craftItem.1”) ou le nom (exemple : “stat.craftItem.minecraft.stone” ; le “minecraft.” est requis pour les noms) d’un bloc ou item. La majorité des blocs et items sont acceptés, sauf les blocs qui n’ont pas de forme d’item (exemples : brewing stand, chaudron…)

Afficher les IDs et noms acceptés

La valeur augmente de 1 lorsqu’un joueur utilise un bloc/item, c’est à dire si :

  • Une pelle, pioche, hache, briquet, paire de cisailles, serpe ou épée consomme de la durabilité. Cela ne s’applique pas aux autres items avec de la durabilité (armure, arcs, cannes à pêche et cannes à carottes).
  • Un bloc serait placé ; le bloc n’a pas besoin d’être placé ou même d’avoir la possibilité d’être placé. Certains blocs ont des conditions spécifiques (ex : canne à sucre) pour être placé, mais la valeur augmente même si le joueur fait clic droit sur un bloc de pierre avec une canne à sucre.
  • Le joueur place une peinture, oeuf de spawn, minecart ou item frame. Cela ne s’applique pas aux bateaux ou aux projectiles lancés (yeux d’ender, ender pearl, oeufs, boules de neige, flèches, bouteilles d’enchant, potions).
  • Une des deux teintures utilisables sont “bien” utilisées : soit quand le joueur place du cacao sur un arbre de la jungle, soit quand la poudre d’os est utilisée pour faire grandir des plantes.
  • Un disque est placé dans un juke-box. Chaque disque a un statistique différent.

Toutefois, la valeur n’augmente pas lorsque :

    • Du lait, potions ou nourriture sont consommés
    • Des items sont utilisés pour nommer, adopter, nourrir, élever, seller ou attacher des mods
    • Un nouvel item est créé avec l’utilisation d’un autre (un seau devient un seau d’eau, un bol devient une soupe de champis…)

Tous les cas mentionnés ci-dessus (armure, arcs, cannes à pêche, cannes à carottes, bateaux…) ne font également pas augmenter la valeur.

318
stat.breakItemLe sous-type est l’ID (exemple : “stat.breakItem.261”) ou le nom (exemple : “stat.craftItem.minecraft.bow” ; le “minecraft.” est requis pour les noms) d’un bloc ou item.

Afficher les IDs et noms acceptés

La valeur augmente quand l’item est cassé, c’est à dire quand la durabilité est négative.

50
stat.mineBlockLe sous-type est l’ID (exemple : “stat.mineBlock.1”) ou le nom (exemple : “stat.mineBlock.minecraft.stone” ; le “minecraft.” est requis pour les noms) d’un bloc ou item. La plupart des blocs sont acceptés, sauf les blocs “techniques” (torche de redstone éteinte, etc) et les blocs indestructibles tels la bedrock ou l’eau.

Afficher les IDs et noms acceptés

La valeur augmente lorsqu’un joueur mine un bloc, c’est à dire lorsqu’il détruit un bloc afin que le bloc droppe un item. Ainsi, lorsqu’un bloc ne droppe pas d’item (comme le verre) ou se transforme en un autre bloc (comme la glace), cela n’augmente pas. La valeur n’augmente pas en créative et augmente même si le doTileDrops est mis en false.

135
stat.killEntityLe sous-type est le nom de l’entité. Les noms valides sont : “Bat”, “Blaze”, “CaveSpider”, “Chicken”, “Cow”, “Creeper”, “Enderman”, “EntityHorse”, “Ghast”, “LavaSlime”, “MushroomCow”, “Ozelot”, “Pig”, “PigZombie”, “Sheep”, “Silverfish”, “Skeleton”, “Slime”, “Spider”, “Squid”, “Villager”, “Witch”, “Wolf”, et “Zombie”. La valeur augmente lorsqu’un joueur a tué le mob spécifié.24
stat.entityKilledByLe sous-type est le nom de l’entité. Les noms valides sont : “Bat”, “Blaze”, “CaveSpider”, “Chicken”, “Cow”, “Creeper”, “Enderman”, “EntityHorse”, “Ghast”, “LavaSlime”, “MushroomCow”, “Ozelot”, “Pig”, “PigZombie”, “Sheep”, “Silverfish”, “Skeleton”, “Slime”, “Spider”, “Squid”, “Villager”, “Witch”, “Wolf”, et “Zombie”. La valeur augmente lorsqu’un joueur a été tué par le mob spécifié. Note : si le mob est passif, la valeur n’augmentera jamais étant donné que ces mobs ne sont pas capables de tuer le joueur.24
teamkillLe sous-type est la couleur de l’équipe. Les couleurs valides sont : “black”, “dark_blue”, “dark_green”, “dark_aqua”, “dark_red”, “dark_purple”, “gold”, “gray”, “dark_gray”, “blue”, “green”, “aqua”, “red”, “light_purple”, “yellow”, et “white”. La valeur augmente lorsque le joueur a tué un membre de l’équipe de la couleur spécifiée.16
killedByTeamLe sous-type est la couleur de l’équipe. Les couleurs valides sont : “black”, “dark_blue”, “dark_green”, “dark_aqua”, “dark_red”, “dark_purple”, “gold”, “gray”, “dark_gray”, “blue”, “green”, “aqua”, “red”, “light_purple”, “yellow”, et “white”. La valeur augmente lorsque le joueur a été tué par un membre de l’équipe de la couleur spécifiée.16

Conditions de succès : il ne doit pas déjà y avoir un objectif du même nom, le nom de l’objectif doit être de maximum 16 caractères, le type et sous-types doivent être valides, le nom affiché doit être de 32 caractères maximum.

/scoreboard objectives remove <nom>

Supprime complètement l’objectif spécifié.

Condition de succès : l’objectif supprimé devait exister.

/scoreboard objectives setdisplay <slot> [objectif]

Affiche un objectif dans le slot. Si aucun objectif n’est spécifié, le slot sera clear. Un slot ne peut avoir qu’un objectif à la fois, mais un objectif peut être dans plusieurs slots différents.

SlotDescription
listAffiche un nombre en jaune sur le menu tab (où les joueurs connectés sont affichés). Visible même en solo.
sidebarAffiche l’objectif à droite de l’écran. Cela classe les joueurs dans une liste avec un titre étant le nom à afficher de l’objectif. Les joueurs seront affichés même s’ils sont hors ligne.
belowNameAffiche le score suivi du nom à afficher de l’objectif en dessous du nom du joueur affiché au dessus de sa tête. Est caché quand le joueur est plus loin que 10 blocs environ ou lorsqu’il est accroupi. N’est pas visible en solo.

Voici les emplacements des slots “list” et “sidebar” :

Conditions de succès : l’objectif doit exister, le slot doit être valide.

/scoreboard players list [joueur]

Affiche tous les joueurs qui sont “espionnés” par le scoreboard, c’est à dire qu’ils ont au moins un score à un objectif. Si un joueur est spécifié, cela affiche les scores du joueur. On peut afficher tous les scores en mettant une astérisque (*) au lieu du nom du joueur.

Conditions de succès : si le joueur est spécifié, il doit avoir au moins un score à un objectif ; s’il ne l’est pas, il doit y avoir au moins un joueur ayant un score.

/scoreboard players set <joueur> <objectif> <score>

Définit le score du joueur spécifié pour l’objectif spécifié. Exemple : “/scoreboard players set @p death 100” mettra le score du joueur le plus proche pour l’objectif death à 100. Une astérisque peut être utilisée à la place du joueur pour changer tous les joueurs.

Conditions de succès : l’objectif doit exister, le score doit être entre -2147483648 et 2147483647 inclus. Le joueur ne doit pas nécessairement être connecté ou exister.

/scoreboard players add <joueur> <objectif> <nombre>

Ajoute le nombre spécifié au score du joueur spécifié pour l’objectif spécifié. Une astérisque peut être utilisée à la place du joueur pour changer le score de tous les joueurs.

Conditions de succès : l’objectif doit exister, le nombre à ajouter doit être entre 1 et 2147483647 inclus. Le joueur ne doit pas nécessairement être connecté ou exister.

/scoreboard players remove <joueur> <objectif> <nombre>

Soustrait le nombre spécifié au score du joueur spécifié pour l’objectif spécifié. Une astérisque peut être utilisée à la place du joueur pour changer le score de tous les joueurs.

Conditions de succès : l’objectif doit exister, le nombre à soustraire doit être entre 1 et 2147483647 inclus. Le joueur ne doit pas nécessairement être connecté ou exister.

/scoreboard players reset <joueur> [objectif]

Supprime le score de l’objectif spécifié pour le joueur spécifié. Si aucun objectif n’est spécifié, cela supprime tous les scores du joueur. Une astérisque peut être utilisée à la place du joueur pour supprimer le score de tous les joueurs.

À noter que cela ne remet pas seulement les scores du joueur à 0, cela supprime son score du scoreboard.

Condition de succès : aucune, résulte en un succès même si le joueur est inexistant.

/scoreboard players test <joueur> <objectif> <minimum> [maximum]

Teste si le score du joueur pour l’objectif spécifié est au dessus ou égal au nombre minimum et en dessous ou égal au maximum. Si c’est le cas, envoie un signal au comparateur.

Conditions de succès : l’objectif doit exister, le score doit être entre les nombres minimum et maximum inclus. Le joueur peut être inexistant ou déconnecté.

/scoreboard teams list [nom de l’équipe]

Liste toutes les équipes. Si l’équipe est spécifiée, liste les joueurs qui sont dans cette équipe.

Conditions de succès : si l’équipe est spécifiée, elle doit exister et avoir au moins un joueur. Si aucune équipe n’est spécifiée, il doit y en avoir au moins une.

/scoreboard teams add <nom> [nom à afficher]

Ajoute une équipe qui devra être référencée dans le scoreboard par son nom, et qui affichera logiquement son nom à afficher.

Conditions de succès : le nom ne doit pas déjà être pris par une autre équipe et doit faire maximum 16 caractères, le nom à afficher doit être de 32 caractères maximum.

/scoreboard teams remove <nom de l’équipe>

Supprime l’équipe spécifiée.

Condition de succès : l’équipe doit exister.

/scoreboard teams empty <nom de l’équipe>

Retire tous les joueurs de l’équipe spécifiée.

Conditions de succès : l’équipe doit exister et devait avoir au moins un joueur.

/scoreboard teams join <nom de l’équipe> [joueur(s)]

Ajoute le joueur spécifié à l’équipe ; si aucun joueur n’est spécifié, ajoute celui qui fait la commande. Une astérisque peut être utilisée pour ajouter tous les joueurs à l’équipe.

Condition de succès : l’équipe doit exister. Le joueur peut être inexistant ou déconnecté.

/scoreboard teams leave [joueur(s)]

Enlève le(s) joueur(s) spécifiés de leur(s) équipe(s).

Condition de succès : tous les joueurs spécifiés devaient être dans une équipe.

/scoreboard teams option <nom de l’équipe> color <couleur>

Définit la couleur qu’une équipe aura dans le chat, la sidebar et le menu tab (qui affiche les joueurs connectés. Les couleurs peuvent être “black”, “dark_blue”, “dark_green”, “dark_aqua”, “dark_red”, “dark_purple”, “gold”, “gray”, “dark_gray”, “blue”, “green”, “aqua”, “red”, “light_purple”, “yellow”, et “white”. “reset” peut être utilisé pour mettre le format de base.

Conditions de succès : l’équipe doit exister, la couleur doit être valide.

/scoreboard teams option <nom de l’équipe> friendlyfire <true|false>

Définit si le teamkill est activé. Si mis en false, un membre de l’équipe ne peut pas en attaquer un autre au corps à corps, à l’arc ou avec une potion de dégâts, mais peut toujours le faire avec des moyens indirects (briquet, seau de lave) ou avec des potions négatives telles les potions de poison ou de lenteur.

Conditions de succès : l’équipe doit exister, la valeur doit être “true” ou “false”.

/scoreboard teams option <nom de l’équipe> seeFriendlyInvisibles <true|false>

Si mis en true, les membres de l’équipe verront les autres membres invisibles en semi-transparent.

Conditions de succès : l’équipe doit exister, la valeur doit être “true” ou “false”.

C’est tout pour le scoreboard, nous reprenons donc les autres commandes :

/seed

Affiche la seed du monde. En multijoueur, la commande ne peut pas être utilisée par un simple membre. En solo, elle peut être utilisée, que les cheats soient activés ou non.

Condition de succès : aucune.

/setblock <x> <y> <z> <bloc> [sous-id] [replace|keep|destroy] [dataTag]

Place un bloc aux coordonnées spécifiées ; mettre un ~ avant permet de les relativiser aux command blocks. Par exemple, “/setblock ~0 ~6 ~0 1” placera un bloc de pierre 6 blocs au dessus du command block. “~” est l’équivalent de “~0”. La sous-id sera le bloc normal si elle est de 0.

Le bloc sera placé suivant l’action à faire :

  • “replace” placera le bloc aux coordonnées spécifiées, quel que soit le bloc qui était là avant.
  • “keep” placera le bloc uniquement s’il y a de l’air aux coordonnées spécifiées.
  • “destroy” détruira le bloc aux coordonnées spécifiées (ce qui fera apparaitre des particules et dropper l’item du bloc) et le remplacera par le bloc spécifié.

Le dataTag sont les tags NBT.

Conditions de succès : le bloc doit exister, la sous-id doit être valide, l’action à faire doit être “replace”, “keep” ou “destroy”, le datatag doit être valide.

/setworldspawn [x] [y] [z]

Place le spawn du monde aux coordonnées spécifiées. Si aucune coordonnée n’est spécifiée, cela le place aux coordonnées du joueur qui exécute la commande.

Conditions de succès : x, y et z doivent être spécifiés et entre -30.000.000 et 30.000.000.

/spawnpoint <joueur> [x] [y] [z]

Place le spawn du joueur aux coordonnées spécifiées ; si aucune coordonnée n’est spécifiée, cela le place à son emplacement actuel. À noter qu’un lit fait la même chose et remplace le spawn spécifié avec la commande.

Conditions de succès : le joueur doit être en ligne, x, y et z, si spécifiés, doivent être entre -30.000.000 et 30.000.000.

/spreadplayers <x> <z> [rayon minimum] [rayon maximum] [respecter les équipes] <joueurs>

Répartit aléatoirement les joueurs entre le rayon minimum et le rayon maximum à partir des coordonnées spécifiées. À noter que les rayons sont cubiques et non pas sphériques.

Le paramètre de respect des équipes doit être “true” ou “false”. Si mis en true, cela répartit par équipes et non pas par joueurs.

Les joueurs sont séparés par un espace.

Conditions de succès : x et z doivent être entre -30.000.000 et 30.000.000, le rayon minimum doit être de 0 ou plus, le rayon maximum doit être d’au moins plus grand de 1 que le rayon minimum, et le paramètre de respect des équipes doit être “true” ou “false”.

/summon <entité> [x] [y] [z] [dataTag]

Fait apparaître l’entité spécifiée aux coordonnées spécifiées. Le dataTag sont les tags NBT. Si aucune coordonnée n’est spécifiée, l’entité spawnera aux coordonnées du joueur (ou du command block).

Conditions de succès : l’entité doit être valide, les coordonnées doivent être entre 30.000.000 et -30.000.000, le dataTag doit être valide.

/tell <joueur> <message>

Envoie un message au joueur spécifié. /tell peut être remplacé par /msg ou /w (pour whisper, chuchoter). Si un sélecteur multiple (@a) est spécifié dans le message, cela mettra “joueur1, joueur2[…] and joueur3”.

Conditions de succès : le joueur doit être connecté, tous les sélecteurs dans le message doivent être remplacés par des noms de joueurs.

/tellraw <joueur> <message json>

Envoie un message json au joueur spécifié. La création de message json est assez difficile, mais cet outil vous sera extrêmement utile pour en générer, car ils sont très utilisés : génération de messages imitant ceux des joueurs, cliquage de liens, dialogue interactif…

Conditions de succès : le joueur doit être en ligne, le message json doit être correctement codé.

/testfor <joueur>

N’est utilisable que par un command block, car sa seule utilisation est d’envoyer un signal si le sélecteur est remplacé par un ou des joueurs. Exemple : s’il y a un joueur à 3 blocs du command block lorsqu’il exécute la commande /testfor @p[r=3], il fera un signal au comparateur qui dépendra du nombre de joueurs (s’il y a 2 joueurs, le signal aura une force de 2, etc).

Condition de succès : le sélecteur doit être remplacé par au moins un joueur. Plus il y a de joueurs, plus le signal est grand.

/testforblock <x> <y> <z> <nom du bloc> [sous-id] [dataTag]

Fonctionne comme le testfor, sauf que cela teste des blocs à la place de joueurs. Le dataTag ne fonctionnera pas si le type de tag NBT n’est pas précisé (s pour Short, b pour Byte, l pour Long, f pour Float et d pour Double) et si tous les tags NBT, même non utilisés, ne sont pas précisés (ainsi, le coffre doit contenir Slot, id, Damage, et Count).

Condition de succès : le bloc aux coordonnées précisées doit être le bloc précisé avec la sous-id et le dataTag précisés.

/time set <nombre|day|night>

Met le jour, la nuit, ou le nombre correspondant au moment de la journée (0 = aube, 12000 = coucher du soleil, 24000 correspondant à un jour entier). Un nombre peut être ajouté avec /time add <nombre> (mettre 24000 avancera le cycle de la lune d’une phase mais le moment de la journée restera le même).

Condition de succès : le paramètre doit être un nombre égal ou supérieur à 0, “day” ou “night”.

/toggledownfall

Bascule le temps ; s’il pleut, il fera beau, et vice-versa.

Condition de succès : aucune.

/tp [joueur] <autre joueur|x y z>

Téléporte le joueur spécifié à l’autre joueur ou aux coordonnées spécifiées. Si aucun joueur n’est spécifié, cela téléporte l’exécuteur de la commande.

Conditions de succès : les coordonnées doivent être de -30.000.000 à 30.000.000, le y doit être positif, le joueur doit être spécifié, et le(s) joueur(s) doi(ven)t être connecté(s)

/weather <clear|rain|thunder> [secondes]

Change le temps qu’il fait pour le nombre de secondes déterminées : “clear” pour faire beau, “rain” pour qu’il pleuve, “thunder” pour qu’il fasse du tonnerre.

Conditions de succès : le temps doit être valide, les secondes doivent être entre 1 et 1.000.000.

/xp <nombre> [joueur]

Donne un nombre de points d’xp à un joueur. En mettant “L” après le nombre, cela donne le nombre de niveaux d’xp. Un nombre de niveaux d’expérience (mais pas de points) peut être retiré au joueur en mettant un “-” avant le nombre. Ainsi, “/xp -34L @p” enlève 34 niveaux au joueur le plus proche. Si le joueur n’est pas précisé, cela modifie l’expérience de l’exécuteur.

Conditions de succès : le nombre doit être au maximum 2.147.483.647 (ou minimum -2.147.483.648 dans le cas des niveaux), le joueur doit être spécifié et connecté.

C’est tout pour ce tutoriel. Si vous avez des suggestions, corrections ou améliorations, vous êtes priés de les signaler dans les commentaires :)

A propos de Zezombye

Moi c’est Zezombye, ou Zez. J’aime le lapis, rédiger des tutos ou des MAJs, jouer à MC, et miner.

Ceci vous intéresse peut être

Créer un LAN sur Minecraft

Ouvrir un LAN vous permet de jouer à Minecraft avec vos amis sur la même partie. Comme si vous étiez sur un serveur multijoueur, sans besoin de payer un serveur.

Rédiger une réponse

31 Commentaires sur "Tutoriel sur les command blocks"

Prévenez moi :
avatar
 
Trier par:   Commentaires récents | Commentaires ancients | Les mieux notés
Alexis Bernard
Invité

… il y a un _ entre le “command” et le “block”

Alexis Bernard
Invité

avec un testforblock permanent tentant ainsi si le bouton est enfoncer, si ce cas est présent le bloc de commande lâche du courant dans un comparateur relié a celui-ci, et coller a un autre command block exerçant ta commande. Derien

Dracoctix
Rédacteur

Avec de la redstone en guise de câble, tout simplement ^^

alex29
Invité

Désolé si je déterre cet article, mais cela fait pas mal de temps que je cherche et que je ne trouve pas.
J’en viens au but: Comment fait on pour activer un bloc de commande avec un bouton qui ne lui est pas relié d’aucune sorte ?

Merci d’avance.

Cordialement, alex29.

Picsou1er
Invité

genial …cela m’a beaucoup aidée je suis entrain de crée une map aventure !

wpDiscuz