Listes (id)

Voir le sujet précédent Voir le sujet suivant Aller en bas

Listes (id)

Message par skypop le Ven 26 Aoû - 13:04

Les listes sont potentiellement utiles dans des tas d'applications. Un exemple notable, dans un programme de minage serait d'établir une white list et/ou une black list des blocs selon le cas où la turtle devrait miner, ignorer ou notifier tel ou tel bloc. On peut également définir une liste des blocs qui révèlent la présence d'un donjon, d'un mineshaft, d'un stronghold ou bien même la base d'un joueur, et ainsi prévenir les éventuels risques de grieffing. Pour ça il suffirait d'établir une liste des blocs typiques de ces structures.

Pour un donjon :
Code:
minecraft:mob_spawner
minecraft:mossy_cobblestone

Un stronghold :
Code:
minecraft:stonebrick
minecraft:stone_brick_stairs
minecraft:iron_door
minecraft:iron_bars
minecraft:bookshelf
minecraft:end_portal_frame

Pour détecter une base, il s'agirait de lister les blocs introuvables à l'état naturel.

Donc à cet effet, j'ai mis au propre plusieurs listes. Réf : http://minecraft.gamepedia.com/Data_values
S'il s'agit de minecraft 1.10, normalement ça ne pose pas de souci, il y a juste quelques éléments en plus (les betteraves entre autre)

Minecraft vanilla

Liste des ID de blocs : (NB: globalement, ces ID valent également en tant qu'item dans un inventaire)
http://pastebin.com/tN4v6eEP

Liste des ID d'items :
http://pastebin.com/yuYmdEq1

Liste des ID d'entités: (NB: changement de nommage en 1.11)
http://pastebin.com/ARQvBphX
Liste des ID d'entités en 1.11 : (comme ça, c'est fait)
http://pastebin.com/K5M1xZFM

Liste des enchantements :
Pas très pratique à mon goût, j'en ai fait une API consultative : http://pastebin.com/QH8TTy95
La liste brute y figure en commentaire.

Mods

J'invite chacun à contribuer pour compléter.


Dernière édition par skypop le Mar 27 Sep - 15:09, édité 8 fois
avatar
skypop

Messages : 146
Date d'inscription : 25/07/2016

Revenir en haut Aller en bas

Re: Listes (id)

Message par arc13 le Mer 31 Aoû - 18:39

Pour OpenComputers :


  • Blocs
    pastebin.com/8MjmHg2e
  • Items
    pastebin.com/u4juT3xf
    Sachez que plusieurs items se retrouvent sous les catégories material, tool, component, card, upgrade, storage et misc.
  • Entité
    pastebin.com/zuiVY4ec
avatar
arc13

Messages : 104
Date d'inscription : 10/04/2016
Age : 16
Localisation : Glitch City

http://arc13.esy.es

Revenir en haut Aller en bas

Re: Listes (id)

Message par skypop le Lun 12 Sep - 12:40

ComputerCraft

Blocs et items :
http://pastebin.com/wKHqftfS

Un peu le bazar, particulièrement entre les différents types de modem, ou les différents types de turtle et leur combinaisons d’équipement.

à la suite de la liste, j'ai ajouté une table qui suit cet index :
Code:
name[ blockName | itemName ] [ damageValue ]
Le nom retourné est celui de l'item dans l'inventaire. Il est partiel concernant les Turtle (mis à part Turtle et Mining Turtle), ainsi que les différentes configs de Pocket Computers, selon qu'il soit équipé d'un modem ou pas.
Edit: La différence entre Turtle et TurtleExpanded dépend de la manière dont la turtle s'est équipée, si c'est via la fonction turtle.equip ou via un craft. Je suppose que ce soit confus.

Néanmoins, sur la base de l'ID et damageValue, on peut déterminer un bloc ou un item sans trop d'ambiguïté.
Pour le déterminer précisément, il s'agira d'examiner les datatags.
Edit: En fait on a pas accès à la damageValue, que ce soit via turtle.inspect() ou WorldInterface... Néanmoins, via turtle.inspect() on dispose du complément d'information à la propriété state.variant. Sinon la valeur metadata doit contenir cette info, mais combinée avec d'autres comme l'orientation, le statut... Il faudrait faire un lot de test complet pour démêler ça...

