Un étudiant de la Design Tech Académie réalise un bot pour Black Desert Online

Par 28 janvier 2019 avril 6th, 2019 blog

Ils développent de chez eux — à la #DesignTechAcademie

Le cursus de la Design Tech Académie, formation de Télécom Saint-Étienne dont Zoomacom est partenaire, permet l’acquisition de compétences techniques sur le développement web. Les méthodes d’apprentissage sont basées sur des pédagogies actives. Comme pour toute pratique, les compétences développées sont renforcées par l’entraînement et nous insistons auprès de nos étudiants pour qu’ils pratiquent en formation mais aussi sur leur temps personnel, sur des sujets qui les motivent.

Les articles de cette catégorie permettront de faire découvrir des projets réalisés par des étudiants de la Design Tech Académie. Pour accompagner la lecture de cet article, un glossaire est fourni à la fin de celui-ci, pour appréhender le vocabulaire et faciliter sa compréhension. Pour conclure cette publication, un médiateur numérique pourra éventuellement apporter un regard critique sur le sujet, pour en décrypter les principaux enjeux.

À travers la lecture de cet article, vous aurez l’occasion de découvrir le bot réalisé par Tony et ce qui l’a motivé dans la réalisation de son projet :Discorder-Bot-BDO”

Le projet

Contexte : le projet a été réalisé pour le jeu Black Desert Online

Présentation du jeu par Steam : “Black Desert Online est un MMORPG dans un monde vivant en constante évolution. Découvrez des combats rapides et dynamiques, chassez des monstres, terrassez des boss gigantesques, battez-vous aux côtés de vos partenaires de guilde lors de guerres, apprenez de nombreux métiers, faites évoluer vos équipements…“.

Pour progresser au sein du jeu, le joueur a besoin de faire évoluer ses équipements (armes, armures…). Ces évolutions ont un coût, on les achète avec des perles dans le jeu. La réussite d’une évolution est aussi liée aux caractéristiques du personnages ( niveau du personnage et nombre de failstack misé pour tenter une évolution). Pour assurer une meilleur gestion économique de ses parties, Tony a eu l’idée de créer un Bot qui l’informe sur ses chances de réussite lorsqu’il tente de faire évoluer ses équipements.

Pour une description plus détaillée du jeu : Black Desert Online

Le développeur : Tony MOURIER

Je suis, Tony MOURIER et j’ai intégré la Design Tech Académie en septembre 2018.

J’ai souhaité suivre la formation DTA car je suis depuis longtemps passionné par l’informatique et curieux de comprendre son fonctionnement.
Actuellement, je joue au jeu Black Desert Online et pour allier mes deux passions, j’ai 
développé un Bot.

J’aime progresser en me donnant des objectifs personnels et en y investissant mon temps libre. J’aime beaucoup partager ma passion de l’informatique et j’ai pour objectif principal d’en faire mon métier. “

Tony MOURRIER

Passionné par la programmation en général, je développe dans différents langage par curiosité avec une affinité particulière pour JavaScript et son environnement de développement avec lea bibliothèque Jquery et le module NodesJS principalement.

Langages :

CSS, Javascript, NodeJS, Jquery, PHP, WLangage

Le projet développé : “Discord-Bot-BDO “

J’ai développé un Bot qui me permet d’optimiser mes dépenses dans le jeu pour améliorer mes équipements (armes, armures, bijoux…). Par l’intermédiaire de Discord, je permet au joueur de visualiser son taux réussite pour chaque tentative d’amélioration de ses équipements.

Comment est venue l’idée de créer ce Bot ?

À l’heure actuelle, on peut retrouver ses informations sous formes de tableaux sur le web mais leur lecture est complexe et difficile… sans parler de la lecture du russe et du chinois de ces tableaux !! Du coup, j’ai fait ce Bot pour faciliter les amélioration de mes équipements dans le jeu, en connaissant la prise de risque. Le Bot calcule pour moi la prise de risque en combinant la lecture croisée d’informations trouvées sur le web et les informations de mon joueur. 

Après avoir fais tester mon Bot a des amis, ils m’ont fait la demande d’ajouter une fonctionnalité qui permettrait de connaître les horaires d’apparition des boss lorsqu’ils jouent. Du coup, pour répondre à leur besoin, j’ai développé cette fonctionnalité avec un message d’alerte affiché via Discord. Le message averti les joueurs qu’un nouveau boss va apparaître dans moins d’un quart d’heure.

Quels sont les apports de ton Bot aux joueurs de Black Desert Online ?

Via Discord, je vais demander au Bot d’analyser mes chances de réussir une amélioration pour un équipement. Après avoir envoyé mes informations, le Bot m’indiquera mon pourcentage de chance de réussir cette amélioration.

Qu’as-tu appris au cours de la réalisation de ton projet ?

Ce projet m’a permis de renforcer mes compétences et d’en développer des nouvelles sur des sujets précis :

  • Cela m’a permis de renforcer ma pratique du JavaScript notamment sur les fonctions imbriquées.
  • Ce projet m’a également permis de découvrir l’utilisation de NodeJS.
  • Enfin j’ai appris à utiliser l’API Discord : ça m’a éclairé sur le fonctionnement plus général des API et de leur rôle.

 Vous pouvez découvrir les sources de ce projet via github.

ACCeS >> GITHUB !!

Comment installer Discord-Bot-BDO

Pour installer Discord-Bot-BDO, vous devez paramétrer votre canal sur Discord. Pour cela, il faut initialiser le channel en tapant la commande suivante,”” !bunny init “” pour que le Bot récupère le channel dans lequel cette commande a été exécutée et qu’il enregistre ce channel en paramètre d’envoi par défaut.

Glossaire

  • API (Application Programming Interface) :  En programmation, c’est un ensemble normalisé de classes, de méthodes ou de fonctions qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels. Cela permet à un développeur de récupérer des informations mise à disposition par les sites via leur API sans demander une autorisation. Celles-ci sont mises à disposition. Par exemple, c’est en utilisant les API qu’on peut afficher les messages de son réseau social préféré ou un nombre de fan sur son blog personnel.
  • Bot (contraction du mot Robot) : est ici un programme qui se connecte et interagit avec un serveur comme un client humain, c’est un agent logiciel qui accomplit des tâches à la manière d’un automate en fonction de ce que lui a demandé son auteur.
  • Discord : outil de messagerie VoIP destiné à la base pour les communautés de joueur
  • Failstack : c‘est une représentation du “nombre d’échec” d’un joueur pour améliorer ses équipements, sa valeur peut impacter les chances de réussite pour de nouvelles tentatives.
  • MMORPG : (Massively Multiplayer Online Role-Playing Game) c’est un genre de jeu vidéo associant le jeu de rôle et le jeu en ligne massivement multijoueur.
  • Nested : en programmation c’est une fonction dont la définition est imbriquée dans une autre fonction.
  • NodeJS : c’est un environnement de bas niveau permettant l’exécution de programme écrit en JavaScript côté serveur.

Voir aussi

Dans l’idée de renforcer la pratique des étudiants, le deuxième cycle projet s’est déroulé au cours du mois de novembre 2018. Le sujet proposé était de réaliser la démonstration front-end d’une application web responsive (thème libre à choisir : e-commerce, météo, carnet de prospect, liste de tâches). Plus d’infos dans “En novembre 2018 on a fait ça > Design Tech Académie

Trash Granny, la démo de jeu video rétro de deux étudiants de la Design Tech Académie

Tous nos articles “Design Tech Académie”

Laisser un commentaire