Guides / Building & Resources

Un píxel de mapa es un byte, y dos de sus bits son brillo

61 colores base × 4 tonos = 244 colores de un array de 16 384 bytes. Solo uno de los cuatro tonos es el color real del bloque; los otros tres se oscurecen al 86 %, 71 % y 53 %.

Cada mapa rellenado en Minecraft tiene el mismo tamaño en disco: un array de colors bytes de exactamente 16 384 entradas, que es 128 × 128. Esto es cierto para un mapa de Escala 0 que cubre 128 bloques y un mapa de Escala 4 que cubre 2048 bloques; el recuento de píxeles nunca cambia. Todo lo demás sobre el arte de los mapas se deriva de este hecho.

El byte se divide en dos

Cada uno de esos 16 384 bytes no es un color. Es un color base y un tono empaquetados juntos:

baseColorId = colorId >> 2      // 0–63
shadeIndex  = colorId & 3       // 0–3

Así, los dos bits inferiores son el brillo y el resto es el bloque que estás mirando. Con 61 colores base definidos (el id 0 es la ranura transparente/inexplorada), el byte más alto que contiene un Mapa real es 61 × 4 + 3 = 247.

61 × 4 = 244 colores distintos, que es la paleta completa disponible para el arte de los mapas. No 61, y no 256.

Solo un tono es el color real del bloque

Los cuatro multiplicadores no están espaciados uniformemente, y uno de ellos es 1.0:

índice de tonomultiplicadorcomo porcentaje
0180 / 25570.6%
1220 / 25586.3%
2255 / 255100%
3135 / 25552.9%

El tono 2 es el color de la textura del bloque, sin modificar. Los otros tres son versiones más oscuras de este, y el más oscuro —tono 3— es solo un poco más de la mitad del brillo.

Esta es la razón por la que el arte de los mapas con escaleras se ve tan diferente de uno plano. Una construcción plana solo puede producir uno de estos cuatro por bloque, por lo que un Mapa plano tiene 61 colores disponibles. Variar la altura desbloquea los otros tres tonos de cada bloque y te lleva a 244. La paleta no se vuelve más amplia —no obtienes nuevos matices—, se vuelve cuatro veces más profunda en valor, que es exactamente lo que necesita el tramado (dithering).

Ten en cuenta también que el orden de los tonos no es monótono: el índice 3 es el más oscuro, no el más brillante. Si ordenas por índice y esperas un gradiente, obtendrás 71 %, 86 %, 100 %, 53 %.

La Escala multiplica el área, nunca la resolución

El campo scale va de 0 a 4, y el terreno que cubre es de 128 × 2^scale bloques por lado:

Escalabloques cubiertosun píxel de Mapa es
0128 × 1281 bloque
1256 × 2562 × 2 bloques
2512 × 5124 × 4 bloques
31024 × 10248 × 8 bloques
42048 × 204816 × 16 bloques — exactamente un chunk

Un Mapa de Escala 4 cubre 256 veces el área de un Mapa de Escala 0 usando los mismos 16 384 bytes. Esa es la razón principal por la que el arte de los mapas debe construirse en Escala 0: en cualquier otro zoom, un píxel es un promedio de varios bloques y la imagen que colocaste cuidadosamente se remuestrea.

La fila de Escala 4 vale la pena recordarla por una razón diferente: un píxel es precisamente un chunk, lo que convierte un Mapa con zoom completo en una cuadrícula de chunks utilizable.

Lo que esto significa para un archivo corrupto

Si un map_<id>.dat tiene un array colors que no es de 16 384 bytes, no es un Mapa con píxeles faltantes, no es un Mapa legible en absoluto. No existe una forma de longitud parcial. El array siempre tiene el tamaño completo, con las áreas inexploradas almacenadas como id de color 0 en lugar de omitidas.

Extractor de mapas a PNG →

More guides

Browse all →

¿Buscas más herramientas de Minecraft?

Un conjunto de generadores, visores y conversores que funcionan en el navegador — todos gratis.