Tu propia criatura
Una criatura es un archivo JSON con sus piezas (modelos de MagicaVoxel), cómo se mueve, cuánto aguanta, dónde vive y qué suelta. Empezaremos con los modelos del jabalí del juego y después verás cómo hacer los tuyos.
Paso 1: el archivo
Crea mods/mobs/ash_boar.json, un archivo por criatura:
{
"id": "ash_boar",
"name": "Jabalí de ceniza",
"description": "Un jabalí negro como el carbón que embiste a quien se acerque.",
"style": "quadruped",
"voxelSize": 0.1,
"temper": "hostile",
"movement": {
"speed": 3.2,
"width": 0.9,
"height": 1.1
},
"stats": {
"health": 45,
"armor": 2,
"damage": 9,
"regen": 0.5,
"level": 5
},
"spawn": {
"count": 2,
"group": 2,
"biomes": ["savanna", "desert"]
},
"loot": [
{
"item": "raw_meat",
"min": 1,
"max": 2,
"chance": 1.0
},
{
"item": "leather",
"min": 1,
"max": 1,
"chance": 0.7
},
{
"item": "coal",
"min": 1,
"max": 3,
"chance": 0.5
}
],
"parts": [
{
"bone": "foot_r",
"model": "mobs/boar_foot",
"pivot": [1.5, 4, 1.5],
"at": [2.8, 4, 4.5]
},
{
"bone": "foot_l",
"model": "mobs/boar_foot",
"mirror": true,
"pivot": [1.5, 4, 1.5],
"at": [-2.8, 4, 4.5]
},
{
"bone": "foot_back_r",
"model": "mobs/boar_foot",
"pivot": [1.5, 4, 1.5],
"at": [2.8, 4, -4.5]
},
{
"bone": "foot_back_l",
"model": "mobs/boar_foot",
"mirror": true,
"pivot": [1.5, 4, 1.5],
"at": [-2.8, 4, -4.5]
},
{
"bone": "body",
"model": "mobs/boar_body",
"pivot": [4.5, 0, 7],
"at": [0, 3, 0]
},
{
"bone": "head",
"parent": "body",
"model": "mobs/boar_head",
"pivot": [4, 3, 1],
"at": [0, 7, 6.5]
},
{
"bone": "tail",
"parent": "body",
"model": "mobs/boar_tail",
"pivot": [0.5, 2.5, 3],
"at": [0, 9, -7]
}
]
}| Campo | Qué es |
|---|---|
id, name, description | Identificador único, nombre y texto del bestiario. |
style | Cómo se anima: biped (dos patas), quadruped (cuatro), hopper (a saltos), flyer (vuela), insect o swim (nada). |
voxelSize | Metros por vóxel: 0,1 en casi todas. |
temper | passive (huye), defensive (ataca si le atacas) u hostile (ataca al verte). |
movement | speed (metros por segundo) y su caja de choque: width y height en metros. |
stats | health, armor, damage, regen (vida por segundo) y level. Con level 1 toma el nivel de la zona donde aparece. |
spawn | count (cuántas hay cerca del jugador, de 0 a 64), group (de cuántas en cuántas, de 1 a 16), biomes y, si quieres, hours: [desde, hasta] en horas del juego (por ejemplo [20, 6] sólo de noche). Sin spawn sale en todos los biomas. |
loot | Lo que suelta: item, min, max y chance (de 0 a 1). |
parts | Las piezas del cuerpo: mira el paso 3. |
En spawn.biomes valen estas regiones: ocean, beach, plains, forest, swamp, mountains, snowy, river, savanna, desert, jungle.
Paso 2: probarla
- Reinicia el juego: las criaturas se leen al arrancar.
- Ve a una sabana o un desierto y busca a tu alrededor. Para encontrarla rápido mientras pruebas, sube
counta 10.
Si algo está mal escrito, al arrancar sale un aviso arriba de la pantalla con el archivo y el motivo. El juego sigue funcionando y se salta lo que esté roto.
Paso 3: tus propios modelos
Cada pieza es un .vox aparte en mods/models/, y en parts se colocan:
| Campo | Qué es |
|---|---|
bone | Qué hueso mueve la animación: body, head, hand_r, hand_l, foot_r, foot_l, foot_back_r, foot_back_l, tail, wing_r, wing_l, foot_mid_r, foot_mid_l, extra. La pieza body es obligatoria; extra son adornos rígidos (orejas, cuernos) y se puede repetir. |
model | El .vox, sin extensión: "mobs/ash_boar_head" es mods/models/mobs/ash_boar_head.vox. |
at | Obligatorio. Dónde va la pieza, en vóxeles, contando desde los pies de la criatura (y = 0 es el suelo). Es absoluto, no relativo al padre. |
pivot | El punto del modelo por el que gira (en vóxeles del propio .vox). Si no lo pones, el centro. |
parent | El hueso de otra pieza, declarada antes, a la que va pegada (la cabeza al cuerpo). |
mirror | true refleja el modelo: con un solo .vox de pata haces la izquierda y la derecha. |
rot | Giro en reposo, [x, y, z] en grados. |
- En MagicaVoxel, Z es arriba y el frente de la criatura mira hacia −Y (la vista frontal).
- Haz cada pieza por separado (cuerpo, cabeza, una pata…) y guárdalas en
mods/models/mobs/. - Lo más fácil es copiar los .vox del jabalí (
mods/models/mobs/boar_*.vox), redibujarlos con otro nombre y mantener los mismosatypivot. Si cambias el tamaño, ajústalos. - Como mucho, 32 piezas.
Make your own creature (English)
One file per creature in mods/mobs/<id>.json. Main fields: id, name, description, style (biped, quadruped, hopper, flyer, insect or swim), voxelSize, temper (passive, defensive or hostile), movement, stats, spawn (count 0–64, group 1–16, biomes from ocean, beach, plains, forest, swamp, mountains, snowy, river, savanna, desert, jungle, optional hours), loot and parts. Each part has a bone, a model (.vox without extension), at (required: where it goes, in voxels from the feet), pivot, parent, mirror and rot. A body part is required. The example above reuses the boar models; restart the game to load it.