Note: Je n'ai pas fait de recherche sur les éventuelles entités. J'imagine qu'une turtle passe brièvement au statut d'entité durant un mouvement, au même titre qu'un bloc de sable au cours d'une chute.
avatar
skypop

Messages : 146
Date d'inscription : 25/07/2016

Revenir en haut Aller en bas

Re: Listes (id)

Message par cedmeu le Lun 19 Sep - 22:20

Pour les blocs Vanilla, certains ont le même id mais un "damageValue" différent, style le granit ou la diorite, même id que la stone mais différencié par le damageValue.

Tu crois que tu pourrais nous faire ça, comme tu la fais pour CC ?

cedmeu
Admin

Messages : 602
Date d'inscription : 28/03/2016

http://forum.computercraft.fr

Revenir en haut Aller en bas

Re: Listes (id)

Message par skypop le Mar 20 Sep - 2:45

Vu l'ampleur de la tâche, je ne compte pas le faire.
Je l'ai fait pour CC que parce qu'il ne s'agissait que de quelques blocs, et parce que c'était confus à un point tel que la liste seule me parait inexploitable.
Ex: Le Wireless Modem et Monitor partagent un même ID, alors que le Wired Modem et Wireless Modem ont un ID différent...

L'intérêt de le faire pour les blocs et items vanilla est trop singulier. Tout dépend de l'utilité qu'on en a, et quels blocs/items on besoin d'être distingués.
Si l'on cherche à distinguer différents type de roche, c'est assez facile et rapide de se renseigner et de l'implémenter.
ça l'est beaucoup moins de le faire globalement, et de maintenir l'ensemble cohérent en restant objectif (ne pas réinventer les dénominations). Car on peut trouver un élément dont le damage value désigne plusieurs variétés, des éléments différents partageant le même ID, et un même éléments qui peut avoir des ID différents...

Enfin j'ai déjà publié plusieurs API qui vont dans ce sens (référence selon l'usage) :
Référence des types combustibles : http://forum.computercraft.fr/t347-fuel-database
Référence des éléments cultivables : http://forum.computercraft.fr/t352-farm-database
Référence des enchantements : http://pastebin.com/QH8TTy95
avatar
skypop

Messages : 146
Date d'inscription : 25/07/2016

Revenir en haut Aller en bas

Re: Listes (id)

Message par skypop le Mar 27 Sep - 14:45

Chisel


Blocs : http://pastebin.com/fbxueshL

Assez difficile à documenter (trop de versions) Je me suis basé sur JEI, et stocké chaque blocs des 6 pages dans des coffres, et compilé une liste avec un computer + world interface.
Note qu'il se trouvait quelque blocs avec un id vanilla (que j'ai retiré de la liste) :
Code:
minecraft:sandstone
minecraft:red_sandstone
minecraft:monster_egg
minecraft:stonebrick
minecraft:quartz_block


Dernière édition par skypop le Mar 27 Sep - 14:53, édité 1 fois
avatar
skypop

Messages : 146
Date d'inscription : 25/07/2016

Revenir en haut Aller en bas

Re: Listes (id)

Message par skypop le Mar 27 Sep - 14:49

Vite fait Smile

Life is peripheral


Code:
lifeisperipheral:EntityDetector
lifeisperipheral:ChatInterface
lifeisperipheral:WorldInterface
lifeisperipheral:InventoryInterface

Random Utilities

blocs :
Code:
randomutilities:magicChest
randomutilities:displayTable

ChunkLoaderZ

blocs:
Code:
chunkloaderz:blockChunkLoader
chunkloaderz:anchoredPearl

Iron Chest

blocks:
Code:
ironchest:BlockIronChest
Le damage-value définit le type de coffre :

  • 0 = iron
  • 1 = gold
  • 2 = diamond
  • 3 = copper
  • 4 = silver
  • 5 = crystal
  • 6 = obsidian
  • 7 = dirt


Gravestone

bloc :
Code:
gravestone:gravestone
item :
Code:
gravestone:death_location_finder

Redstone paste

bloc : (dust, repeater ou comparator)
Code:
redstonepaste:redstonepaste

items:
Code:
redstonepaste:redstonepaste  --dust
redstonepaste:stickyrepeater
redstonepaste:sticlycomparator
avatar
skypop

Messages : 146
Date d'inscription : 25/07/2016

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum