Início › Info de modding › Anatomia de um pacote de mapas
Capítulo 01

Anatomia de um pacote de mapas

O zip .oamap, o manifesto oamap.yaml, o índice de mapas que o empacotador escreve e como o tamanho e os elementos de um mapa decidem se ele serve numa partida.

O pacote

Um .oamap é um zip da pasta do pacote, com oamap.yaml no topo ou na única pasta que o topo contém (o Comprimir do Finder gera um arquivo assim). As regras do arquivo compactado são as do pacote de mod: entradas armazenadas ou com deflate; sem links, nomes de dispositivo, caminhos absolutos nem ..; nenhum par de nomes que difira só em maiúsculas e minúsculas; no máximo 4 GiB descompactado.

my-maps.oamapo arquivo que um jogador baixa ou abre├─ oamap.yamlobrigatório o manifesto: ID, nome, versão, autor, empacotamento e o índice de mapas├─ Ridge.tnt · Ridge.otaum mapa: seu terreno (.tnt) e suas configurações (.ota)├─ Long Lakes.tnt · Long Lakes.otaoutro mapa; um pacote contém de 1 a 256 mapas└─ READMEqualquer outra coisa é levada junto e ignorada

O manifesto

YAML estrito: um documento, um mapeamento de nível superior, sem âncoras e sem escalares de bloco. O ID é kebab-case em minúsculas, de 1 a 32 bytes, e é o nome da pasta em que o pacote se instala. Uma chave que o padrão não lista é recusada.

oamap: 1
id: my-maps                  # kebab-case, de 1 a 32 bytes; o nome da pasta de instalação
name: My Maps
version: "1.0"             # texto livre, nunca ordenado
description: Two maps for four and ten players
author: {name: A. Mapper}
packaging: {revision: 1, date: 2026-10-18, packager: A. Mapper}
requires: {engine: ">= 0.8.0"}   # ponha a faixa do motor entre aspas: um > sem aspas inicia um escalar de bloco, que é recusado
# maps: é escrito para você pelo oa-tool pack (o índice abaixo)

O índice

oa-tool pack escreve uma entrada maps para cada mapa da pasta que tenha um esquema Network, na ordem dos bytes do seu caminho. A pasta pode listar entradas ela mesma para definir o nome, a descrição ou o número de jogadores de um mapa. O resto é sempre calculado.

ChaveRegra
stemO nome-base do arquivo do mapa. Citar um que a pasta não contém é um erro.
name, descriptionDefinido pela lista da pasta ou tirado do mapa, com as mesmas regras de uma entrada empacotada.
playersO número de jogadores para o qual o mapa foi feito, de 2 a 10.
size, preview, filesSempre calculados pelo empacotador, mesmo quando a pasta os define.

Quando um mapa serve

Um mapa serve para uma partida quando ela tem o tileset, os elementos e as unidades que o mapa cita. A biblioteca de conteúdo verifica cada pacote com o jogo base e com cada mod e registra os vereditos. É daí que vêm a contagem “compatível com” da página de um mod e a lista de mods de um mapa.

Um pacote que precisa de uma expansão diz isso em requiredExpansions. Um mapa que não serve só com o jogo base continua listado, e o jogo explica por que ele não carrega.

Onde ele se instala

Em Documentos/Open Annihilation/Maps/, pelo ID do manifesto, nunca pelo nome do arquivo. Uma revisão mais nova da mesma versão substitui a pasta, e outra versão pode ser instalada ao lado. Tudo é verificado antes que qualquer coisa seja escrita.