Cet article n’est pas terminé. Plus d’explications sont à venir 😉

Après le LGdir et toujours dans notre quête à la création d’outils pour les mapmakers, nous sommes tombé sur une idée, le sain Graal de l’outil de création: une librairie ! Vous l’aurez compris, après Hierarchy, ce projet est notre deuxième petit bébé.

A quoi ça sert ?

Le principe est simple: regrouper tous les éléments pouvant être utiles à la création de n’importe quel map ou système Minecraft. Par exemple, vous aurez à dispositions une banque d’arbres permettant de faire des décors naturels plus facilement. Vous aurez aussi accès à des systèmes permettant par exemple de gérer des projectiles a la façon du LGdir, ou à des ressources pack pour embellir vos maps !

Pour les développeurs ?

Là où les adeptes du développement conçoivent aisément à quoi sert une librairie, d’autres ont une vision flou voir même obscure de leur utilité dans un projet de développement.

Concrètement, il s’agit d’un regroupement de fonctions déjà toutes faites, permettant au développeur de ne pas avoir à tout faire lui même et à user ses petits doigts. Certaines de ces fonctions sont par exemple, les fonctions mathématiques. Les maths, c’est compliqué, et pas très jouasse à intégrer à ses projets. C’est pour cette raison que certains développeurs fous ont, dans la plupart des langages, créé des fonctions permettant de faire des maths très facilement.

Ainsi, pour déterminer la racine carré d’un nombre, le développeur n’a qu’a appelé la fonction toute prête. Il n’a pas besoin de savoir comment trouver cette racine, ce qui lui permet de se concentrer sur son programme.

Cette librairie fonctionne de la même façon. Vous souhaitez tirer une balle qui rebondit sur les murs ? une seule commande suffira !

Documentation

Tutoriel

Comment utiliser les fonctions ?

Avant d’essayer d’utiliser les fonctions, il vous faut vous équiper des bons outils. Pour cela, nous vous recommandons d’installer le logiciel notepad++ (un éditeur de texte avancé) ainsi que notre add-on, le CSH (un colorateur syntaxique facilitant la lecture des fonctions).

Faire un tuto complet sur l’utilisation de chaque fonction serait bien trop long et indigeste. Pour cette raison, nous vous avons concocté un petit tuto général vous permettant de vous y retrouver dans n’importe quelle situation.

Chaque fonction dispose d’une en-tête vous permettant de comprendre:

  • Les prérequis (requierments): score(s) et/ou autre(s) élément(s) à mettre en place afin que le système puisse fonctionner (NOTE: Depuis la version 1.13-3, les dépendances sont gérées automatiquement par la librairie. Vous n’avez donc plus à vous en soucier)
  • Les paramètres (input): score(s) et/ou éléments(s) que la fonction va utiliser comme données pour exécuter sa tâche (ex: dans une fonction cosinus, cette dernière doit avoir comme donnée, stocké sur une score « Var1 », un angle entre 0 et 360 degrés).
  • Les retours (output): score(s) et/ou autre(s) élément(s) que la fonction utilisera pour conserver les résultats (ex: la fonction cosinus mettra le résultat sur un score nommé « Res »).
  • Autre: certaines fonctions peuvent avoir un fonctionnement assez différent (même si c’est rare). Tout est alors décrit dans l’entête ou dans un ReadMe présent ans le dossier contenant la fonction.

Le principe d’une librairie est avant tout de « cacher » la complexité des fonctions (car après tout, en temps que développeurs digne de ce nom, nous nous devons d’être fainéant). Ainsi, pour utiliser une fonction qui calcule le cosinus d’un angle, vous n’aurez pas besoin de savoir comment le calculer. Il vous suffit juste d’appeler la fonction (gunivers-lib:utils/math/cos) et vous aurez votre cosinus, comme par magie ! On appel ça une « boite noir » car il se passe des choses obscures à l’intérieur qu’on a pas besoin de connaître. Il suffit juste de savoir quelles données elle mange et quelles données elle renvois à la sortie (dans le cas d’un Cosinus, on donne un angle entre 0 et 360 et elle ressort une valeur entre 0 et 1)

Imaginons donc que notre fonction s’appelle Tuto. La démarche à suivre est donc la suivante:

Comme vous pouvez le voir, l’essentiel des informations sont déduites de l’entête et du nom de la fonction (la fonction Cosinus fera … un Cosinus, c’est comme le porc salut c’est marqué dessus).

Et pour les constructeurs ?

Pas de panique ! Le but de cette librairie n’est pas de rassembler que des fonctions, mais aussi des structures pré-construites, comme des rochers, des arbres, des maisons ou autre constructions qui reviennent souvent dans différentes maps. Le but est de permettre aux constructeurs de passer moins de temps sur des choses banales, et ainsi se concentrer sur l’essentiel.

Par ailleurs, si vous souhaitez nous aider à ajouter des structures dans la lib, on vous attends sur notre serveur Discord !

Documentation

Trailer

Crédits

  • LeiRoF: Concept & développement
  • Théogiraudet/Oromis: Développement
  • Luludatra: Développement
  • KubbyDev: Développement
  • TheTagMen: Construction

Nous remercions également les donateurs, sans qui ce type de projet n’aurait pas pu voir le jour:

  • Théogiraudet/Oromis
  • Syl2010
  • Leirof

Téléchargement

<

p style= »text-align: center; »>

Ce projet est sous License. Si vous utilisez cette librairie dans une création publique, merci de renseigner Gunivers dans les crédits de cette dernière.

De plus, n’hésitez pas à nous partager votre projet (sur twitter @Gunivers_ ou sur ntore Discord) ! Nous serons ravis d’avoir vos retours et même de partager votre création !

Gunivers-Lib 1.12-4 (STABLE)   Gunivers-Lib 1.13-3 (STABLE)   Gunivers-Lib 1.14-1 (STABLE)

Installation

  • Versions stables: Décompressez l’archive et placez le dossier « Gunivers-Lib » dans le répertoire « data/function » présent dans celui de votre monde. Retournez sur votre jeu dans le monde en question et entre « /reload » dans le chat.
  • Version de développement: L’archive contiendra un dossier « Gunivers-Lib-master » ou « Gunivers-Lib-1.12 ». Renommez le en « Gunivers-Lib » puis installez le de la même façon que pour les versions stables.

Le projet étant en cours de développement, il est mis à jour régulièrement. Les liens de téléchargement « stable » sont mis à jour à chaque nouvelle version testée et validée, tandis que le lien vers la version de développement est automatiquement mis à jour (instantanément, dès qu’on fait quelque chose, vous le voyez. C’est beau la technologie). N’hésitez pas à nous dire sur notre discord si vous avez des suggestion ou autre idées a apporter à ce projet.

LeiRoF

Hey ! Moi c'est LeiRoF (Vincent de mon vrai nom), j'ai 21 ans, je suis étudiant en license de Physique-Chimie, j'ai créé Gunivers et je développe tout ce qui me passe par la tête dans mes heures perdues. Bref, j'aime bien la quiche. Des questions ?

1 réponse

  1. 25 janvier 2018

    […] Lien Original […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

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

Aller à la barre d’outils