Minecraft Wiki
Essa página descreve o conteúdo que existe apenas em versões desatualizadas da Edição Java. 
Este formato foi substituído começando com Infdev.

O formato de mapa .mclevel é um formato de mapa antigo criado por Notch. É baseado no formato NBT.

O formato do mapa estava em uso desde Indev 0.31 20100122 até a Infdev 20100325.

Embora os níveis Alpha (e Infdev) usem arquivos NBT, eles têm um formato de arquivo muito diferente.

Para obter detalhes sobre o formato de mapa infinito, consulte Formato de nível da Edição Java Alpha.

Estrutura NBT[]

  •  MinecraftLevel:A marca raiz.
    •  About: Informações sobre o nível.
      •  CreatedOn: A hora do Unix quando o nível foi criado.
      •  Name: O nome do nível, sempre "A Nice World".
      •  Autor: O nome do usuário que criou o nível.
    •  Environment: Informação sobre o ambiente do nível, que varia de acordo com as configurações de geração do mapa.
      •  TimeOfDay: O tempo em tiques que afeta o ciclo de luz do dia. Faixa 0 - 24000.
      •  SkyBrightness: O nível de luz do céu, 0 a 15.
      •  SkyColor: A cor RGB do céu, 24 bits. Vermelho é SkyColor >> 16 & 255, verde é SkyColor >> 8 & 255, azul é SkyColor & 255.
      •  FogColor: A cor RGB da névoa, 24 bits. Vermelho é FogColor >> 16 & 255, verde é FogColor >> 8 & 255, azul é FogColor & 255.
      •  CloudColor: A cor RGB das nuvens, 24 bits. Vermelho é CloudColor >> 16 & 255, verde é CloudColor >> 8 & 255, azul é CloudColor & 255.
      •  CloudHeight: A altura das nuvens (coordenada Y).
      •  SurroundingGroundType: O ID do bloco do "terreno circundante".
      •  SurroundingGroundHeight: A altura do "terreno circundante".
      •  SurroundingWaterType: O ID do bloco da "água circundante".
      •  SurroundingWaterHeight: A altura da "água circundante".
    •  Map: Os dados reais do mapa.
      •  Width: A largura do nível.
      •  Length: O comprimento do nível.
      •  Height: A altura do nível.
      •  Spawn: Lista de 3 TAG_Shorts para as coordenadas de geração X, Y e Z.
      •  Blocks: Largura*Comprimento*Altura bytes de IDs de bloco. (8 bits)
      •  Data: Largura*Comprimento*Altura bytes de dados de bloco (4 bits) e valor de luz (próximos 4 bits).
    •  Entities: Lista de TAG_Compounds para as entidades do nível.
      • Uma entidade. O jogador tem sua própria entidade, mostrada abaixo como exemplo.
        •  id: O ID da entidade. Neste caso, "LocalPlayer".
        •  Pos: Lista de 3 TAG_Floats para a posição X, Y e Z do jogador.
        •  Rotation: Lista de 2 TAG_Floats para o Yaw e Pitch da visão do jogador.
        •  Motion: Lista de 3 TAG_Floats para o movimento X, Y e Z em metros por tick.
        •  FallDistance: Até onde o jogador caiu.
        •  Health: O número de pontos de vida que o jogador tem. 20 são 10 corações.
        •  AttackTime: Número de ticks que o jogador fica imune a ataques.
        •  HurtTime: Número de ticks que o jogador está vermelho por ser atacado.
        •  DeathTime: Número de ticks pelos quais o jogador esteve morto - usado para controlar a animação da morte.
        •  Air: O número de ticks antes que o jogador comece a se afogar. Começa em 300.
        •  Fire: Quando negativo, o número de ticks antes que o jogador possa pegar fogo. Quando positivo, o número de ticks antes do fogo se extinguir.
        •  Score: A pontuação do jogador.
        •  Inventory: Lista de TAG_Compounds representando itens no inventário do jogador.
          • Uma pilha de itens.
            •  Slot: O Slot em que o item está.
            •  id: O Item ID.
            •  Damage: O valor de data do item, ou valor de dano para ferramentas.
            •  Count: O número deste item na pilha. Faixa -128 a 127. Valores menores que 2 não são exibidos no jogo.
    •  TileEntities: Lista de TAG_Compounds para as entidades de tile no nível.
      • Uma entidade tile.
        •  id: ID da entidade do bloco. Neste caso, "Chest".
        •  Pos: Posição da entidade tile, explicada posteriormente.
        •  Items: Lista de TAG_Compounds representando itens no baú.
          • Uma pilha de itens.
            •  Slot: O Slot em que o item está.
            •  id: O Item ID.
            •  Damage: O valor de data do item, ou valor de dano para ferramentas.
            •  Count: O número deste item na pilha. Faixa -128 a 127. Valores menores que 2 não são exibidos no jogo.

Calculando a tag "Pos" da entidade tile:

posição = x + (y << 10) + (z << 20)

Calculando X, Y e Z da tag "Pos":

x = pos % 1024

y = (pos >> 10) % 1024

z = (pos >> 20) % 1024

Blocos[]

O array de bytes de bloco é usado para definir os tipos de blocos que ocupam um mapa. O número de bytes na matriz pode ser calculado multiplicando as dimensões do mapa. Y sendo a direção para cima em vez de Z. Para valores hexadecimais veja IDs de Bloco.

Para acessar um bloco específico do bloco ou da matriz de dados das coordenadas XYZ, use a seguinte fórmula:

array index = (y * height + z) * width + x;

Dados[]

A matriz de bytes de dados é usada para iluminação e dados de bloco extras.

Para obter informações estendidas sobre metadados de bloco, consulte Valor de dados da Edição Java/Indev.

Iluminação[]

Existem 16 níveis de iluminação para um bloco que variam de 0x0 (0, sem luz) a 0xF (15, luz total).