>> La recherche se fait sur tous les élements du jeu Minecraft <<
Aidez nous a financer le site: Joignez l'utile à l'agréable et profitez d'FR-Minecraft sans publicités en devenant VIP ! Ou ajoutez FR-Minecraft dans vos exceptions, nous n'abusons pas des pubs
Aidez nous a financer le site: Joignez l'utile à l'agréable et profitez d'FR-Minecraft sans publicités en devenant VIP ! Ou ajoutez FR-Minecraft dans vos exceptions, nous n'abusons pas des pubs

Minecraft 1.10: Abandon des ID

Le 27/11/2015 à 2h19
Aidez nous a financer le site: Joignez l'utile à l'agréable et profitez d'FR-Minecraft sans publicités en devenant VIP ! Ou ajoutez FR-Minecraft dans vos exceptions, nous n'abusons pas des pubs

Vous connaissez probablement les ID (IDentifiant) dans Minecraft, ce sont des numéros auquel sont associé des éléments. Les ID les plus connu étant bien sur les ID de blocs et objets, mais ce ne sont pas les seuls. Quasiment tous les éléments du jeu ont des ID: Ce système a été créé par Notch dès l'origine du jeu, pour des raisons de performance: il est en effet beaucoup plus simple pour un ordinateur de manipuler des nombres que du texte ou autres objets plus complexe, c'était donc un choix judicieux fait à l'époque.

Pour que ce système de numérotation fonctionne, il est cependant essentiel que chaque numéro soit unique, il n'est pas possible d'avoir 2 éléments avec le même numéro. Avec le temps, cela a commencé à poser certains problèmes:
  • Dans certains cas, le nombre d'élément était limité (je vous explique après pourquoi)
  • Et surtout, comment garantir l'unicité des IDs dans les mods ? Chaque moddeur choisi les numéros de son choix, qui risque d'entré en conflit avec d'autres mods, voir pire avec les ID utilisés dans Minecraft dans des versions ultérieures. Par exemple dans Minecraft 1.8 l'ID d'objet 443 n'était pas utilisé, mais dans Minecraft 1.9 il correspond aux ailes (Elytra), comment faire si un moddeur a déjà utilisé cet ID dans son mod ?

Heureusement, chaque catégorie d'éléments dans Minecraft possède sa propre numérotation des ID: dans les exemples cités en début d'article vous verrez ainsi que l'ID 33 est attribué à la potion de régénération II si c'est un ID de potion, et à l'enchantement Silk Touch si c'est un enchantement. Ce même numéro 33 désigne également le bloc Piston, le biome Coline de Taïga Géante, ou encore l'achievement Surpuissant, chaque catégorie est indépendante.

Il y a cependant une exception à cette règle: Les blocs et les objets partagent la même numérotation, et ce partage pose aujourd'hui beaucoup de problème, comme vous allez le constater.

Afin de garantir l'unicité des numéros entre blocs et objets, tout en permettant de les différencier facilement, Notch avez choisit de numéroter les blocs entre 0 et 255, et les objets entre 256 et 511. Une seule exception à cette règle: les disques du jukebox ont (pour une raison que j'ignore) des ID compris entre 2256 et 2267.


La limitation des ID
Le nombre de blocs est donc limité à 256, et il est impossible d'augmenter ce nombre puisque les numéros suivant sont utilisé (256pelle en fer, etc). Aujourd'hui, dans la dernière snapshot de la future version 1.9, le numéro le plus grand utilisé est le numéro 212 (glace gelée) (en excluant les blocs de structures qui ont déjà l'ID 255). Cela signifie-t-il qu'il ne reste que 44 blocs possible dans Minecraft, et qu'ensuite le jeu sera saturé ?

Au début, on aurait pu le croire, car le problème est encore pire:
Dans la version Indev (début 2010), Notch ajouté le four. Mais ce bloc a 2 affichages possible: allumé, et éteint. Comment faire ? Notch a tout simplement créer 2 ID de blocs, le 61 pour le four éteint, et le 62 pour le four allumé. Ces 2 ID sont toujours utilisé aujourd'hui. Plus tard il refera la même chose avec le minerai de redstone qui a les ID 73 (éteint) et 74 (allumé).

Heureusement Notch lui même avait déjà commencé à chercher une solution.

Le problème se posa avec l'ajout dans Minecraft de la redstone dans la version Alpha 1.0.1 début juillet 2010.
Le cable redstone peut prendre des formes très différente en fonction de son environnement. S'il est seul, il à une forme de point. S'il a des cables de chaque coté, il a une forme de ligne, il peut aussi monter sur le coté nord, sud, est, ouest, ou aller vers chacune de ces directions, ou une combinaison de tous ces cas la. Faire un bloc pour chaque possibilité aurait nécessité un nombre trop important d'ID (256 pour être précis, soit l'intégralité des ID disponible). Comme faire ?
La solution fut d'ajouté un "sous-ID", un numéro de data qui permet d'avoir plusieurs affichages possibles pour un même bloc. C'est grâce à ces numéros de data qu'on a aujourd'hui des escaliers qui peuvent être orienté dans toutes les directions (nord, sud, est, ouest, haut, bas, en angle, etc.).

Aujourd'hui ces numéros de datas sont aussi utilisés pour augmenter virtuellement le nombre de bloc: Certains blocs sont fixe et ne change jamais (par exemple un bloc de pierre n'a pas besoin de data), Mojang réutilise donc ces numéros de data de ces blocs pour créer des variantes de ces blocs, c'est ainsi que début 2014, dans la version Minecraft Release 1.8, ont été ajouté dans Minecraft les blocs de GraniteGranite poliDioriteDiorite PolieAndésiteAndésite Polie, toutes ces roches ont le même ID (le 1), mais avec un numéro de data différent (de 0 à 6).


Les ID sont donc maintenant illimité ?
Malheureusement non, car si cette solution à permis de limiter la consommation des ID, les ID reste une ressource très limité, on a seulement repoussé l'échéance de la pénurie d'ID. D'autre part, cette solution ne résout aucunement l'autre problème de l'utilisation des ID: comment garantir l'unicité de chaque ID lorsqu'on utilise des mods ?

La solution choisit fut d'associer a chaque élément du jeu un nom, ces nouveaux ID (IDentifiant) ne sont plus des numéros, mais du texte. L'avantage est évidement: vous n'avez plus aucune limitation dans le nombre d'élément possible. De plus le risque de collision entre mod est sérieusement réduit.

C'est ainsi que ces dernières années quasiment tous les systèmes dans Minecraft ont reçu de nouveaux ID sous forme de texte. Ces ID textes vous les connaissez probablement, puisque ce sont les noms que vous devez taper dans les commandes, par exemple dans la commande suivante:
/give @p minecraft:stone 1 3
Ici l'ID du bloc est "minecraft:stone". Dans cette commande le numéro de data (le "3") n'a pas été converti sous forme de texte, mais il devrait l'être prochainement, j'en reparle plus tard.
Actuellement ce système d'ID texte fonctionne en parallèle aux ID numériques qui continuent d'être au coeur du fonctionnement du jeu.

Mais comme a chaque fois, il y a des exceptions, certains éléments n'ont pas encore d'ID sous forme de texte:
  • Les enchantements: ils sont encore aujourd'hui désigné par des numéros.
Exemple avec cette commande qui est valide dans la version 1.9 de Minecraft:
/give @p minecraft:iron_sword 1 0 {ench:[{id:16,lvl:2}]}
Ici j'enchante mon épée avec l'enchantement numéro 16 (= Sharpness)
  • Les potions: Et pour cause, les ID de potions disparaîtront dans Minecraft 1.9, remplacé par des tags NBT.


NBT: La solution ultime ?
NBT, je n'en ai pas encore parler, pourtant eux aussi permettent d'avoir plusieurs versions d'un même objet ou bloc.
NBT signifie litéralement "Tag de Nommage Binaire". Dit plus simplement, cela permet de créer des tags, nommé (avec un nom sous forme de texte), stoqué en mémoire sous forme binaire (donc rapide à lire pour l'ordinateur, mais en tant que joueur on ne voit jamais cette forme binaire, nous ne connaissons que sa représentation au format JSON, plus facile à lire et écrire pour nous humain).

Si NBT permet de créer des personnalisations potentiellement infinies sur un seul objet, il a cependant un inconveniant: sa structure est lourde, et si tous les blocs du jeu avaient des tags NBT pour l'affichage cela ralentirait considérablement l'affichage du jeu, ces tags ne sont donc pas une solution pour augmenter virtuellement les ID, c'est pourquoi ils ne sont jamais utilisé pour créer des variantes d'un bloc.


Les Block state ?
Les block states, je n'en ai pas encore parlé, c'est la version nommée des anciens numéros data. Pour reprendre notre exemple du bloc de pierre, le bloc de pierre a maintenant un block state nommé "variante" qui peut prendre les valeurs:
  • stone
  • granite
  • smooth_granite
  • diorite
  • smooth_diorite
  • andesite
  • smooth_andesite
Ici encore le numéro de data a été remplacé par une valeur texte, plus souple d'utilisation. L'avantage de ces blocs states est qu'il est possible d'avoir plusieurs valeur pour un seul et unique bloc, par exemple un bloc de feuille à 3 block states:
  • check_decay (valeur technique)
  • decayable (le bloc disparaît-il automatiquement si on coupe le tronc de l'arbre ?, vrai pour les bloc naturel, faux si posé manuellement)
  • variant (les différents types de feuilles)
Ce système de block states n'est pas encore utilisé pour l'affichage dans le jeu, mais il devrait à terme remplacer le système de data value (les "sous-ID" de bloc).


Minecraft 1.10: La suppression des ID de blocs et d'objets
Nous sommes donc actuellement dans une période de transition, ou Minecraft fonctionne toujours en interne avec des numéros ID (très rapide, mais limité), mais ou chaque bloc a malgré tout un nom qui le désigne de manière unique. Ce nom est utilisé dans les commandes et il est affiché dans le debug. Est-il maintenant possible de supprimer les ID numérique pour n'utiliser que les ID texte ? Une fois de plus, les choses ne sont pas si simple.

Les Performances:
Le premier problème qui se poserai en abandonnant les ID numérique sera un problème de performance. Lire un nombre pour un ordinateur est très rapide, le processeur est capable de le faire en un seul cycle. Lire un texte est beaucoup plus compliqué, il faut lire chaque caractère un par un, plus a chaque manipulation refaire cette lecture. Au final, on risquerai de réduire drastiquement les performances du jeu si on abandonnait les ID numérique, car cette opération de lecture sera a répéter pour chaque bloc du monde à afficher sur votre écran, et cela plusieurs dizaines de fois par seconde!

Le stockage:
Un autre avantage des ID numérique est leur taille: un nombre se stocke très facilement en mémoire, il ne prend que 2 ou 4 octets dans la majorité des cas. Un texte, avec sa structure, va prendre beaucoup plus de place, plusieurs dizaines d'octet, et cela pour chaque bloc qui compose votre monde (des millions). Le changement d'un système numérique a un système texte ferait gonfler d'un coups la taille de votre map. Ce n'est pas forcement très grave dans le cas d'une partie solo, mais pour les serveurs multijoueurs qui ont déjà des maps de plusieurs dizaines de Go, cela serait ingérable.

La compatibilité:
Autre soucis: actuellement seul les ID de blocs sont enregistré dans les fichiers de sauvegarde de votre monde. Si demain le système change, comment Minecraft arrivera-t-il a relire des numéros, alors qu'il ne comprend que du texte ?


Une transition en douceur
La solution est de garder un système mixte, mais différent d'aujourd'hui.
Actuellement chaque bloc, objet, etc. possède un ID qui lui est définit directement dans le code du jeu. A cela s'ajoute un nom, lui aussi fixe. Demain c'est le nom qui sera son ID principal, et l'ID numérique sera secondaire.

Demain, chaque bloc n'aura qu'un nom de définit dans le code du jeu, aucun ID numérique ne lui sera associé. Lors du lancement d'une partie, une table de conversion sera créer pour votre monde, et a chaque bloc sera associé un numéro. Ce numéro ne sera valable que pour votre monde, il pourra changer d'un monde a l'autre, mais dans une même partie il sera toujours fixe. Ainsi, si vous ajouté un mod, le jeu attribura automatiquement aux blocs du mod des ID numérique disponible, et si vous avez plusieurs mods vous serez sur qu'ils n'auront pas 2 fois le même ID d'attribué. Cette solution permet également de garder le stockage et l'utilisation d'ID numérique par le moteur du jeu, ce qui vous garantie les meilleures performances.

C'est cette solution qui devrait être utilisé dans Minecraft 1.10.


ID composés
Il reste un dernier problème auquel je n'ai pas répondu: Si les risque de collision du nom de blocs entre 2 mods est drastiquement réduit, il n'est pas impossible que 2 mods donnent le même nom à leur bloc. Comment empêcher cela ?
La solution choisit par Mojang n'est pas de leur invention, elle existe depuis longtemps, dans un système que vous utilisez tous les jours: Les emails.

Vous êtes vous déjà demandé pourquoi les emails avez toujours un @ au milieu de l'adresse ? Ce @ est précisément la solution a notre problème de garantir l'unicité des noms.
Il est inconcevable que 2 personnes dans le monde puissent avoir la même adresse email, mais comment empêcher cela ? La solution la plus simple est la centralisation: avoir un organisme central qui gère les noms, et qui garanti leur unicité. C'est le cas que vous retrouverez sur google, twitter, ou même sur minecraft: lorsque vous vous inscrivez, vous ne pourrez pas prendre le même pseudo qu'une autre personne, google, twitter ou mojang vérifiera que personne d'autre n'a déjà ce nom. Mais dans le cas d'une adresse email, qui aurez-pu faire ce control ? C'est du travail, et c'est gratuit, donc il n'y a pas d'argent pour le payer... l'email est ce qu'on appelle un système décentralisé, qui a donc utilisé un autre solution: les adresses composées.
Dans le cas des emails, la partie droite (après le @) est un nom de domaine, dont l'unicité est certifié par les organismes qui attribuent ces domaines (et qui sont payé pour ce travail par la location de ces mêmes domaines, puisqu'un nom de domaine n'est pas gratuit). La partie à gauche du @ (votre nom) est vérifié par le gestionnaire de la boite mail, c'est lui qui garantie cette unicité (lui étant payé par vous). Les 2 parties étant unique, vous êtes sur que votre email est unique.

Mojang a réutilisé exactement ce même procédé pour nommer ses blocs: le "minecraft:" qui se trouve devant le nom du bloc correspond au "domaine", il est attribué de manière fixe pour chaque mod. Ensuite vous pouvez donner le nom que vous voulez à votre bloc, grâce à ce préfixe unique vous êtes sur que cela n'entrera jamais en conflit avec un autre mod. Les élément du jeu ont, vous le savez déjà, le préfixe "minecraft:". Par soucis de simplification, les blocs appartenant au jeu Minecraft vanilla (c'est à dire sans mod), peuvent être écrit sans préfixe, le jeu ajoutant automatiquement le préfixe "minecraft:" dans ce cas là.



Voila, vous savez maintenant tout sur les ID, sur leur fonctionnement, et sur les changements qu'apportera la version 1.10. Vous devriez aussi mieux comprendre maintenant pourquoi ce changement de Minecraft 1.10 sera un cap majeur vers l'API de plugin (plus de collision d'ID) et pour l'avenir de Minecraft (nombre de bloc illimité) :-)
Cet article a été publié par Tronics, le 2015-11-27 02:19:00. Source
Dernière modification par  Tronics le 27/11/2015 à 4:31.
Partager :
Commentaires de la news Minecraft
Minecraft 1.10: Abandon des ID :
Tronics (administrateur)
le 27/11/2015 à 04:30
Un article particulièrement technique aujourd'hui, j'espère qu'il vous plaira quand même, dites moi ce que vous en pensez, si cela vous intéresse de mieux comprendre le fonctionnement interne du jeu.
Breton (anonyme)
le 27/11/2015 à 05:14
Donc après la 1.10 on aura beaucoup plus de bloc/item par maj? Pas forcément des blocs avec leurs propres propriétés mais des variantes comme ils ont pu faire avec les fleurs.
dinrab (anonyme)
le 27/11/2015 à 05:21
merci pour l'article c'est intéressant tout sa.
Tronics (administrateur)
le 27/11/2015 à 05:26
@Breton Je ne sais pas, mais en tout cas plus rien ne devrait les limités techniquement. Après reste a voir si ça apporte quelque chose au jeu, donc je doute qu'ils vont inonder le jeu de nouveaux blocs.
D0D0DING0 (anonyme)
le 27/11/2015 à 05:32
gaffe aux fautes :p
ça fait plaisir de voir qu'ils pensent aux mods, mais la 1.10 ... déjà que la 1.9 est pas pour 2015, je trouve qu'ils voient un peu loin la :/
Aussi, pourquoi ils ont pas juste utilisé une pré-data numérique (1:1 = bloc stone, 2:1 = enchant fire protection, 3:1 = iron shovel ...) ca aurais rendu illimité le nombre de blocs sans trop se casser la tête ^^
Dernier truc sans rapport, on dit toujours que Minecraft en C++ serait impossible à modder, mais pourtant certains jeux (je pense à Skyrim) ont bien étés moddés sans êtres en Java... j'étale mon inculture mais si qqun a une réponse, je suis preneur :)
le 27/11/2015 à 06:06
Je n'ai pas bien compris.
Ludoxepasco (anonyme)
le 27/11/2015 à 06:48
Donc la 1.9 n est pas sortit mais le projet de la 1.10 est déjà là ?
...
le 27/11/2015 à 06:49
GW l'article, malgré les quelques fautes de conjugaison :D
le 27/11/2015 à 07:12
C'est vrais que si ça baissait les perfs du jeu, les joueurs avec un petit pc en terme de processeur seraient vraiment pénalisés... (j'en sais quelque chose je tourne avec un petium) Et heureusement qu'ils ont trouvé une alternative !
Hud_12 (anonyme)
le 27/11/2015 à 07:34
Très intéressant comme news ! Il m'a fallu 12 mins pour la lire mais c'était 12 mins bien dépensées !

Dommage que cela ne soit pas implémenté dans la 1.9, si on doit attendre la 1.10, on ne sera pas sortis de l'auberge x)
le 27/11/2015 à 07:35
Tant que les performances du jeu ne sont pas diminuées, et que ça ne gêne pas pour les commandes, c'est une bonne chose ! Merci pour l'article Tronics, il a pas dû être simple à rédiger ^^
Veritae (anonyme)
le 27/11/2015 à 08:33
C'est trop dur de coder l'ID sur 2 fois plus d'octets ? De toute manière on aura toujours un probleme de perf du simple fait que ca tourne sous java.
le 27/11/2015 à 08:36
Super cool, merci! Mais j'espère que Mojang se bougeras le uc, si vous voyez ce que je veux dire, parce que là on a pas eu notre snapshot, et la 1.9 est trop faible en ajouts visibles. C'est dommage.
Abs0lute-Zer0 (anonyme)
le 27/11/2015 à 10:01
Super article, merci.
C'est de très bonne qulité et super instructif, honnêtement c'est pour ce genre d'articles que je préfère fr-minecraft.
lulastaque-2 (anonyme)
le 27/11/2015 à 10:44
Très instructif, merci tronic.
Tu ne sais pas comment ils ont codés les autres versions de minecraft (W10/consoles/PE...) Je suppose qu'ils ont choisis un autre systéme pour plus de performances.
Opty_Ghost (anonyme)
le 27/11/2015 à 10:59
Super article ! <merci !
Mais tu devrais dormir Tronics ^_^!
le 27/11/2015 à 11:22
J'ai peut être loupé un passage ou pas bien compris, mais pourquoi ils changent pas le type d'encodage de l'id ? J'imagine qu'ils ont pris le format TinyInt qui va de 0 à 255. Mais avec un SmallInt ils pourraient aller jusqu'à 65535 ^_^ après sous Java ça marche peut être différemment.
Kelekun (anonyme)
le 27/11/2015 à 12:42
Mais en fait, pourquoi ils travaillent sur la 1.10 au lieu de finir la 1.9 ???
benfr80 (anonyme)
le 27/11/2015 à 13:13
moais ils aurait du finir la 1.9 avant
Titouan122NoCo (anonyme)
le 27/11/2015 à 13:52
@burnout293 non, ils ont sans doute utilisé le type de variable Java "byte", qui peut contenir des entiers de -128 à 127. Soit 255 nombres ! Après il suffit de virer le symbole négatif et voilà. Ou alors ils on codé le jeu comme quoi ce n'est pas l'ID qu'on voit mais l'ID - 128. Il y a plein de possiblités.
Mais je doute que ce soit ce que j'ai écrit plus haut, car sinon il suffirait de changer le byte par un Short, ou tout simplement par un Integer (int). Ce qui impliquerais tout de même un gros travail car il faudrait remplacer des lignes et des lignes de code dans les sources du jeu, et je ne parle pas des mods.

Bref, ils ont sans doute leurs raisons !
le 27/11/2015 à 14:04
Sa va être franchement pratique ! Merci @Tronics pour tout ces détails :)
lebairo9 (anonyme)
le 27/11/2015 à 14:08
Ok donc on peut s'attendre a un minecraft qui bug 10 fois plus dans le future :(
Min360 (anonyme)
le 27/11/2015 à 14:31
@Tronics je sais pas si je devrais être content ou pas de la nouvelle...
J'avais mémorisé TOUT, j'ai bien dis TOUT les ID de minecraft
Mais d'un autre côté, si j'ai bien compris, d'après moi, les blocs vont beaucoup augmenter durant les prochaines mise a jour donc plus de ressources au jeu=plus de fun

Corrige moi sur les blocs des mises à jours pour savoir si je suis en colère ou pas xD
Tronics (administrateur)
le 27/11/2015 à 14:59
@D0D0DING0, @Veritae, @burnout293
Augmenter le nombre d'ID ne réglera pas le problème de colision (un même ID utilisé par plusieurs mod) ;-) Lisez l'article jusqu'au bout, je sais qu'il est long, mais tout est expliqué ;)
le 27/11/2015 à 15:11
J'aimerai remercier ceux qui créent ce genre d'articles pour la communauté française, car c'est très très instructif, et moi personnellement ça m'intéresse énormément. J'ai appris pas mal de chose concernant l'ID, étant mapmaker je m'étais offusquer de la suppression de l'ID en numéro à l'intérieur des bloc de commandes pour les numéro de block à travers le passage de la version 1.6 vers la 1.7.
Grâce à cet article je comprend mieux pourquoi tout ces changements, il suffit juste de bien expliquer aux gens et ca permet de ne plus s'énerver sur des changements qui peuvent agacer quand rien est expliquer du pourquoi du comment.

J'aimerai voir plus souvent des articles de ce genre, car je trouve ca tellement rare mais tellement utile. En tout cas merci à celui qui l'a écrit.
le 27/11/2015 à 16:19
Franchement c'est un très bon article, un peu technique certes, mais très sympa si on fait un peu de programmation ou que l'on s'intéresse un peu au côté technique.

Merci Tronics

PS : bien que ce type d'article soit sans doutes plus long à rédiger, je ne suis pas contre en voir plus sur le site :)
le 27/11/2015 à 16:41
en cassant le tronc d'un arbre, l'arbre peut se casser entièrement?
francois95 (anonyme)
le 27/11/2015 à 16:47
Une chose que je n' ai pas compris: sait-on vraiment que mojang abandonnera les ID en 1.10 ou ce n' est que supposition? Car je serait eux, je ferais le changement uniquement sur MCPE pour booster le modding dessus.
Nikolavitch (anonyme)
le 27/11/2015 à 17:05
Pour D0D0DING0 :
Les mods de Skyrim proviennent en fait d'un outil fourni par l'équipe de développement : le Skyrim developement kit ou un truc du genre. Le problème d'un jeu codé en C++, c'est qu'il est téléchargé dans ton ordi sous un format illisible pour un humain, qui ne peut donc ni comprendre ses mécaniques ni en rajouter via un mod.
Le Skyrim Developpement Kit permet au modeur de programmer ses idées, puis l'outil les transforme en format lisible par le jeu mais illisible pour un humain.

à l'inverse Minecraft est en Java, et non en C++ ce qui signifie que les fichiers que tu as téléchargés sont lisibles par un humain (avec quand même un logiciel approprié et une formation en programmation, faut pas déconner ^^). Le modeur a juste à rajouter ses fichiers en Java dans le .jar et ça marche. Il n'a pas besoin de passer par un outil de développement de mod.

Pour Tronics :
C'est un article vraiment intéressant qui vaut la peine d'être lu !
Je suis content des commentaires aussi. Critiquer l'optimisation d'un jeu sans connaître un minimum la programmation, c'est un peu comme si quelqu'un ignorant totalement l'orthographe critiquait la manière dont un livre est écrit.
lololol (anonyme)
le 27/11/2015 à 17:07
J'ai rien compris mais bon,cool!

(GHOST_ROI,flemme de co)
le 27/11/2015 à 17:47
Blablablabla... indigeste dès la 5ème ligne...

C'est jeb_ qui essaie encore de nous enfumer ?
Le1Connu (anonyme)
le 27/11/2015 à 17:50
Donc minecraft 1.10 mettra + de temps pour créer un monde ?
Tu dis à la fin de la news que il utilisera des ID + lourds, les mettra en ID - lourds quand tu crée ton monde, et devra s'occuper de donner un ID à chaque bloc de mod, et il va le refaire pour chaque monde...
Ou sinon j'ai absolument rien compris...
MercuryNight (anonyme)
le 27/11/2015 à 17:58
Merci beaucoup Tronics ! Comme toujours un très bon article mais celui ci est particulièrement intéressant :)
Tronics (administrateur)
le 27/11/2015 à 18:51
D0D0DING0 & Nikolavitch:
Pour les jeux en C++, il n'est pas possible de modifier le jeu lui même, donc la solution est de modifier les fichiers autour. Pour certain jeu, le moteur du jeu est fixe, et beaucoup d'élement sont dans des fichiers de donnée (par exemple pour un jeu de voiture de course il sera possible de modifier les voitures existante, leur caractèristique, leur texture, sans toucher au jeu lui même). Mais souvent pour ce genre de manipulation il faut des outils spécialisé, comme l'explique nikolavitch. Dans le meilleure des cas c'est fournit par l'éditeur, dans d'autre cas c'est la communauté qui galère a les créer.
Sinon de plus en plus de nos jours les jeux sont prévu dès le début pour pouvoir être moddé, et le système de mod est directement inclu dans le jeu. Par exemple Factorio que je connais bien, est fiat en C++, le jeu intégré un language de script interne très complet, le LUA, qui permet de modder le jeu très simplement.

Autrement dit, il existe quasiment autant de manière de modder un jeu qu'il existe de jeu ;-)
M_Patate83 (modérateur)
le 27/11/2015 à 18:55
Vraiment sympa l'article !
le 27/11/2015 à 19:05
ALORS peut on me répondre j'ai beau avoir lu tout l'article je n'ai pas compris.
Supeeeer (anonyme)
le 27/11/2015 à 19:06
Super article Tronics ! Il est juste "GENIAL" !
Crafteurdu475 (anonyme)
le 27/11/2015 à 19:10
Les dimensions fonctionnent également avec des IDs ou elles utilisent les IDs des biomes ?
le 27/11/2015 à 19:26
@Crafteurdu475 Les dimensions ont les deux à la fois, il y a les biomes Nether et End qui ont des IDs de 8 et 9 je crois dans la liste des biomes, et les dimensions ont ces ID là:

