Un clavier MineCraft avec l’Arduino

By 25 septembre 2014février 4th, 2016Débutant Arduino

Minecraft… On ne présente plus ce jeu désormais mondialement connu. Un gameplay simpliste, des graphismes basiques, bref c’est un jeu très simple mais qui ouvre sur des possibilités infinies de construction. Microsoft a même décidé de le racheter il y a quelques jours. Aujourd’hui, on trouve de nombreux projets Arduino en lien avec Minecraft mais nous avons souhaité ici vous présenter le projet original d’un utilisateur de l’Arduino. En effet, il a décidé de fabriquer un clavier plus simple à utiliser pour jouer à son jeu favoris. Ici, ce n’est pas le projet en lui-même qui est intéressant mais plutôt la façon dont il a été réalisé notamment au niveau logiciel.

Ainsi, si nous vous posons le script du projet devant les yeux comme ceci:

/* 

   © 2014 Lakhan Mankani All Rights Reserved.

   No part of this code may be used for productional purposes 

   without the prior permission in writing of Lakhan Mankani

*/

void setup() { //This runs only once

 

  pinMode(2, INPUT_PULLUP);//Define pin 2 as input

  pinMode(3, INPUT_PULLUP);//Define pin 3 as input

  pinMode(4, INPUT_PULLUP);//Define pin 4 as input

  pinMode(5, INPUT_PULLUP);//Define pin 5 as input

  pinMode(6, INPUT_PULLUP);//Define pin 6 as input

  pinMode(7, INPUT_PULLUP);//Define pin 7 as input

  pinMode(8, INPUT_PULLUP);//Define pin 8 as input

  pinMode(9, INPUT_PULLUP);//Define pin 9 as input

  pinMode(10, INPUT_PULLUP);//Define pin 10 as input

  Keyboard.begin();

 

  }

void loop() { //Runs continuously

 

  if(digitalRead(2) == HIGH){ //If the button 2 is pressed

    Keyboard.write(113);//Drop item (q)

    delay(200);//Wait 0.2 seconds

  }

  if(digitalRead(3) == HIGH){ //If the button 3 is pressed

    Keyboard.write(101);//Inventory (e)

    delay(1000);//Wait 1 second

  }

  if(digitalRead(4) == HIGH){ //If the button 4 is pressed

    Keyboard.press(KEY_LEFT_SHIFT);//Sneack (LShift)

    delay(200);//Wait 0.2 seconds

    Keyboard.releaseAll();//Release the key

  }

  if(digitalRead(5) == HIGH){ //If the button 5 is pressed

    Keyboard.press(' ');//Jump /Fly (Space Bar)

    delay(20);//Wait 0.02 seconds 

    Keyboard.releaseAll();//Release the key

  }

  if(digitalRead(6) == HIGH){ //If the button 6 is pressed

    Keyboard.press('a');//Strafe Left (A)

    delay(200);//Wait 0.2 seconds

    Keyboard.releaseAll();//Release the key

  }

  if(digitalRead(7) == HIGH){ //If the button 7 is pressed

    Keyboard.press('w');//Walk Forwards (W)

    delay(20);//Wait 0.02 seconds

    Keyboard.releaseAll();//Release the key

  }

  if(digitalRead(8) == HIGH){ //If the button 8 is pressed

    Keyboard.press('d');//Strafe Right (D)

    delay(200);//Wait 0.2 seconds

    Keyboard.releaseAll();//Release the key

  }

  if(digitalRead(9) == HIGH){ //If the button 9 is pressed

    Keyboard.press('s');//Walk Backwards (S)

    delay(200);//Wait 0.2 seconds

    Keyboard.releaseAll();//Release the key

  }

  if(digitalRead(10) == HIGH) { //If the button 10 is pressed

    Keyboard.press(KEY_ESC);//Escape(Pause)

    delay(1000);//Wait 1 second

    Keyboard.releaseAll();//Release the key

  }

 

}

Alors ? vous avez remarqué cette librairie Keyboard ? En fait, elle permet de simuler l’interaction avec des touches de votre clavier. Concrètement, elle permet faire ceci:  Bouton1_HIGH –> Librairie Keyboard –> Touche <X> du clavier enfoncée

Les possibilités de cette librairie son énorme ! On peut contrôler n’importe quel logiciel grâce à des touches réagencées ou moins classiques (on pense ici aux cockpits d’avions que les passionnés créés pour jouer sur leurs simulateurs)

Image_Minecraft1

 

 

Le plus incroyable c’est que ce projet n’utilise que des boutons, des résistances de 10kohms et un Arduino UNO…

On pense faire un tutoriel prochainement sur l’utilisation de cette librairie… Qu’en pensez-vous ?

Répondez en commentaires et partagez notre article !

Cet article a été publié avec l’accord de l’auteur du projet. Cette autorisation n’est applicable qu’à Simple-Duino selon ses mots. Visitez le site de l’auteur pour plus d’informations:

http://technologygarage.webs.com/minecraft-gaming-keyboard

Merci à l’auteur du projet pour son autorisation.

Fabien Aubret

About Fabien Aubret

Co-fondateur SimpleDuino, Co-fondateur SimpleDomo. Etudiant ingénieur à l'Ecole Nationale Supérieure des Arts Et Métiers (ENSAM). Passionné d'électronique, d'informatique et des nouvelles technologies en général, j'ai à cœur de transmettre ce que d'autres ont pu m'apprendre.

One Comment

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.