OPENTYRIAN2000 / ENHANCED
PT
Baixar
OpenTyrian2000 Enhanced Edition · para criadores

Tyrian: mods de naves, armas, inimigos e níveis

Um mod é uma pasta: um mod.json que descreve o que você adiciona ou altera, mais sprites PNG e arquivos de nível opcionais. Sem recompilar, sem números de ID para escolher.

Nesta página

O que um mod de Tyrian pode mudar

Tudo abaixo são dados simples em mod.json e arquivos PNG. O jogo recarrega os mods na hora.

Armas

Novas armas frontais e traseiras, com níveis de potência, padrões de tiro, dano e sprites próprios, ou cópias de armas originais. Os tiros podem atravessar inimigos ou persegui-los.

Naves, aliados, escudos, armas especiais

Criados do zero ou copiados de um item original, vendidos na loja ou colocados no equipamento inicial.

Inimigos

Altere qualquer inimigo original ou crie novos, com trajetórias de voo definidas por dados, perseguição ao jogador e até quatro torres.

Armas inimigas

Dê aos seus inimigos padrões de tiro próprios, com os mesmos campos de um nível de potência de arma do jogador.

Encontros nos níveis

Adicione ondas de inimigos a um nível original ou substitua toda a lista de eventos. Os eventos são escritos por nome.

Sprites

Substitua qualquer sprite original pelo nome, adicione novos ou recolora todas as imagens de um mod com uma única tonalidade.

Ainda não dá para modificar: mapas de nível (tiles), música, efeitos sonoros e a paleta.

Uma pasta, tudo com nome

As armas, naves, inimigos e sprites que um mod cria recebem nome dado pelo autor, e o conteúdo original que ele copia ou altera também é citado pelo nome, como em "base": "Vulcan Cannon". O motor atribui sozinho cada posição interna: você nunca escolhe um número de ID, e dois mods nunca disputam o mesmo.

my_mod/
  mod.json              required: "format_version": 1 and "name"
  README.md             optional: shown in Setup → Mods (1 KiB at most)
  levels/ep1_09.json    optional: events of a level
  sprites/shots/*.png   optional: images, cited by their file name

Um mod.json de verdade

Este é o exemplo de referência Alien Pack, sem os comentários. Ele não vem no pacote do jogo: fica em rewrite/mods/_retired/alien_pack/ no repositório. Ele adiciona uma nave e quatro armas copiadas de originais, tinge de verde todos os PNG do mod e define o equipamento inicial de um novo jogo:

{
  "$schema": "../../mod.schema.json",
  "format_version": 1,
  "name":        "Alien Pack",
  "author":      "OpenTyrian2000 Team",
  "version":     "3.0",
  "description": "Green alien fleet — 4 stock weapons re-skinned via engine tint.",
  "tint":        "green",
  "enabled":     false,
  "ships": [
    { "name": "Xeno Vanguard", "base": "Gencore II", "ship_sprite": "xeno_vanguard", "always_available": true }
  ],
  "weapons": [
    { "name": "Alien Vulcan Cannon", "base": "Vulcan Cannon",          "always_available": true },
    { "name": "Alien Mega Cannon",   "base": "Mega Cannon",            "always_available": true },
    { "name": "Alien Bio Spreader",  "base": "Sonic Wave",             "always_available": true },
    { "name": "Alien Guided Orbs",   "base": "Heavy Missile Launcher", "always_available": true }
  ],
  "starter": {
    "ship":         "Xeno Vanguard",
    "front_weapon": "Alien Vulcan Cannon",
    "rear_weapon":  "Alien Guided Orbs"
  }
}

Ao lado dele, a pasta sprites/ do mod contém a imagem da nave (sprites/ships/xeno_vanguard.png), os ícones da loja e os tiros; "tint" recolore todos eles quando o mod é carregado. "$schema" é opcional: ele aponta seu editor para o esquema JSON publicado, para autocompletar e mostrar erros ao vivo. Toda chave desconhecida é relatada como erro, então um erro de digitação nunca passa despercebido.

Instalar um mod a partir de um .zip

  1. No jogo, abra Opções → Mods e escolha Instalar um mod (.zip), ou solte o .zip na janela do jogo enquanto esse menu estiver aberto.
  2. O mod é copiado para a sua pasta mods/ e aparece na lista. Cada mod é marcado como ON, OFF ou ERR.
  3. Enter liga ou desliga o mod selecionado; Esc aplica a mudança, recarrega os mods na hora e volta ao título.

O arquivo deve conter mod.json na raiz ou dentro de uma única pasta de nível superior. Um arquivo que gravaria fora da própria pasta, ou um mod cuja pasta já exista, é recusado, com o motivo na própria linha: para atualizar um mod, apague antes a pasta dele. Abrir pasta de mods abre essa pasta no gerenciador de arquivos, então você também pode copiar pastas de mods para lá à mão.

Um mod com defeito mostra o erro na própria linha, em vez de travar o jogo. Limites protegem contra arquivos não confiáveis: no máximo 32 mods, arquivos PNG de no máximo 4 MiB e 2048 pixels por lado, e mais alguns listados na página de limites e solução de problemas (em inglês).

O editor de níveis e Jogar daqui

O repositório inclui um editor de níveis integrado ao editor do Godot. O painel Tyrian dele permite escolher uma linha inicial no mapa do nível, Adicionar um inimigo aqui, Exportar para o mod, Gerar o pacote .zip para compartilhar e Jogar daqui, que inicia o nível avançado até a linha escolhida, para você testar um encontro em segundos.

O editor de níveis do Godot aberto em um nível de Tyrian, com o painel Tyrian à direita
Editor de níveis · painel Tyrian · Jogar daqui

O editor funciona a partir do código-fonte: primeiro você compila o jogo (veja docs/build.md), depois abre o projeto do Godot. Você não precisa dele para criar um mod: os eventos de nível também podem ser escritos à mão em levels/epN_NN.json. Este exemplo, do guia de mods, adiciona dois inimigos ao primeiro nível do episódio 1:

{ "episode": 1, "lvl_file_num": 9,
  "add_events": [ { "time": 300, "spawn": "my_drone", "x": 130 },
                  { "time": 300, "spawn": "tech_corridor_32", "x": "random", "link": 3 } ] }

add_events insere eventos na lista original, events a substitui, e random_enemies substitui os inimigos aleatórios do nível. time é a posição de rolagem mostrada pelo editor. Todos os tipos de evento estão listados na página Eventos de nível (em inglês).

Por onde começar

  • Copie o modelo rewrite/mod_template/ do repositório para a sua pasta mods/, renomeie-o e edite o mod.json.
  • Abra os cinco pacotes de mods na pasta mods/ do jogo (também em rewrite/mods/ no repositório): dois pacotes de naves com cinco poses desenhadas por nave e três pacotes de armas com onze níveis de potência e sprites de tiro próprios.
  • Estude os exemplos de referência em rewrite/mods/_retired/ no repositório (fora do pacote do jogo): Alien Pack (itens copiados, uma tonalidade e um equipamento inicial), Example Behaviors (uma nova arma inimiga e um drone em zigue-zague com uma torre, adicionados a um nível) e Nova Weapons (três armas criadas do zero).
  • Siga o tutorial: seu primeiro nível em cerca de quinze minutos, de adicionar um inimigo a compartilhar o .zip.

A referência de mods na wiki (em inglês)

Dúvidas, bugs, ideias?

Conte para a gente o que você achou da Enhanced Edition: lemos todas as mensagens.

Fale com a gente