Power Tools: Developer — это качественный мод для моддеров, который хорошо работает вместе с Power Tools, Easy Dev Controls и Global Explorer.
Улучшенный стиль визуализации внутриигровых таблиц вместе с возможностью сохранения таблиц в правильно сформированных файлах Lua открывает новый способ понимания объектной модели FS!
# ФУНКЦИИ:
- Новые консольные команды для перезапуска игры (подробности см. ниже)
- Консольная команда для печати содержимого таблицы Lua в консоль/журнал или отдельный файл.
- Консольная команда для очистки файла журнала.
# КОНСОЛЬНЫЕ КОМАНДЫ:
- dtRestart (или «r»): перезапускает текущее сохранение с помощью мягкого перезапуска (немного быстрее, чем полный сброс).
- dtRestartHard (или «rr»): выполняет полный сброс (это гарантирует выгрузку всего из памяти)
- dtTable: печатает содержимое таблицы Lua в консоль/журнал.
- dtSaveTable: сохранить содержимое таблицы Lua в файл (в 3-4 раза быстрее, чем печать таблицы в журнал)
- dtVisualizeTable [бета]: улучшенный способ печати таблиц в журнале, более быстрый, более эффективный с точки зрения использования памяти и визуально улучшенный.
- dtClearLog (или «cls»): очищает файл log.txt для получения свежего журнала (особенно полезно при использовании команды перезапуска).
# ОСТОРОЖНОСТЬ!
Консольные команды для перезапуска игры сделают это, не требуя предварительного сохранения прогресса. Т.е. вы рискуете потерять прогресс, если не будете осторожны!
# СОХРАНЕНИЕ ТАБЛИЦ
«dtSaveTable» позволяет вам быстро сбросить таблицу Lua на диск в виде хорошо отформатированного файла Lua, что означает, что вы можете загрузить этот файл в качестве исходного файла в интерпретаторе Lua или в игре. Это имеет несколько вариантов использования, особенно для понимания объектной модели FS.
При желании вы можете выбрать глубину вывода, что особенно важно при сохранении таблиц верхнего уровня (например, g_currentMission), которые могут содержать множество дочерних таблиц и/или больших таблиц. Благодаря хорошо оптимизированному коду все еще возможно сохранить g_currentMission с 5-6 уровнями глубины, прежде чем движок Lua начнет терять память и станет нестабильным (глубина по умолчанию установлена на 2).
Пример:
Чтобы сохранить таблицу g_currentMission в файл, вы можете использовать команду «dtSaveTable g_currentMission currentMission.lua 1». Это приведет к экспорту таблицы g_currentMission в файл с именем «currentMission.lua», включающий только прямых потомков g_currentMission.
Примечание. Из-за ограничений безопасности созданный файл .lua будет храниться в папке «My GamesFarmingSimulator2022modSettingsFS22_000_DevTools».
# ПЕЧАТЬ ТАБЛИЦ
Подобно команде dtSaveTable, команду dtTable можно использовать для вывода таблицы в журнал. Он принимает имя таблицы в качестве обязательного параметра и maxDepth в качестве необязательного параметра (со значением по умолчанию 2).
Важный! Из-за особенностей печати FS в журнал рекомендуется только для небольших таблиц и/или неглубоких структур (глубина не должна превышать 2–3). Например. печать g_currentMission на консоль с глубиной 4 приведет к тому, что FS будет занимать около 10-15 ГБ системной памяти, а затем произойдет сбой из-за ошибки нехватки памяти.
Если вам нужно распечатать более глубокую структуру, рекомендуется использовать dtSaveTable.