OPENTYRIAN2000 / ENHANCED
IT
Scarica
OpenTyrian2000 Enhanced Edition · per i creatori

Mod di Tyrian: navi, armi, nemici e livelli

Una mod è una cartella: un mod.json che descrive cosa aggiungi o cambi, più sprite PNG e file di livello facoltativi. Niente ricompilazione, niente numeri ID da scegliere.

In questa pagina

Cosa può cambiare una mod di Tyrian

Tutto quello che segue sono semplici dati in mod.json e file PNG. Il gioco ricarica le mod al volo.

Armi

Nuovi cannoni anteriori e posteriori con livelli di potenza, schemi di tiro, danni e sprite propri, oppure copie delle armi originali. I colpi possono trapassare i nemici o inseguirli.

Navi, gregari, scudi, armi speciali

Scritti da zero o copiati da un oggetto originale, venduti nel negozio o inseriti nell’equipaggiamento iniziale.

Nemici

Modifica qualsiasi nemico originale o creane di nuovi, con traiettorie di volo definite dai dati, inseguimento del giocatore e fino a quattro torrette.

Armi dei nemici

Dai ai tuoi nemici schemi di fuoco propri, con gli stessi campi del livello di potenza di un’arma del giocatore.

Incontri nei livelli

Aggiungi ondate di nemici a un livello originale, o sostituisci l’intera lista di eventi. Gli eventi si scrivono per nome.

Sprite

Sostituisci qualsiasi sprite originale indicato per nome, aggiungine di nuovi o ricolora tutte le immagini di una mod con un’unica tinta.

Non ancora modificabili: le mappe dei livelli (tile), la musica, gli effetti sonori e la palette.

Una cartella, tutto per nome

Le armi, le navi, i nemici e gli sprite creati da una mod prendono il nome scelto dal loro autore, e anche i contenuti originali che copia o modifica sono citati per nome, ad esempio "base": "Vulcan Cannon". Il motore assegna da solo ogni slot interno: non scegli mai un numero ID, e due mod non se lo contendono mai.

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

Un vero mod.json

È l’esempio di riferimento Alien Pack, senza commenti. Non è nel pacchetto del gioco: si trova in rewrite/mods/_retired/alien_pack/ del repository. Aggiunge una nave e quattro armi copiate da quelle originali, tinge di verde ogni PNG della mod e imposta l’equipaggiamento iniziale di una nuova partita:

{
  "$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"
  }
}

Accanto, la cartella sprites/ della mod contiene l’immagine della nave (sprites/ships/xeno_vanguard.png), le icone del negozio e i proiettili; "tint" li ricolora tutti al caricamento della mod. "$schema" è facoltativo: indica al tuo editor lo schema JSON pubblicato, per completamento automatico ed errori in tempo reale. Ogni chiave sconosciuta viene segnalata come errore, quindi un refuso non passa mai inosservato.

Installare una mod da .zip

  1. Nel gioco, apri Opzioni → Mod e scegli Installa una mod (.zip), oppure trascina lo .zip sulla finestra del gioco mentre quel menu è aperto.
  2. La mod viene copiata nella tua cartella mods/ e compare nell’elenco. Ogni mod è contrassegnata da ON, OFF o ERR.
  3. Invio attiva o disattiva la mod selezionata; Esc applica la modifica, ricarica subito le mod e torna alla schermata del titolo.

L’archivio deve contenere mod.json alla radice o dentro un’unica cartella di primo livello. Un archivio che scriverebbe fuori dalla propria cartella, o una mod la cui cartella esiste già, viene rifiutato con il motivo indicato sulla riga: per aggiornare una mod, elimina prima la sua cartella. Apri cartella mod apre quella cartella nel gestore file, così puoi anche copiarci le cartelle delle mod a mano.

Una mod difettosa mostra il suo errore sulla propria riga invece di mandare il gioco in crash. Alcuni limiti proteggono da file non attendibili: al massimo 32 mod, PNG di al massimo 4 MiB e 2048 pixel per lato, e qualcun altro elencato nella pagina limiti e risoluzione dei problemi (in inglese).

L’editor di livelli e «Gioca da qui»

Il repository include un editor di livelli integrato nell’editor Godot. Il suo pannello Tyrian permette di scegliere una riga di partenza sulla mappa del livello, aggiungere un nemico qui, esportare nella mod, creare il pacchetto .zip da condividere e giocare da qui: il livello parte avanzato velocemente fino alla riga scelta, così puoi provare un incontro in pochi secondi.

L’editor di livelli Godot aperto su un livello di Tyrian, con il pannello Tyrian a destra
Editor di livelli · pannello Tyrian · Gioca da qui

L’editor funziona a partire dal codice sorgente: prima compili il gioco (vedi docs/build.md), poi apri il progetto Godot. Non ti serve per creare una mod: gli eventi dei livelli si possono anche scrivere a mano in levels/epN_NN.json. Questo esempio, tratto dalla guida alle mod, aggiunge due nemici al primo livello dell’episodio 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 inserisce eventi nella lista originale, events la sostituisce, e random_enemies sostituisce i nemici casuali del livello. time è la posizione di scorrimento mostrata dall’editor. Tutti i tipi di evento sono elencati nella pagina Level events (in inglese).

Da dove cominciare

  • Copia il modello rewrite/mod_template/ dal repository nella tua cartella mods/, rinominalo e modifica il suo mod.json.
  • Apri i cinque pacchetti di mod nella cartella mods/ del gioco (anche in rewrite/mods/ del repository): due pacchetti di navi con cinque pose disegnate per nave e tre pacchetti di armi con undici livelli di potenza e i propri sprite dei colpi.
  • Studia gli esempi di riferimento in rewrite/mods/_retired/ del repository (non inclusi nel pacchetto del gioco): Alien Pack (oggetti copiati, una tinta e un equipaggiamento iniziale), Example Behaviors (una nuova arma nemica e un drone a zigzag con una torretta, aggiunti a un livello) e Nova Weapons (tre armi scritte da zero).
  • Segui il tutorial: il tuo primo livello in circa quindici minuti, dall’aggiunta di un nemico alla condivisione dello .zip.

Il riferimento per le mod nella wiki (in inglese)

Domande, bug, idee?

Dicci cosa ne pensi della Enhanced Edition: leggiamo ogni messaggio.

Scrivici