Questa guida approfondita spiega come creare una mod della campagna e missioni della campagna con dialoghi e script personalizzati.
Cos'è una campagna personalizzata Fort
La prima cosa da notare è che la campagna pubblicata attraverso il workshop non ha accesso a tutte le funzionalità delle campagne ufficiali. Le campagne personalizzate non possono avere una mappa del mondo o salvare informazioni specifiche per un uso successivo.
In realtà, una campagna personalizzata di Forts può essere descritta come un elenco di mappe (missioni) che il giocatore dovrà percorrere in ordine, dovendo vincere ogni missione per giocare la successiva e senza la possibilità di tornare a una missione precedente.
Tuttavia, questo sistema consente di creare campagne estremamente ricche dando al creatore di campagne molta libertà all'interno delle mappe per offrire un'esperienza originale.
Struttura di una campagna di workshop
Ecco un'illustrazione di tutti i file previsti dal gioco e della loro struttura. Puoi sostituire my_campaign con il nome della tua campagna purché la cartella e il file .lua condividano lo stesso nome. La pubblicazione di una campagna è simile alla pubblicazione di una mod, posiziona la cartella della campagna nella cartella delle mod che si trova nei file di Forts, quindi vai alla scheda dell'officina nel menu principale, seleziona la scheda di caricamento, seleziona la tua campagna e pubblicala.
displayname.lua e strings.lua
Questi file contengono il nome della campagna utilizzata dal gioco nel menu della campagna.
displayname.lua ha un contenuto simile a quello trovato nelle mod:
DisplayName = { ['Inglese'] = L"La mia campagna", }
Puoi aggiungere più righe per lingue diverse in modo che la tua campagna mostri il nome giusto in base alla lingua del gioco del giocatore.
strings.lua ha un contenuto simile:
Pagina = { Nome = L"La mia campagna", }
Oltre ai file già descritti, il gioco aggiungerà due file denominati publishfileid.lua e itemversion.lua quando la campagna verrà pubblicata, questi file tracciano l'oggetto Steam Workshop associato e la versione corrente della campagna per tenere traccia degli aggiornamenti.
Il copione della campagna
Ora qualche dettaglio in più sull'ultimo e più importante file della campagna: lo script della campagna (my_campaign.lua nell'illustrazione).
Abilitato = vero
Campagna =
{
— Ogni riga ha la forma seguente. Tutto è facoltativo ad eccezione della Mappa come in questo esempio (l'IA è disabilitata a meno che non venga assegnato un forte specifico, casuale o vuoto).
— È possibile utilizzare un forte AI prefabbricato condiviso, ad esempio AIShared = "ai/forts/vanilla/long/fort-t2f1-Template-1.lua"
— { Mappa = "Missione 101", Struttura = "Missione 101", Missione = "Missione 101", AI = "fort-t2-Mission 101-1", Facile = 0, Normale = 0.5, Difficile = 1, },
{Mappa = “1371272178”, AI = “fort-t2f1-DemoMission1-1” }, — Altura
{ Mappa = “1371272372”, AI = “casuale”, }, — Doppia squadra
{Mappa = "1371272592", AI = "vuoto" }, — Bunker Buster
}
Ecco lo script della campagna della campagna demo pubblicata dagli sviluppatori per mostrare come creare una campagna.
La tabella della campagna contiene l'elenco di tutte le mappe da giocare nella campagna, il loro ordine e informazioni riguardanti i parametri dell'IA per la missione.
In fila:
La mappa dice al gioco quale mappa giocare nella missione, il valore è il nome della mappa (per una mappa nel gioco base) o l'id dell'oggetto dell'officina a vapore per una mappa pubblicata nell'officina. L'id di Steam della mappa può essere trovato in publishfileid.lua nella cartella della mappa o nell'URL dell'elemento nell'officina di Steam (esempio: https://steamcommunity.com/sharedfiles/filedetails/?id=1559334031 con il id è la parte dopo id=).
L'IA dice al gioco quale base AI registrata deve essere utilizzata. Se questo parametro non è presente nella riga l'IA non sarà attiva nella missione. Il parametro può essere utilizzato in tre modi: se è il nome di un file AI nella mappa (senza .lua), allora questa base AI registrata verrà utilizzata per la missione. Se è impostato su vuoto, l'IA sarà attiva ma senza alcuna istruzione di costruzione (ricostruisce la base di partenza). Se è impostato su casuale, tutte le basi controllate da un'IA selezioneranno un file di istruzioni di costruzione casuale nella mappa (funziona come vuoto se nessun file registrato).
Nota che per impostazione predefinita il giocatore controlla il lato 1 e il lato AI 2 in modalità cooperativa. Se vuoi che il lato 2 sia in modalità Deathmatch a squadre (cioè un'IA indipendente in ogni base) usa l'opzione casuale e specifica l'ordine dei forti nello script della missione della mappa (vedi la guida alla creazione della mappa per maggiori informazioni)
Panoramica dello script della missione della mappa
Come già spiegato nelle sezioni precedenti, la stessa mod della campagna contiene a malapena qualcosa sul contenuto delle missioni della campagna e tutto accade nelle mappe stesse. Ecco una spiegazione visiva del contenuto di una mappa appena creata e lo scopo di ciascun file:
Una volta pubblicata la mappa, publishfileid.lua e itemversion.lua verranno aggiunti come una campagna. Il file discusso in questa sezione è lo script della missione con un nome generico nomemappa.lua (Vanilla.lua nell'esempio). Per una missione della campagna, questo file di solito conterrà nella parte superiore alcune variabili che dicono al gioco di regolare diverse opzioni quando la mappa viene giocata come le mod da utilizzare nella missione. Dopo questa sezione, informazioni relative ai dialoghi da giocare e per il resto codice lua per definire quando e come utilizzare i dialoghi, nonché più codice per creare eventi o meccaniche con script specifici per la missione. In questa parte della guida, troverai spiegazioni sulle opzioni che puoi modificare attraverso lo script della missione e la parte seguente descriverà in dettaglio come creare dialoghi o eventi con script.
Le tue mappe si trovano nella cartella delle mappe dei file Forts. Se non hai idea di dove trovarlo, Forts fornisce un modo per aprire i file della mappa andando alla scheda dell'officina nel menu principale, selezionando la scheda di caricamento, selezionando la mappa nell'elenco delle mappe, quindi facendo clic sul rettangolo con un pulsante freccia sotto l'anteprima della mappa. Questo dovrebbe aprire Esplora file nella posizione corretta, visualizzando file simili all'esempio sopra.
Gestisci le mod
La gestione della mod da utilizzare nella campagna è in effetti un po' specifica, a differenza di quando crei la tua lobby, nessuna estensione di gioco sarà attiva per impostazione predefinita, il che significa che i giocatori non saranno in grado di utilizzare armi correlate. Questa sezione può essere utile anche al di fuori della creazione della campagna poiché l'edizione diretta dello script della missione è l'unico modo per modificare le mod nella mappa dopo che è stata creata.
Il gioco è stato speso un bel po' dal rilascio con la tonnellata di espansione senza armi, il dlc moonshot e il dlc alto mare. Inoltre, anche il bilanciamento della campagna originale è molto diverso dallo stato del gioco odierno.
Per entrambi i motivi, probabilmente vorrai abilitare alcune mod del gioco di base nella tua campagna. Attualmente questo deve essere fatto per ogni singola missione. Puoi aggiungere alcune mod durante la creazione della mappa, ma non tutte.
-- Inserisci qui le mod, ad esempio Mods = { "shortrange", "rapidfire" } Mods = {}
Se non selezioni alcuna mod durante la creazione della mappa, questa sezione sarà in cima allo script della missione. Qualsiasi mod selezionata durante la creazione della mappa verrà aggiunta all'elenco delle mod. Nell'elenco delle mod, aggiungi tra virgolette (separate da virgole) tutti i nomi delle mod (di default o di officina) che desideri utilizzare nella missione. Per le mod nel gioco base, il nome è il nome della cartella delle mod, per le mod di officina dovrebbe essere usato l'id della mod (puoi ottenerla con gli stessi metodi delle mappe).
Utili mod del contenuto del gioco di base:
- "weapon_pack": questa mod attiva la tonnellata di espansione gratuita delle armi
- “repair_station”: questa mod aggiunge il dispositivo della stazione di riparazione
- “dlc1_weapons_skirmish”: questa mod aggiunge armi moonshot con bilanciamento multiplayer
- “dlc1_portal_skirmish”: questa mod aggiunge portali con bilanciamento multiplayer
- "dlc1": questa mod aggiunge tutti i contenuti moonshot, inclusi materiali come barriere e porte blindate
Modifiche al bilanciamento:
- "scaramuccia": aggiunge equilibrio multiplayer al contenuto vaniglia (es: costo di costruzione del missile sciame di 500 metallo mentre è 700 metallo nella campagna)
- "weapon_pack_skirmish": aggiunge bilanciamento multiplayer a tonnellate di armi da fuoco (es: uniforme diffusa sui fucili)
Lo svantaggio del sistema attuale è che l'abilitazione di una mod dlc nella tua mappa forzerà la mappa e, per estensione, l'intera campagna a richiedere il dlc. Ciò significa che potresti dover pubblicare diverse versioni della tua campagna anche se non usi la funzione dlc in modo che il giocatore possa usare armi dlc nelle missioni della campagna senza impedire alle persone senza il dlc di giocare alla tua campagna.
Cambia lo sprite di fazione predefinito
Per impostazione predefinita, quando non viene utilizzato alcun comandante (che è ciò che accade nella campagna o nella sandbox), le armi del lato 1 usano l'aspetto dell'Impero dell'Aquila e le armi del lato 2 usano l'aspetto dell'Esercito del drago. Potresti volerlo cambiare ed è possibile attraverso lo script della missione.
-- Modifica la fazione predefinita per adattarla allo script Factions = { Team1 = "BPO", Team2 = "CF" }
L'aggiunta di questo allo script della missione cambierà l'aspetto delle armi di base del lato 1 in stile BPO e del lato 2 in stile Coalition.
Gli stili possibili sono:
- “” (lascia la stringa vuota): Eagle Empire
- "Asia": esercito di draghi
- "Russia": Iron Bear Alliance
- “CF”: Coalizione
Se hai già modificato i forti, potresti notare che i nomi corrispondono al nome delle diverse mod di fazione con Eagle Empire come stile base per tutte le armi.
Disabilita l'anti-aria automatica
--Remove auto-antiair per la missione DisableHumanAssist = true
L'aggiunta di questa sezione al tuo script di missione disabiliterà l'auto-anti-aria nella tua missione e costringerà il giocatore ad abbattere il proiettile usando manualmente le armi.
Scegli in quale modalità di gioco può essere giocata la tua mappa
-- Determina dove apparirà la mappa Sandbox = true Schermaglia = false Multigiocatore = false
Queste tre variabili definiscono se la mappa può essere selezionata in sandbox, schermaglia e multiplayer. true significa che la mappa verrà visualizzata nell'elenco di selezione della mappa per la modalità di gioco, false non sarà nell'elenco. Considerando che progetterai le tue mappe come missioni della campagna, potrebbero essere interrotte o non essere divertenti da giocare al di fuori della campagna, quindi potresti scegliere di nasconderle dal multiplayer o da una schermaglia, ad esempio.
Continua a leggere la guida completa
Questo è tutto ciò che condividiamo oggi per questo forti guida. Questa guida è stata originariamente creata e scritta da Tonio. Nel caso in cui non riusciamo ad aggiornare questa guida, puoi trovare l'ultimo aggiornamento seguendo questo link.