Un objeto que nadie puede conseguir no tiene mucha gracia. En esta guía vas a añadir tres recetas para los objetos de rubí de las guías anteriores: una receta con forma para la espada de rubí, una receta sin forma para la manzana de rubí y una receta de horno que funde rubí en bruto para obtener un rubí. También aprenderás cómo desbloquea recetas el libro de recetas y para qué sirven tags y priority.
La forma rápida: GodCraft
GodCraft tiene objetos de receta de Fabricación, Horno, Herrería y Destilación con una cuadrícula de fabricación de verdad. Tocas los objetos para colocarlos en las casillas en lugar de escribir un patrón.
- Abre el Taller y añade una receta de Fabricación o de Horno a tu complemento.
- Rellena la cuadrícula con tus propios objetos o con los del juego base.
- Elige el resultado y cuántos obtienes.
- Toca Exportar. El archivo de la receta se escribe solo.
El resto de esta página muestra cómo son esos archivos.
A mano
Las recetas viven en el paquete de comportamiento, en una carpeta llamada recipes. Cada receta es un archivo JSON, y al juego le da igual el nombre del archivo. Usamos el espacio de nombres myname. Cámbialo por el tuyo en todas partes.
Todas las recetas tienen la misma forma básica:
- un tipo:
minecraft:recipe_shaped,minecraft:recipe_shapelessominecraft:recipe_furnace - un
description.identifier: un ID único para la receta (no para el objeto) tags: qué estaciones de fabricación pueden usarlaunlock: cuándo aparece en el libro de recetas- los ingredientes y el resultado
Una receta con forma
A las recetas con forma les importa dónde va cada objeto en la cuadrícula, como una espada que tiene que ser una línea vertical.
{
"format_version": "1.20.10",
"minecraft:recipe_shaped": {
"description": {
"identifier": "myname:ruby_sword"
},
"tags": ["crafting_table"],
"pattern": [
"R",
"R",
"S"
],
"key": {
"R": {
"item": "myname:ruby"
},
"S": {
"item": "minecraft:stick"
}
},
"unlock": [
{
"item": "myname:ruby"
}
],
"result": {
"item": "myname:ruby_sword"
}
}
}Cómo funciona el patrón:
patterndibuja la cuadrícula. Cada texto es una fila, y cada carácter es una casilla. Hasta 3 filas de hasta 3 caracteres.- Un espacio significa "deja esta casilla vacía". Para un pico escribirías
"RRR"," S "," S ". keydice qué significa cada carácter. Las letras las eliges tú. Escoge unas que sean fáciles de recordar.resultes lo que obtienes. Añade"count": 4para obtener más de uno.
El patrón no tiene por qué ocupar los 3x3. La espada de arriba mide 1 de ancho y 3 de alto, así que se puede fabricar en cualquier columna de la cuadrícula. Las versiones en espejo de un patrón también funcionan por defecto.
Una receta sin forma
A las recetas sin forma solo les importa qué hay en la cuadrícula, no dónde. Son ideales para mezclar cosas.
{
"format_version": "1.20.10",
"minecraft:recipe_shapeless": {
"description": {
"identifier": "myname:ruby_apple"
},
"tags": ["crafting_table"],
"ingredients": [
{
"item": "minecraft:apple"
},
{
"item": "myname:ruby",
"count": 2
}
],
"unlock": [
{
"item": "minecraft:apple"
}
],
"result": {
"item": "myname:ruby_apple"
}
}
}Cada entrada de ingredients es un objeto. Añade "count" cuando necesites varios del mismo: aquí el jugador pone una manzana y dos rubíes en cualquier parte de la cuadrícula. Una receta sin forma puede usar hasta 9 objetos en total.
Una receta de horno
Las recetas de horno convierten un objeto en otro con calor. Son las más sencillas de todas:
{
"format_version": "1.20.10",
"minecraft:recipe_furnace": {
"description": {
"identifier": "myname:smelt_raw_ruby"
},
"tags": ["furnace", "blast_furnace"],
"input": "myname:raw_ruby",
"output": "myname:ruby",
"unlock": [
{
"item": "myname:raw_ruby"
}
]
}
}input va en la casilla de arriba y output es lo que sale. Crea myname:raw_ruby igual que el rubí de Tu primer objeto personalizado, o usa un objeto del juego base para probar.
El campo tags: ¿qué estación?
tags enumera todas las estaciones que aceptan la receta. Una receta puede estar en varias a la vez.
| Etiqueta | Estación |
|---|---|
crafting_table | Mesa de trabajo (y la cuadrícula de 2x2 del inventario si el patrón cabe) |
stonecutter | Cortapiedras |
furnace | Horno |
blast_furnace | Alto horno (el juego base lo usa para menas y metales) |
smoker | Ahumador (el juego base lo usa para comida) |
campfire, soul_campfire | Fogatas (comida) |
Así que una receta para cocinar comida debería incluir "furnace", "smoker", "campfire", "soul_campfire", igual que la ternera cruda del juego base.
Etiquetas de objetos como ingredientes
En lugar de un objeto concreto, una clave o un ingrediente pueden aceptar todo un grupo de objetos con tag:
"P": {
"tag": "minecraft:planks"
}Ahora cualquier tipo de tablones sirve en esa casilla. Así es como el juego base te deja fabricar una mesa de trabajo con roble, abedul o cualquier otra madera. Otras etiquetas útiles del juego base son minecraft:logs y minecraft:wooden_slabs.
El campo unlock: el libro de recetas
unlock decide cuándo aparece la receta en el libro de recetas del jugador. Sin él, los jugadores tienen que adivinar tu receta.
- Una lista de objetos: la receta se desbloquea en cuanto el jugador recoge cualquiera de esos objetos. Aquí también puedes usar
"tag", como{ "tag": "minecraft:planks" }. - Un contexto: se desbloquea en una situación especial, escrito como un objeto en vez de una lista:
"unlock": {
"context": "AlwaysUnlocked"
}Otros contextos que usa el juego base son PlayerInWater y PlayerHasManyItems. Para la mayoría de las recetas personalizadas, desbloquearlas con el ingrediente principal es la opción más cómoda para el jugador.
Consejo
Desbloquea la receta con el ingrediente que los jugadores consiguen primero. Para la espada, es el rubí, así que la receta aparece en cuanto encuentran el primero.
Prioridad: cuando dos recetas chocan
Si dos recetas tienen los mismos ingredientes con la misma forma, el juego tiene que elegir una. El campo "priority" (un número entero, que va junto a tags) es lo que ordena unas recetas frente a otras. El juego base usa números pequeños como -1, 0, 1 y 2 para recetas que se solapan, por ejemplo las recetas de barril que aceptan cualquier losa de madera junto a las que solo aceptan un tipo de losa.
Aun así, ordenar por prioridad es el último recurso. Lo mejor es evitar los choques: consulta los objetos del juego base y elige un patrón que no use ninguna otra receta, y luego comprueba que tu receta da el resultado que esperas.
Pruébalo
- Carga los paquetes en un mundo (mira Exportar e instalar).
- Date los ingredientes con /give, por ejemplo
/give @s myname:ruby 5. - Abre el libro de recetas. Tus recetas deberían aparecer en cuanto tengas los objetos que las desbloquean.
- Fabrica cada una y funde un rubí en bruto.
Cuando algo falla
| Lo que ves | Causa más probable |
|---|---|
| La receta no hace nada | Una errata en el ID de un objeto, o un carácter de pattern no está en key |
| No aparece en el libro de recetas | Falta el campo unlock o el jugador nunca tuvo el objeto que la desbloquea |
| Dos recetas se pelean | Mismos ingredientes y misma forma: cambia el patrón o pon priority |
| El horno ignora el objeto | La lista tags no incluye ese tipo de horno |
| Dos recetas comparten ID | Cada description.identifier tiene que ser único |
Tienes más soluciones en Solución de problemas. ¿Necesitas algo que fabricar? Haz comida, armas y herramientas o armaduras.