Formato de nível da Edição Java

De Minecraft Wiki
Ir para: navegação, pesquisa

Cada nível é sua própria pasta. Uma pasta de nível geralmente é identificada por ter um arquivo level.dat, junto com outras subpastas para armazenar os mapas e regiões do nível.

As pastas de nível sempre conterão os itens em negrito e, às vezes, conterão os itens em itálico.

Caminho relativo Artigo Descrição
/level.dat (abaixo) Armazena informações globais sobre o nível.
/level.dat_new O programa grava novas informações globais sobre o nível e depois que o arquivo é renomeado para level.dat
/level.dat_mcr Um backup do arquivo level.dat antes da conversão de MCRegion para Anvil.
/level.dat_old Um backup do arquivo level.dat antes da conversão do formato de nível Alpha para MCRegion ou Anvil.
/session.lock (abaixo) Usado para dar acesso de gravação ao último programa que modificou este arquivo.
/players/<player>.dat Formato Player.dat Armazena os estados individuais dos jogadores que jogaram neste nível, para versões anteriores a 1.7.6.
/playerdata/<uuid>.dat Formato Player.dat Armazena os estados individuais dos jogadores que jogaram neste nível, desde 1.7.6.
/stats/<uuid>.json Formato de armazenamento das Estatísticas Armazena as estatísticas dos jogadores que jogaram neste nível, desde 1.7.2.
/advancements/<uuid>.json TBD Armazena os progressos e receitas desbloqueadas dos jogadores que jogaram neste nível, desde 17w13a.
/data/command_storage_<namespace>.dat Formato de armazenamento de comando Armazena informações sobre o propósito geral, armazenamento de comando de chave/valor, desde 19w38a.
/data/idcounts.dat
/data/map_<#>.dat
Formato do item de Mapa Armazena os dados do mapa para os itens de mapa fabricáveis.
/data/villages.dat
/data/villages_nether.dat
/data/villages_end.dat
Formato villages.dat Armazena informações sobre as Vilas do mundo. Os arquivos "nether" e "end" foram adicionados na 1.8. Substituído por arquivos de região de ponto de interesse em 1.14.
/poi/

/DIM-1/poi/

/DIM1/poi/

(abaixo) Aldeões identificam camas, locais de trabalho e sinos no mundo.
/data/raids.dat
/DIM-1/data/raids_nether.dat
/DIM1/data/raids_end.dat
Formato raids.dat Armazena informações sobre as invasões em andamento no mundo.
/datapacks/ Pacote de dados Armazena o pacote de dados do mundo.
/region/ Contém arquivos de região para a Superfície.
/DIM-1/region/ Contém arquivos de região para o Nether.
/DIM1/region/ Contém arquivos de região para o End.
/region/r.<#>.<#>.mca
/DIM-1/region/r.<#>.<#>.mca
/DIM1/region/r.<#>.<#>.mca

/poi/r.<#>.<#>.mca

/DIM-1/poi/r.<#>.<#>.mca

/DIM1/poi/r.<#>.<#>.mca

Formato de arquivo Anvil Arquivos de região individuais.
/region/r.<#>.<#>.mcr
/DIM-1/r.<#>.<#>.mcr
/DIM1/r.<#>.<#>.mcr
Formato de arquivo Region Backups dos arquivos de região antes da conversão de MCRegion para Anvil.
/<#>/<#>/c.<#>.<#>.dat Formato de nível Alpha Backups dos arquivos de chunks antes da conversão do formato de nível Alpha para MCRegion.

Formato level.dat[editar | editar código-fonte]

O arquivo level.dat contém informações globais sobre o mundo, como a hora do dia, o jogador, o gerador de níveis usado e a semente. É um arquivo NBT com esta estrutura:

  • A marcação raiz.
    •  Data: Esta marcação contém todos os dados do nível.
      •  allowCommands: 0 ou 1 (falso/verdadeiro) verdadeiro se as trapaças estão ativadas.
      •  BorderCenterX: Centro da fronteira mundial na coordenada X. O padrão é 0.
      •  BorderCenterZ: Centro da fronteira mundial na coordenada Z. O padrão é 0.
      •  BorderDamagePerBlock: O padrão é 0,2.
      •  BorderSize: Largura e comprimento da borda da borda. O padrão é 60000000.
      •  BorderSafeZone: O padrão é 5.
      •  BorderSizeLerpTarget: O padrão é 60000000.
      •  BorderSizeLerpTime: O padrão é 0.
      •  BorderWarningBlocks: O padrão é 5.
      •  BorderWarningTime: O padrão é 15.
      •  clearWeatherTime: O número de marcações até o fim do "clear weather".
      •  CustomBossEvents: Uma coleção de barras de chefes.
        •  ID: O ID de uma barra de chefe (por exemplo custom:boss)
          •  Players: Uma lista de jogadores que podem ver esta barra de chefe.
            • : Um jogador
              •  L: Os pedaços menos significativos do Identificador Único Universal (UUID) do jogador. Isso é associado a 'M' para formar o ID exclusivo do jogador.
              •  M: Os pedaços mais significativos do Identificador Único Universal (UUID) do jogador. Isso é associado a 'L' para formar o ID exclusivo do jogador.
          •  Color: ID da cor da barra de chefe. Também define a cor do texto de exibição da barra de chefe, desde que o texto de exibição não defina explicitamente uma cor para si mesmo. Veja códigos de formatação para valores aceitáveis.
          •  CreateWorldFog: 0 ou 1 (falso/verdadeiro) - se a barra de chefe criar névoa.
          •  DarkenScreen: 0 ou 1 (falso/verdadeiro) - Se a barra de chefe escurecer o céu.
          •  Max: A saúde máxima da barra de chefe.
          •  Value: A atual saúde da barra de chefe.
          •  Name: O nome de exibição da barra de chefe como um componente de texto JSON.
          •  Overlay: O ID da sobreposição a ser mostrada sobre a barra de saúde. Os valores aceitos são: progress, notched_6, notched_10, notched_12 e notched_20.
          •  PlayBossMusic: 0 ou 1 (falso/verdadeiro) - Se a barra de chefe deve iniciar a música do boss.
          •  Visible: 0 ou 1 (falso/verdadeiro) - Se a barra de chefe deve ser visível para os jogadores listados.
      •  DataPacks: Opções para pacote de dados.
        •  Disabled: Lista de pacotes de dados desativados.
          • : Um único pacote de dados.
        •  Enabled: Lista de pacotes de dados habilitados. Por padrão, ele é preenchido com uma única linha "vanilla".
          • : Um único pacote de dados.
      •  DataVersion: Um número inteiro exibindo a versão dos dados.
      •  DayTime: A hora do dia. 0 é o nascer do sol, 6000 é o meio-dia, 12000 é o pôr-do-sol, 18000 é o meio da noite, 24000 é o 0. do dia seguinte. Este valor continua contando depois de 24000 e não é redefinido para 0.
      •  Difficulty: A configuração de dificuldade atual. 0 é Pacífica, 1 é Fácil, 2 é Normal e 3 é Difícil. O padrão é 2.
      •  DifficultyLocked: 0 ou 1 (falso/verdadeiro) - Verdadeiro se a dificuldade está bloqueada. O padrão é 0.
      •  DimensionData: Esta tag contém dados de nível específicos para certas dimensões.
        •  1: Dados para O End
          •  DragonFight: Dados para a luta do dragão ender. Só aparece após entrar no End.
            •  ExitPortalLocation: Localização do portal de saída do End para onde o dragão ender voa após sua morte.
              •  X: A coordenada X do portal.
              •  Y: A coordenada Y do portal.
              •  Z: A coordenada Z do portal.
            •  Gateways: Contém uma lista de locais dos portais de entrada do End que não foram gerados.
              • : O ângulo de um portal futuro, de 0 a 19. 0 está a leste do portal de saída e os números aumentam no sentido horário.
            •  DragonKilled: 0 ou 1 (falso/verdadeiro) - Se o dragão está vivo.
            •  DragonUUIDLeast: Os pedaços menos significativos do atual Identificador Único Universal (UUID) do dragão ender. Isso é associado a 'Most' para formar o ID exclusivo do dragão.
            •  DragonUUIDMost: Os pedaços mais significativos do atual Identificador Único Universal (UUID) do dragão ender. Isso é associado a 'Least' para formar o ID exclusivo do dragão.
            •  PreviouslyKilled: 0 ou 1 (falso/verdadeiro) - Se o dragão ender já foi derrotado anteriormente. Usado para determinar experiência dado pelo dragão.
      •  GameRules: Os gamerules usados no mundo.
      •  WorldGenSettings: Usado em 1.16, as configurações de geração para cada dimensão.
      •  GameType: O modo de jogo padrão para o jogador quando eles aparecem inicialmente. 0 é Sobrevivência, 1 é Criativo, 2 é Aventura, 3 é Espectador. Nota: mundos um jogador não usam este campo para salvar em qual modo de jogo o jogador está.
        •  Rule name: O valor da regra fornecida. Esta é sempre uma linha NBT, que é true ou false para a maioria das regras (sendo um número para algumas outras regras e qualquer linha arbitrária para uma regra definida por um usuário.)
      •  generatorName: Usado em 1.15 e abaixo. O nome do gerador; default, flat, largeBiomes, amplified, buffet, debug_all_block_states ou default_1_1. Não faz distinção entre maiúsculas e minúsculas, mas sempre escrito aqui. O último só pode existir se o arquivo foi editado. É uma variação da geração padrão. Também pode ser customized se for um mundo customizado anterior a 1.13. Neste caso, o mundo se tornará default se aberto usando 1.13 ou mais recente.
      •  generatorOptions: Usado em 1.15 e abaixo. Usado em mundos buffet, superplano e antigos personalizados. Formato abaixo.
      •  generatorVersion: Usado em 1.15 e abaixo. A versão do gerador de nível. Os efeitos de alterar isso são desconhecidos, mas valores diferentes de 0 foram observados.
      •  hardcore: 0 ou 1 (falso/verdadeiro) - verdadeiro se o jogador irá reaparecer em Espectador ao morrer no modo um jogador. Afeta todos os três modos de jogo.
      •  initialized: 0 ou 1 (falso/verdadeiro) - Normalmente verdadeiro depois que um mundo foi inicializado corretamente após a criação. Se a simulação inicial foi cancelada de alguma forma, isso pode ser falso e o mundo será reinicializado no próximo carregamento.
      •  LastPlayed: O tempo Unix em milissegundos quando o nível foi carregado pela última vez.
      •  LevelName: O nome do nível.
      •  MapFeatures: 0 ou 1 (falso/verdadeiro) - true se o gerador de mapa deve colocar estruturas como vilas, fortalezas e minas. O padrão é 1. Sempre 1 se o tipo de mundo for Personalizado.
      •  Player: O estado do jogador. Isso substitui o arquivo <player> .dat com o mesmo nome do jogador. Isso só é salvo por servidores se já existir, caso contrário, não é salvo para mundos de servidores. Veja Formato player.dat.
      •  raining: 0 ou 1 (falso/verdadeiro) - verdadeiro se o nível estiver enfrentando chuva, neve e cobertura de nuvens.
      •  rainTime: O número de ticks antes de "chover" é alternado e esse valor é definido para outro valor aleatório.
      •  RandomSeed: A semente aleatória do nível usada para gerar terreno consistente.
      •  SizeOnDisk: O tamanho estimado em bytes do nível. Atualmente não é modificado ou usado pelo Minecraft, mas foi anteriormente.
      •  SpawnX: A coordenada X da geração do mundo.
      •  SpawnY: A coordenada Y da geração do mundo.
      •  SpawnZ: A coordenada Z da geração do mundo.
      •  thundering: 0 ou 1 (falso/verdadeiro) - verdadeiro se a cobertura de chuva/neve/nuvem for uma tempestade elétrica e escura o suficiente para que mobs surjam sob o céu.
      •  thunderTime: O número de ticks antes de "trovejar" é alternado e esse valor é definido para outro valor aleatório.
      •  Time: O número de ticks desde o início do nível.
      •  version: A versão NBT do nível, com 1.14.4 sendo 19133.
      •  Version: Informações sobre a versão do Minecraft em que o mundo foi salvo.
        •  Id: Um número inteiro exibindo a versão dos dados.
        •  Name: O nome da versão como uma linha, por exemplo "15w32b".
        •  Snapshot: 0 ou 1 (falso/verdadeiro) - Se a versão é uma snapshot ou não.
      •  WanderingTraderId: O UUID do atual comerciante errante no mundo.
      •  WanderingTraderSpawnChance: A chance atual de o comerciante errante gerar a próxima tentativa; este valor é a porcentagem e será dividido por 10 quando carregado pelo jogo, por exemplo, um valor de 50 significa 5,0% de chance.
      •  WanderingTraderSpawnDelay: A quantidade de ticks até que outro comerciante errante tente gerar.

Formato de marcação generatorOptions[editar | editar código-fonte]

O formato de marcação  generatorOptions varia dependendo do nome do gerador. Afeta apenas a dimensão da Superfície. Isso se aplica a 1.15 e abaixo. Este é o formato do tipo de mundo Buffet:

  •  generatorOptions:
    •  biome_source:
      •  options: Ignorado se o ID fonte do bioma é minecraft:vanilla_layered.
        •  biomes:
          • : Um ID de bioma. Se este ou o ID da fonte do bioma for omitido ou inválido, o código assume minecraft:ocean.
        •  size: O tamanho dos biomas. Usado apenas quando o ID da fonte do bioma é minecraft:checkerboard. Os quadrados do bioma terão lados de 2<size>(que pode ser <1) chunks. Se nenhum valor for inserido, o código assumirá 2.
      •  type: Um ID de fonte de bioma aplicável. Ele determina como os biomas são distribuídos. Não pode ser selecionado no jogo e o padrão é minecraft:fixed para mundos não modificados.
    •  chunk_generator:
      •  options:
        •  default_block: Um ID de bloco, o padrão é minecraft:stone.
        •  default_fluid: Um ID de fluido, o padrão é minecraft:water.
      •  type: Um ID de gerador de chunk aplicável. Ele determina a estrutura geral da dimensão. Se for omitido ou inválido, o código assume minecraft:surface.

Este é o formato para o tipo de mundo Superplano:

  •  generatorOptions:
    •  structures:
      •  <structure name>:Um composto vazio nomeado como estrutura, por exemplo decoration. Se os parâmetros forem definidos, por exemplo village (distance=9 size =1), então o composto contém essa informação.
        •  <parameter name>: O valor do parâmetro é um número representado por uma linha.
    •  layers:
      • : Uma camada.
        •  block: O ID de bloco.
        •  height: A altura da camada, usada em mundos criados antes 1.13-pre5.
        •  height: A altura da camada, usada em mundos criados desde 1.13-pre5, se é < 128 blocos.
        •  height: A altura da camada, usada em mundos criados desde 1.13-pre5, se é ≥ 128 blocos.
    •  biome: O ID de bioma.
    •  flat_world_options: A linhasem escape "generator-settings". Somente criado se o mundo foi gerado através de um servidor. Até a snapshot 20w11a, ele não é analisado pelo jogo devido a MC-134900, portanto, os compostos acima não serão criados, tornando as "configurações do gerador" ineficazes.

Este é o formato para o tipo de mundo Customizado que existia antes de 18w06a:

Formato session.lock[editar | editar código-fonte]

Este arquivo contém o carimbo do horário de quando o nível foi acessado pela última vez. O arquivo contém um único inteiro de 64 bits no formato big endian, que é o carimbo de horário, armazenado como o número de milissegundos decorridos desde 01/01/1970 00:00:00, em UTC.

Ao contrário dos arquivos de bloqueio típicos, esse arquivo garante que o último programa a acessar o nível seja aquele que tem acesso de leitura e gravação. O processo é mais ou menos assim:

  1. O programa abre session.lock
  2. O programa escreve o horário para session.lock
  3. O programa monitora alterações em session.lock
  4. Se o conteúdo de session.lock mudar, o programa aborta e desiste de seu bloqueio no nível.

O Minecraft às vezes pode tentar segurar a trava em um nível, mesmo depois que o jogador começou a jogar em um nível diferente, e isso pode causar um comportamento estranho. É recomendável garantir que o Minecraft esteja fechado antes de tentar obter um bloqueio em um nível.

Formato poi[editar | editar código-fonte]

Os arquivos em poi usam uma estrutura semelhante aos arquivos region Anvil (daí a extensão mca), mas o conteúdo NBT é diferente.

  • A marcação raiz.
    •  Data: Esta marcação contém todos os dados do nível.
      •  Sections: As chaves são números inteiros (possivelmente seções de altura em pedaços). [mais informações necessárias]
        •  <number>:
          •  Valid: (apenas o valor observado até agora foi 1)[mais informações necessárias]
          •  Records: Pode ser vazio.
            • : Registro único.
              •  pos: Codificação de matriz de 3 elementos X, Y e Z
              •  free_tickets: Normalmente 1 ou 0, mas pode ser superior a 30 para o tipo minecraft:meeting. [mais informações necessárias]
              •  type: Tipo do ponto, por exemplo: minecraft:home, minecraft:meeting, minecraft:butcher, minecraft:armorer, etc.
    •  DataVersion: Versão da estrutura. A partir de 1.15.2, o valor é 2230.

Veja também[editar | editar código-fonte]