🧱 Customisation des blocks

ℹ️ Introduction

En tant qu’Artiste, vous pourriez avoir envie de jouer un·e menuisier·e, un·e tailleur·se de pierre, ou quelconque métier artistique dans lequel vous seriez amené·e·s à fabriquer des blocks.

Grâce à ses systèmes dynamiques, Keldaria vous donne la possibilité inédite de customiser les modèles de nombreux blocks afin d’en créer de nouveaux, sans avoir besoin de redémarrer votre jeu ! Cette page a pour but de vous guider pas à pas dans la création de vos premiers modèles.

🎒 Prérequis

Avant toute chose, il vous faudra quelques prérequis

  • Disposer de 15 heures de jeu avec votre personnage, afin d’avoir accès au Monde Build (Mont-Cristal).

  • Installer le logiciel de modélisation BlockBench (ou utiliser son interface en ligne). Vous pouvez cependant en utiliser un autre si vous êtes à l’aise ; ce tutoriel portera cependant sur BlockBench.

  • Si vous utilisez BlockBench, installez le plugin CodeView, qui vous permettra de ne pas avoir à exporter votre modèle vers un fichier.

  • Un logiciel d’édition d’image afin d’éditer des textures. (Je vous conseille Paint.NET.)

🛠️ Créer un modèle

Les deux catégories ci-dessous vont vous guider pour obtenir le code de votre modèle. Celui-ci, vous devrez par la suite l’uploader sur le pastebin de Keldaria, afin d’obtenir un lien .txt vers votre modèle, lisible par le jeu. Après avoir fini votre modèle et récupéré son texte, uploadez-le ici.

☕ Modèle Java

ajmis

Pour créer un modèle JAVA, sélectionnez "Modded Entity". Le nom n’est pas intuitif, mais c’est comme ça.

La création et l’ajout de modèles Java sont documentés dans la vidéo ci-dessus.

🧩 Modèle Json

7v5eo

Pour créer un modèle JSON, sélectionnez "Java Block / Item". Encore une fois, c’est contradictoire, mais c’est comme ça (ici « java » se réfère au nom de la version, et non au format).

14rdl

Je vous invite à laisser les paramètres par défaut, mais à désactiver l’Ambient Occlusion, qui peut causer des problèmes de lumière peu élégants sur le rendu de votre modèle.

c2s7u

Nous ne nous attarderons pas sur tous les aspects du procédé créatif, de nombreux tutoriels sur l’utilisation de BlockBench étant déjà disponibles sur internet.

k5isw

Une fois votre modèle terminé, je vous conseille d’aller dans Tools → Set Cullfaces Automatically. Question d’optimisation.

ej7xl

Pour obtenir le texte de votre modèle, il va vous falloir accéder au code JSON généré par BlockBench. Pour ce faire, exportez votre modèle vers un fichier JSON, ou, si comme moi vous avez installé le plugin CodeView, allez dans Tools → Open Code View.

p3rd8

Une fois le code JSON du modèle devant vos yeux, il vous faudra simplement modifier les textures en changeant le chemin d’accès de la texture vers un lien Keldaria pointant vers la texture que vous voulez utiliser.

Si vous souhaitez utiliser des textures de base dans votre modèle, merci d’utiliser les liens disponibles ici, qu’on ne se retrouve pas avec 40 liens différents pour une texture de bois.

Une fois ceci fait, sélectionnez tout le code, et copiez-le pour le mettre en ligne sur le pastebin de Keldaria, afin d’obtenir le lien unique de votre modèle.

📦 Modèle OBJ

Vous pouvez aussi choisir de créer un modèle OBJ. Ce dernier est moins optimisé que le JSON, mais il permet de faire des modèles assez détaillés, plus simplement que le Java. Quand il s’agit de blocks, privilégiez le JSON quand vous le pouvez.

fui5m

Sur BlockBench, l’idéal est de créer son modèle en tant que Generic Model.

1outk

