O desenvolvedor PowerTools é um mod de qualidade de vida para modders que funciona bem juntamente com ferramentas elétricas, controles de desenvolvimento fácil, explorador global e mods similares.
Um estilo aprimorado de visualizar tabelas no jogo, juntamente com a possibilidade de salvar tabelas em arquivos Lua bem formados, abre uma nova maneira de entender o modelo de objeto FS!
# CARACTERÍSTICAS:
- Novos comandos de console para reiniciar o jogo (veja abaixo para obter detalhes)
- Comando do console para imprimir o conteúdo da tabela Lua no console/log ou a um arquivo separado
- Comando do console para limpar o arquivo de log
# Comandos de console:
- [Nota*] Dtrestart (ou 'r'): reinicia o cliente de jogo usando um reinício suave (um pouco mais rápido que uma redefinição dura)
- [Nota*] Dtrestarthard (ou 'RR'): executa uma redefinição dura (isso garantirá que tudo seja descarregado da memória)
- dttable: imprime o conteúdo de uma tabela Lua no console/log
- DTSAVETable: salve o conteúdo de uma tabela Lua em um arquivo (3-4x vezes mais rápido do que imprimir uma tabela no log)
- dtvisualizetable [beta]: uma maneira aprimorada de imprimir tabelas para o log, mais rápida, mais eficiente em memória e aprimorada visualmente.
- dtclearLog (ou 'cls'): limpa o arquivo log.txt para obter um novo log (especialmente útil ao usar o comando reiniciar)
*Nota: Devido a novas limitações no reinício automático do FS25 do SalveGame atual, está desativado até que os gigantes sejam reencontros desse recurso.
# CUIDADO!
Os comandos do console para reiniciar o jogo farão isso - sem que você salve seu progresso primeiro. Ou seja, Você corre o risco de perder o progresso se não for cauteloso!
# Tabelas de economia
O 'dTSavetable' permite despejar rapidamente uma tabela Lua em disco em um arquivo Lua bem formatado, o que significa que você pode carregar esse arquivo como um arquivo de origem no interpeter Lua ou no jogo. Isso tem vários casos de uso, especialmente para entender o modelo de objeto FS.
Opcionalmente, você pode escolher a profundidade da saída, especialmente importante ao salvar tabelas de nível superior (por exemplo, g_currentmission) que podem conter muitas tabelas de crianças entregadas e/ou grandes. Graças a um código bem otimizado, ainda é possível salvar o G_Currentmission com cerca de 5-6 níveis de profundidade antes do motor Lua começar a vazar memória e se tornar instável (a profundidade padrão é definida como 2).
Exemplo:
Para despejar a tabela G_CurrentMission em um arquivo, você pode usar o comando 'dTSavetable g_currentmission CurrentMission.lua 1'. Isso exportaria a tabela G_CurrentMission para um arquivo chamado 'currentMission.lua' e apenas incluindo os descendentes diretos da G_CurrentMission.
NOTA: Devido a restrições de segurança, o arquivo .lua gerado será armazenado na pasta 'My Games/Farmingsimulator2025/Modsettings/FS22_000_DevTools'.
# Tabelas de impressão
Semelhante a 'dTSavetable', o comando 'dttable' pode ser usado para gerar uma tabela para o log. Ele toma o nome da tabela como parâmetro obrigatório e a pontuação máxima como um parâmetro opcional (com um valor padrão de 2).
Importante! Devido à natureza de como as impressões do FS no log, ele é recomendado apenas para tabelas razoavelmente pequenas e/ou estruturas rasas (a profundidade não deve exceder 2-3). Por exemplo A impressão g_currentmission no console com uma profundidade de 4 fará com que o FS consuma cerca de 10 a 15 GB de RAM do sistema e depois trapaceie um erro fora da memória.
Se você precisar imprimir uma estrutura mais profunda, é recomendável usar 'dTSAvetable'.
--