Início › Info de modding › Verificar, empacotar e publicar
Capítulo 06

Verificar, empacotar e publicar

oa-tool mutator check e pack, uma execução de ensaio, o que a página do catálogo mostra, o ícone e como oferecer o pacote ao Core Prime.

Este capítulo resume docs/mutators/authoring.md e docs/mutators/oamut-standard.md.

Verificar o .oamut

Um mutador é empacotado e verificado com oa-tool mutator pack e oa-tool mutator check. oa-tool pack e oa-tool check são os comandos para um .oamap ou um .oamod. check lê um .oamut, não uma pasta. Compila o Lua e analisa cada .sm, mas não os executa. A última linha é result: ok ou result: refused.

$ oa-tool mutator pack commander-radar
$ oa-tool mutator check commander-radar-1.oamut

Uma recusa indica o ficheiro e a linha. Corrija-a antes de oferecer o pacote. O nome empacotado do Commander Radar é commander-radar-1.oamut, e essa verificação termina com result: ok.

Empacotar a partir de fora da pasta

Execute pack com o nome da pasta, a partir de fora dela. Sem mais opções, escreve <id>-<version>.oamut na pasta atual. --out tem de indicar um .oamut: qualquer outra terminação é recusada. --force substitui um ficheiro que já exista. Não empacote . a partir de dentro da pasta, nem deixe o .oamut dentro dela: um pacote não pode conter esse ficheiro. --game-dir é um erro de utilização neste comando.

A execução de ensaio

O oa-tool mutator diff passa uma pasta de pacote pelo processo de mutação do jogo, sobre uma pasta do jogo, e lista o que mudou. As opções vêm depois dos últimos dois pontos, como em strength=lite no uber-comm. Um hook maps só corre com --map NAME. Na 3.1c sem mod, as linhas do relatório depois do cabeçalho # são estas:

$ oa-tool mutator diff --game-dir DIR --mutator ./uber-comm:strength=lite
field units/armcom.fbi [unitinfo] acceleration: 0.15 -> 0.3375	by uber-comm
field units/armcom.fbi [unitinfo] brakerate: 0.3 -> 0.675	by uber-comm
field units/armcom.fbi [unitinfo] builddistance: 60 -> 120	by uber-comm
field units/armcom.fbi [unitinfo] maxdamage: 3000 -> 4500	by uber-comm
field units/armcom.fbi [unitinfo] maxvelocity: 1.2 -> 1.8	by uber-comm
field units/armcom.fbi [unitinfo] turnrate: 1044 -> 1566	by uber-comm
field units/armcom.fbi [unitinfo] workertime: 300 -> 900	by uber-comm
field units/corcom.fbi [unitinfo] acceleration: 0.16 -> 0.36	by uber-comm
field units/corcom.fbi [unitinfo] brakerate: 0.32 -> 0.72	by uber-comm
field units/corcom.fbi [unitinfo] builddistance: 60 -> 120	by uber-comm
field units/corcom.fbi [unitinfo] maxdamage: 3000 -> 4500	by uber-comm
field units/corcom.fbi [unitinfo] maxvelocity: 1.07 -> 1.605	by uber-comm
field units/corcom.fbi [unitinfo] turnrate: 1030 -> 1545	by uber-comm
field units/corcom.fbi [unitinfo] workertime: 300 -> 900	by uber-comm

A execução de ensaio da Biblioteca é o mesmo processo, sobre um armazenamento próprio e sem partida. Não define nenhum mapa, por isso um hook maps não corre aí. A Biblioteca memoriza a resposta, e a sua linha Verificado é uma destas. check não aplica o mutador. A execução de ensaio e o diff aplicam-no.

VeredictoO que a Biblioteca mostra
compatibleJoga-se com esse mod, e a linha inclui um resumo do que mudou.
no-effectJoga-se, e não altera nada do que a verificação conta.
incompatibleNão se joga com esse mod. Segue-se o motivo.
failedParou. Segue-se o motivo.
ainda em cursoA verificação com esse mod ainda está em curso.
ainda não executadoAinda não foi verificado com esse mod.

O que a página do catálogo mostra

A página mostra o ícone ou, quando o manifesto não indica nenhum, o ícone da primeira etiqueta, se essa etiqueta for uma das oito. Depois, o nome, o autor, a versão e o lançamento, o resumo (a primeira linha de description), as etiquetas e uma indicação do motor a partir de requires.engine. Requer lista requires.mutators. Opções lista cada opção. O que altera lista as camadas. Joga-se com lista works-with. Segue-se uma tabela de lançamentos e depois Obter no jogo. Este site nunca tem ligações para o ficheiro do pacote. As transferências fazem-se no jogo.

O ícone

Um PNG quadrado, com pelo menos 1 píxel de lado, no máximo 256 píxeis e 256 KiB. Desenhe-o a 128 píxeis. O icon do manifesto indica o caminho, e esse nome termina em .png. Sem icon, o emblema usa o ícone da primeira etiqueta, se esse id for um dos oito. Uma etiqueta posterior não é tentada.

Ofereça-o ao Core Prime

A biblioteca de conteúdos do Core Prime é publicada a partir da máquina de um responsável: o catálogo é assinado com uma chave que nunca sai de lá. Para ter um mutador listado:

  1. Abra uma issue no repositório do Open Annihilation com o .oamut (ou uma ligação para ele), o seu autor e a licença.
  2. Um responsável executa as verificações com a pasta do jogo e acrescenta-o aos registos de pacotes da biblioteca.
  3. A publicação seguinte carrega o ficheiro pelo seu hash, assina o novo catálogo e aumenta o seu número de sequência.
  4. Minutos depois, está na Biblioteca de cada jogador e neste site.

Um pacote de mapas ou um mod oferece-se da mesma forma. Consulte Publicar no Core Prime.