Une fois votre modèle terminé, exportez-le avec le bouton "Export OBJ Model", et choisissez un nom pour votre fichier. Une fois exporté dans le dossier de votre choix, vous devriez trouver 2 fichiers : "model.mtl" et "model.obj".

Le fichier .mtl ne nous intéresse pas ; vous pouvez le supprimer ou le laisser de côté.

open obj model txt

Ouvrez donc le fichier .obj avec l’éditeur de texte de votre choix. Ça n’a vraiment pas d’importance, que ce soit le bloc-notes de Windows ou bien quelque chose de plus sympa comme Sublime Text.

hngo7

Vous devrez ensuite définir la texture du modèle, avant de le mettre en ligne. Pour ce faire, vous devez insérer une nouvelle ligne tout en haut de votre fichier. C’est très important que ce soit sur la ligne 1.

Écrivez ensuite #texture lien_de_la_texture.png

Veillez à ne pas mettre d’espace entre le "#" et "texture".

copy obj model content

À l’aide du raccourci "CTRL+A", sélectionnez l’intégralité du fichier. Copiez-le ensuite dans votre presse-papier, avec le raccourci "CTRL+C".

Une fois ceci fait, sélectionnez tout le code, et copiez-le pour le mettre en ligne sur le pastebin de Keldaria, afin d’obtenir le lien unique de votre modèle.

🎮 L’intégrer en jeu

S’il est évident que pour passer votre création du Mont-Cristal jusqu’au monde RP, vous aurez besoin d’une intervention staff, vous pouvez faire tous les tests que vous voulez au Mont-Cristal, afin de préparer le block au mieux.

Pour commencer, munissez-vous du block dont vous voulez customiser le modèle. Ce système est compatible avec tous les meubles Keldaria disposant d’un espace de rangement pour items, ou avec les "Blocks Custom" en bois et en pierre. Vous pouvez retrouver tout ça dans l’onglet créatif "Keldaria Meubles".

Une fois le block dans votre main principale, vous devrez utiliser la commande /customizeblock pour ajouter le modèle, et customiser ses paramètres. N’oubliez pas de vous munir du lien .txt du modèle comme obtenu dans les étapes ci-dessus.

⌨️ Utilisation de la commande

Toutes les commandes ci-dessous vous sont accessibles au Mont-Cristal uniquement. Rien ne sert d’essayer dans le monde RP.

  • /customizeblock setModel <url> <type>

    • Définit le modèle du bloc tenu en main au lien renseigné. N’oubliez pas de mettre JSON après le lien s’il s’agit d’un modèle JSON, ou JAVA s’il s’agit d’un modèle Java.

  • /customizeblock isSolid <true/false>

    • true : le block ne sera pas traversable.

    • false : le block sera traversable.

  • /customizeblock setCustomBB x1 y1 z1 x2 y2 z2

    • Définit la boîte de collision par défaut du block en fonction des valeurs renseignées. (Exemple pour une box de type dalle : /customizeblock setCustomBB 0 0 0 1 0.5 1.)

  • /customizeblock setRenderBB

    • Définit la boîte de rendu du block en fonction des valeurs renseignées. (En cas d’un modèle de deux blocks de haut, on mettrait une boîte de rendu comme celle-ci : /customizeblock setRenderBB 0 0 0 1 2 1.)

    • NOTE : la "renderBB" n’est pertinente que pour les modèles Java et OBJ.

  • /customizeblock addBB

    • Permet d’ajouter une boîte de collision supplémentaire, dans le cas d’un escalier par exemple. On lui donne cette fois-ci un nom afin de pouvoir la retirer si l’envie nous en prend.

  • /customizeblock removeBB

    • Permet de retirer une boîte de collision précédemment ajoutée, avec le nom qu’on avait renseigné.

  • /customizeblock fullFaces (utilisez tab pour avoir la liste des possibilités)

    • Permet de définir les côtés de votre modèle qui sont "remplis", afin que les faces des blocks complets adjacents ne soient pas rendues. C’est important pour l’optimisation uniquement — prenez ça au sérieux !