Power Tools: Developer è un mod di qualità della vita per modder che funziona bene insieme a Power Tools, Easy Dev Controls e Global Explorer.
Uno stile migliorato di visualizzazione delle tabelle di gioco, insieme alla possibilità di salvare le tabelle in file Lua ben formati, apre un nuovo modo di comprendere il modello a oggetti di FS!
# CARATTERISTICHE:
- Nuovi comandi della console per riavviare il gioco (vedi sotto per i dettagli)
- Comando della console per stampare il contenuto della tabella Lua sulla console/log o su un file separato
- Comando della console per cancellare il file di registro
# COMANDI DELLA CONSOLE:
- dtRestart (o 'r'): riavvia il salvataggio corrente utilizzando un riavvio graduale (leggermente più veloce di un hard reset)
- dtRestartHard (o 'rr'): Esegue un hard reset (questo garantirà che tutto venga scaricato dalla memoria)
- dtTable: stampa il contenuto di una tabella Lua sulla console/log
- dtSaveTable: salva il contenuto di una tabella Lua in un file (3-4 volte più veloce rispetto alla stampa di una tabella nel registro)
- dtVisualizeTable [beta]: un modo migliorato di stampare le tabelle nel registro, più veloce, più efficiente in termini di memoria e visivamente migliorato.
- dtClearLog (o 'cls'): cancella il file log.txt per ottenere un nuovo registro (particolarmente utile quando si utilizza il comando restart)
# ATTENZIONE!
I comandi della console per riavviare il gioco lo faranno, senza, chiederti prima di salvare i tuoi progressi. Cioè. rischi di perdere progressi se non sei cauto!
# SALVATAGGIO TABELLE
'dtSaveTable' ti consente di scaricare rapidamente una tabella Lua su disco in un file Lua ben formattato, il che significa che puoi caricare questo file come file sorgente nell'interprete Lua o nel gioco. Questo ha diversi casi d'uso, in particolare per comprendere il modello a oggetti FS.
Facoltativamente è possibile scegliere la profondità dell'output, particolarmente importante quando si salvano tabelle di livello superiore (ad esempio g_currentMission) che possono contenere molte tabelle figlie e/o tabelle di grandi dimensioni. Grazie ad un codice ben ottimizzato è ancora possibile salvare g_currentMission con circa 5-6 livelli di profondità prima che il motore Lua inizi a perdere memoria e diventi instabile (la profondità predefinita è impostata su 2).
Esempio:
Per eseguire il dump della tabella g_currentMission in un file è possibile utilizzare il comando 'dtSaveTable g_currentMission currentMission.lua 1'. Ciò esporterebbe la tabella g_currentMission in un file denominato "currentMission.lua" e includerebbe solo i discendenti diretti di g_currentMission.
Nota: a causa di restrizioni di sicurezza, il file .lua generato verrà archiviato nella cartella "My GamesFarmingSimulator2022modSettingsFS22_000_DevTools".
# TAVOLE DA STAMPA
Similmente a 'dtSaveTable', il comando 'dtTable' può essere utilizzato per generare una tabella nel registro. Prende il nome della tabella come parametro obbligatorio e maxDepth come parametro facoltativo (con un valore predefinito pari a 2).
Importante! A causa della natura del modo in cui FS stampa sul registro, è consigliato solo per tavoli abbastanza piccoli e/o strutture poco profonde (la profondità non deve superare 2-3). Per esempio. stampare g_currentMission sulla console con una profondità di 4 farà sì che FS consumi circa 10-15 GB di RAM di sistema e quindi si blocchi in un errore di memoria insufficiente.
Se è necessario stampare una struttura più profonda si consiglia di utilizzare 'dtSaveTable'.