Salut les gens !
Et c’est aujourd’hui avec une fierté et un plaisir non dissimulés que je vous présente un mythe devenu réalité : la possibilité de piloter l’EnderDragon! Si certains veulent beaucoup de blocs de commande, ils vont être servis...
Voici une petite vue d’ensemble des 20 de contrôle qui vous attendent :
Toutes les consignes qui vont suivre seront établies à partir de cette image (sur laquelle le Nord est en face).
Pour commencer, construisez une MEGA-CLOCK, soit l’horloge la plus rapide du jeu. Pour cela, faites une colonne de 3 blocs de hauteurs (à gauche sur l’illustration), avec un bloc de commande en bas, un autre en haut, et avec un vide au centre. Le bloc du haut contient l’instruction :
/fill ~11 ~-1 ~ ~ ~-1 ~ redstone_block 0 replace coal_block
Et le bloc du bas :
/fill ~11 ~1 ~ ~ ~1 ~ coal_block 0 replace redstone_block
Pour activer la MEGA-CLOCK, placez un au milieu de la colonne… et il ne devrait rien se passer. Pour obtenir une belle ligne comme sur mon image, accolez ensuite sur la face Est de ce bloc (donc en regardant l’Ouest) 11 , qui devraient se changer en blocs de redstone aussitôt placés. Si c’est le cas, c’est parce que les deux commandes que vous venez de rentrer replacent sans arrêt 12 blocs de redstone qui vont activer à de très courts intervalles (20 par seconde) tous les blocs de commande du système (attention d’ailleurs à bien avoir mis la "doCommandBlockOutput" en false). Si on ne remplace pas ces blocs par de l’air, c’est pour éviter des calculs de lumière qui feraient laguer le jeu.
Sachez que le système utilise 2 scoreboards : il faudra donc les créer avant toute chose. Pour ce faire, insérez simplement ces instructions dans le tchat ou dans deux blocs de commande à part, pour ajouter les objectifs "Direction" et "Controle" (sans accent).
/scoreboard objectives add Direction dummy
/scoreboard objectives add Controle dummy
Placez ensuite 8 blocs de commande répartis en deux lignes de 4 sur la droite de la MEGA-CLOCK (et à gauche de Bertrand le mouton bleu). Ils vont servir à orienter et diriger l’ vers tous les points cardinaux en fonction du score "Direction", avec le tag "Motion" pour le déplacement, et le tag "Rotation" pour la direction du regard.
Directions |
Commandes à copier-coller dans les 8 command_blocks |
Nord |
/execute @p[name=Votre_pseudo,score_Direction=1,score_Direction_min=1] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.0,0.0,-0.3],Rotation:[0f]} |
Sud |
/execute @p[name=Votre_pseudo,score_Direction=2,score_Direction_min=2] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.0,0.0,0.3],Rotation:[180f]} |
Ouest |
/execute @p[name=Votre_pseudo,score_Direction=3,score_Direction_min=3] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[-0.3,0.0,0.0],Rotation:[-90f]} |
Est |
/execute @p[name=Votre_pseudo,score_Direction=4,score_Direction_min=4] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.3,0.0,0.0],Rotation:[90f]} |
Nord-Ouest |
/execute @p[name=Votre_pseudo,score_Direction=5,score_Direction_min=5] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[-0.3,0.0,-0.3],Rotation:[-45f]} |
Nord-Est |
/execute @p[name=Votre_pseudo,score_Direction=6,score_Direction_min=6] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.3,0.0,-0.3],Rotation:[45f]} |
Sud-Ouest |
/execute @p[name=Votre_pseudo,score_Direction=7,score_Direction_min=7] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[-0.3,0.0,0.3],Rotation:[-135f]} |
Sud-Est |
/execute @p[name=Votre_pseudo,score_Direction=8,score_Direction_min=8] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.3,0.0,0.3],Rotation:[135f]} |
(Oui, j’ai appelé l’EnderDragon "Dracinou")
Reste ensuite à placer sur la partie supérieure de la ligne de bloc de redstone, à droite de Bertrand le mouton bleu, 3 command_blocks remplis de ces 3 instructions servant à faire monter Dracinou, à le faire descendre, et à le stopper :
/execute @p[name=Votre_pseudo,score_Direction=9,score_Direction_min=9] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.0,0.1,0.0]}
/execute @p[name=Votre_pseudo,score_Direction=10,score_Direction_min=10] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.0,-0.1,0.0]}
/execute @p[name=Votre_pseudo,score_Direction=11,score_Direction_min=11] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {Motion:[0.0,0.0,0.0]}
Juste en dessous ces 3 blocs, posez-en 2 autres et, très important, entrez cette commande dans celui de gauche :
/execute @p[name=Votre_pseudo,score_Direction=12,score_Direction_min=12] ~ ~ ~ execute @e[type=EnderDragon,name=Dracinou] ~ ~ ~ summon PrimedTnt ~ ~-1 ~ {Fuse:100}
On a ici un petit bonus : la possibilité de faire de votre EnderDragon un bombardier. La commande a en effet pour rôle, si votre score "Direction" est de 12, de faire spawner une TNT allumée juste en dessous du dragon, TNT qui n’explosera que 5 secondes après son apparition (20 tics = 1 seconde, donc 5x20 = 100 tics = 5 secondes), soit le temps nécessaire pour qu’elle puisse toucher le sol.
Mais utilisée seule, cette commande est extrêmement dangereuse ! Parce que tant que le score "Direction" sera de 12, la MEGA-CLOCK fera en boucle apparaître des TNTs. En conséquence, dès que le système détectera ce score, il le remettra à 11 (soit la position "stop") avec cette commande, pour ne faire spawner qu’une seule bombe :
/execute @p[name=Votre_pseudo,score_Direction=12,score_Direction_min=12] ~ ~ ~ scoreboard players set @p[name=Votre_pseudo] Direction 11
Il est important de l’insérer dans un bloc de commande sur la droite du précédent, parce qu’une MEGA-CLOCK a un fonctionnement qui lui est spécifique : dans le cas présent, elle rafraîchit les blocs de redstone dans la direction des X positifs (donc d’abord les plus proches, puis ceux qui sont plus loin, un par un, vers l’Est). Ceux-ci vont ainsi activer les blocs de commande qui les entourent, soit d’abord celui du bas, puis celui du haut, celui dans l’axe Z négatif (vers le Nord), et enfin, celui dans l’axe Z positif (vers le Sud).
Dans notre système, c’est donc d’abord la commande de spawn de la TNT qui est activée, puis, aussitôt après, celle qui réinitialise le score ! Ce qui fait qu’on n’a qu’une seule TNT qui apparaît, et pas une infinité de bombes destructrices absolument ingérables et source de lags sensiblement énormes.
A présent, dans 2 blocs de commande placés contre les 2 du bas, nous allons détecter le moment où vous ne serez pas en selle (soit le moment où vous ne serez pas dans le que le dragon aura sur son dos) :
/execute @p[name=Votre_pseudo] ~ ~ ~ execute @e[rm=2,type=MinecartRideable] ~ ~ ~ scoreboard players set @p[name=Votre_pseudo] Controle 1
Cette commande va en effet vous mettre un score "Controle" à 1 si elle détecte un minecart dans un rayon minimum de 2 blocs autour de vous, ce qui signifie que s’il n’y a pas d’autre minecart dans votre monde et que vous n’êtes pas dans celui de votre dragon, elle ne pourra pas s’exécuter. Son rayon d’action commence en outre à 2 blocs de vous, puis s’étend vers l’infini.
Cette instruction-ci, dans le deuxième command_block que vous venez de placer, va faire exactement l’inverse :
/execute @p[name=Votre_pseudo] ~ ~ ~ execute @e[r=1,type=MinecartRideable] ~ ~ ~ scoreboard players set @p[name=Votre_pseudo] Controle 2
Elle va vous mettre un score "Controle" à 2 si elle détecte un wagon dans un rayon d’un seul bloc autour de vous : cette situation correspond au moment exact où vous serez à l’intérieur du petit moyen de transport.
Nous allons maintenant voir à quoi servent ces commandes. Pour cela, vous allez finir de remplir la ligne du bas du système, avec un command_block exécutant l’instruction :
/execute @p[name=Votre_pseudo,score_Controle=1,score_Controle_min=1] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {NoAI:1,Silent:1}
Celle-ci va, si vous êtes éloignés du
minecart, et donc si votre score "Contrôle" est à 1, immobiliser littéralement votre dragon. Ce qui signifie qu’avec le tag "NoAI", on lui désactive son Intelligence Artificielle, et donc sa faculté de se mouvoir et de bouger ses ailes, et qu’avec le tag "Silent", on l’empêche d’émettre des sons (ce qu’il pouvait encore faire même privé de son IA).
Juste au-dessus de votre bloc de commande, soit à l’extrême droite de la ligne du haut, posez un autre bloc et insérez ceci à l’intérieur :
/execute @p[name=Votre_pseudo,score_Controle=2,score_Controle_min=2] ~ ~ ~ entitydata @e[type=EnderDragon,name=Dracinou] {NoAI:0,Silent:0}
Cette commande va faire l’inverse de la précédente, c’est-à-dire que dès que votre score "Contrôle" sera de 2, donc dès que serez dans le minecart, le dragon retrouvera sa capacité de bouger et d’émettre des sons.
Si vous avez bien tout suivi, il devrait y avoir un trou dans la machine entre votre dernier command_block et les 3 autres qui se situent à sa gauche. En conséquence, combler ce vide avec cette très longue commande affectueusement concoctée par mes soins :
Ici le but sera de vous envoyer en boucle un message, uniquement si vous êtes en selle, qui sera l’interface de contrôle de l’EnderDragon ; d'ailleurs, n'oubliez pas de remplacer le "Votre_pseudo" à côté du @p par... votre pseudo (ça s'invente pas). Vous n’aurez qu’à ouvrir le tchat et cliquer sur une action ou une direction pour que le dragon s’exécute.
Et voilà, la machine est finie !
Tout ce qu’il vous reste à faire, c’est à vous trouver un coin tranquille, à poser un bloc de commande, et à y copier-coller cette dernière commande :
/summon MinecartRideable ~ ~1 ~ {Riding:{id:EnderDragon,CustomName:"Dracinou",CustomNameVisible:1,PersistenceRequired:1,Invulnerable:1,NoAI:1}}
Activez votre command_block, et vous verrez apparaître votre sublime dragon, nommé "Dracinou" dans mon exemple, persistant (donc ne disparaissant pas), invulnérable, et avec l’intelligence désactivée par défaut :
En mode survie, vous pourrez alors créer une petite rampe d’embarquement pour monter dans le minecart juste au-dessus de lui. Rappelons qu’il sera alors complètement immobile, et ne pourra bouger que quand vous serez en selle.
Voici une petite image correspondant à ce que vous verrez en vol :
Sur le dos de votre dragon, vous devriez voir un texte apparaître au niveau des mots survolés par votre curseur, texte vous indiquant que vous pouvez cliquer pour modifier votre score "Direction" et prendre la direction qu’il implique (ou lâcher une bombe le cas échéant).
Voici ce que cela donne vu d’en dessous :
Et voici un lâché de bombe aisément reconnaissable (Bertrand s’amuse) :
Un dernier avantage du système : si vous faites spawner plusieurs dragons sans minecart sur leur dos, et que vous leurs donnez le même nom que celui que vous chevauchez, vous aurez la possibilité de vous constituer une flotte draconienne dont les membres bougeront de manière parfaitement coordonnée en suivant les mouvement de votre propre monture :
Malgré tout, je dois vous avertir, ce système possède malheureusement quelques inconvénients (superficiels, mais tout de même) :
- Si vous montez dans un wagon dans le rayon d’action de la machine, votre dragon reprendra vie. J’ai essayé de renommer le minecart sur le dos de l’EnderDragon, mais les résultats n’étaient pas concluants.
- Si vous vous approchez trop près du sol, le dragon détruira le terrain (sauf si la mobGriefing est en "false").
- La fonction "Stop" laissera tout de même une minuscule marge de manœuvre à votre dragon, qui avancera certes à la lenteur d’un escargot, mais avancera tout de même.
- Le désavantage d’utiliser le tchat pour piloter est que votre regard ne pivotera pas de lui-même quand votre dragon changera de direction.
Bon jeu les gens, et que votre âme de draconier aviateur s’épanouisse !
Le thème de cette astuce m'a été suggéré par le joueur chomb.
---------------------------------------------------------
Ensuite, annonce plutôt importante : comme écrit à la fin de l'astuce, c'est le joueur "chomb" qui m'a proposé le thème (et je le remercie d'ailleurs pour cette excellente idée). Alors si vous voulez faire comme lui, rendez-vous sur le topic de suggestions en recopiant ce lien dans votre barre de recherche ! :)
http://fr-minecraft.net/forum/message-199803.html#p199803
Sinon, comme d'habitude, je me ferais une joie de répondre à vos remarques et questions dans les commentaires. ;)