-Nether : -1
-OverWorld : 0
-Ender : 1

Je pense que les biomes et dimensions vont perdre leur IDs également car certains mods rajoutent de nouvelles dimensions et de nouveaux biomes, donc il y aurait surement des problèmes de compatibilité encore x)
CercusMC (anonyme)
le 27/11/2015 à 19:33
"Minecraft 1.10: La suppression des ID de blocs et d'objets" -> j'ai vu aucun tweet sur twitter
Tronics (administrateur)
le 27/11/2015 à 20:28
@Machiru Effectivement je ne me souvenais plus, mais tu as raison les biomes n'ont pas d'ID sous forme de texte actuellement. Je ne sais pas s'ils en auront prochainement, probablement que oui pour les raisons que tu cites.
Sinon pour répondre à Crafteurdu475: Machiru a déjà tout dis, pas d'erreur, donc tu as ta réponse ^^

@CercusMC: C'était pas sur twitter mais sur reddit, un message de grum (donc officiel), cf la source (lien source en bas de l'article) ;-)
le 27/11/2015 à 20:35
U.U j'ai toujours pas compris...
TheSmiler (anonyme)
le 27/11/2015 à 22:06
Bien joué Tronics, une belle synthèse d'un sujet très compliqué, et pas facile à abordé sans notion de programmation, mais tu ne parle pas de forge, qui sans être officiel, corrige déjà beaucoup des problèmes que tu site...
le 27/11/2015 à 22:32
En tout cas, Tronics il faudrait que tu augmente ton temps d'heures de sommeil ;)
le 28/11/2015 à 08:55
Dis voir @Tronics... TU voudrais pas dormir des fois?
Mais merci super boulot
Irreal (anonyme)
le 28/11/2015 à 09:28
petit bug à corriger de la 1.8.8 quand on appuie sur TAB et on recule on peut pas sauter
java (anonyme)
le 28/11/2015 à 09:28
Il faut arrêter de dire que java est un mauvais langage... Le seul problème de java ( qui a des processus internes parfois meilleure que ceux du C++, comme le "ramasse miettes") c'est d'être tellement simple d'accès, et par des développeurs qui n'en sont pas. Au final on ce retrouve avec des programmes lourds, mal conçus et qui ternissent donc sa réputation.... Le seul point faible, qui n'en n'est pas un, c'est la faible consommation (extrêmement faible) de la vm java...
le 28/11/2015 à 09:40
Un très grand bravo à toi Tronic pour ce super article donnant en même temps information et analyse d'une très grande pertinence !
sailingteam1 (anonyme)
le 28/11/2015 à 13:40
fais dodo, tronic monj ptit frere !
fais dodo, t'auras... pas de rime en o !
aNONymousse (anonyme)
le 28/11/2015 à 13:40
MERCI @Tronics ils sont toujours aussi géniaux tes articles mais dors un peu plus, on net'en voudra pas !!!
cornichon (anonyme)
le 28/11/2015 à 13:43
c'est bizarre , il n'y a pas de snapshot sortie cette semaine.....
le 28/11/2015 à 13:50
Merci les babysitters, mais foutez-lui la paix à Tronics. Il est assez grand pour gérer tout seul son temps de sommeil et n'a pas besoin de vos "conseils". Si ça se trouve, il travaille de nuit et a l'occasion de faire des articles avant d'aller travailler ou de rentrer.
Geek_Maniak (anonyme)
le 28/11/2015 à 14:38
Déjà qu'ils ont remplacé les give (ex: /give @p minecraft:redstone_block) et ça s'est chiant mais bon on s'y habitue quand même 0
LeMec (anonyme)
le 28/11/2015 à 17:56
Je me demande comment sa va se passé pour les mods
bjkkc (anonyme)
le 30/11/2015 à 19:19
lol
TheOneDarkling (anonyme)
le 30/11/2015 à 20:28
Pourquoi 511 ? Ce n'est pas 512 plutôt ?
le 06/04/2016 à 02:20
pourquoi pas la traduction de toute les commande dans toute les langue dispo

Vous devez être connecté pour laisser un commentaire.