Programista PowerTools v1.0.0.0








Programista PowerTools v1.0.0.0
Developer PowerTools to mod zwiększający wygodę użytkowania dla moderów, który dobrze współpracuje z Power Tools, Easy Dev Controls, Global Explorer i podobnymi modami.
Udoskonalony styl wizualizacji tabel w grze oraz możliwość zapisywania tabel w poprawnie sformatowanych plikach Lua otwierają nowy sposób zrozumienia modelu obiektowego FS!
CECHY:
– Nowe polecenia konsoli umożliwiające ponowne uruchomienie gry (szczegóły poniżej)
– Polecenie konsoli umożliwiające wydrukowanie zawartości tabeli Lua do konsoli/log lub oddzielnego pliku
– Polecenie konsoli do czyszczenia pliku dziennika
POLECANIA KONSOLI:
– [UWAGA*] dtRestart (lub „r”): Ponowne uruchomienie klienta gry za pomocą miękkiego restartu (nieco szybszego niż twardy reset)
– [UWAGA*] dtRestartHard (lub „rr”): Wykonuje twardy reset (dzięki temu wszystkie dane zostaną usunięte z pamięci)
– dtTable: Drukuje zawartość tabeli Lua na konsoli/logu
– dtSaveTable: zapisuje zawartość tabeli Lua do pliku (3-4 razy szybciej niż drukowanie tabeli w dzienniku)
– dtVisualizeTable [beta]: Ulepszony sposób drukowania tabel w dzienniku, szybszy, bardziej efektywny pod względem pamięci i ulepszony wizualnie.
– dtClearLog (lub 'cls'): czyści plik log.txt, aby uzyskać świeży dziennik (szczególnie przydatne przy użyciu polecenia restartu)
UWAGA: Ze względu na nowe ograniczenia w FS25 automatyczne ponowne uruchamianie bieżącego zapisu gry jest wyłączone, dopóki Giants nie włączy ponownie tej funkcji.
OSTROŻNOŚĆ!
Polecenia konsoli do ponownego uruchomienia gry zrobią to -bez- proszenia cię o zapisanie postępów. Tj. ryzykujesz utratą postępów, jeśli nie będziesz ostrożny!
ZAPISYWANIE TABEL
'dtSaveTable' pozwala szybko zrzucić tabelę Lua na dysk w dobrze sformatowanym pliku Lua, co oznacza, że możesz załadować ten plik jako plik źródłowy w interpreterze Lua lub w grze. Ma to kilka zastosowań, szczególnie w celu zrozumienia modelu obiektów FS.
Opcjonalnie możesz wybrać głębokość wyjścia, co jest szczególnie ważne podczas zapisywania tabel najwyższego poziomu (np. g_currentMission), które mogą zawierać wiele tabel podrzędnych i/lub dużych tabel. Dzięki dobrze zoptymalizowanemu kodowi nadal możliwe jest zapisanie g_currentMission z około 5-6 poziomami głębokości, zanim silnik Lua zacznie przeciekać pamięć i stanie się niestabilny (domyślna głębokość jest ustawiona na 2).
Przykład:
Aby zrzucić tabelę g_currentMission do pliku, możesz użyć polecenia „dtSaveTable g_currentMission currentMission.lua 1”. Spowoduje to wyeksportowanie tabeli g_currentMission do pliku o nazwie „currentMission.lua” i uwzględnienie tylko bezpośrednich potomków tabeli g_currentMission.
Uwaga: ze względu na ograniczenia bezpieczeństwa wygenerowany plik .lua zostanie zapisany w folderze „My Games/FarmingSimulator2025/modSettings/FS22_000_DevTools”.
TABELE DRUKUJĄCE
Podobnie jak 'dtSaveTable', polecenie 'dtTable' może być użyte do wyprowadzenia tabeli do dziennika. Przyjmuje nazwę tabeli jako obowiązkowy parametr i maxDepth jako opcjonalny parametr (z wartością domyślną 2).
Ważne! Ze względu na sposób, w jaki FS drukuje do dziennika, zaleca się jedynie stosunkowo małe tabele i/lub płytkie struktury (głębokość nie powinna przekraczać 2-3). Np. drukowanie g_currentMission do konsoli z głębokością 4 spowoduje, że FS zużyje około 10-15 GB pamięci RAM systemu, a następnie zawiesi się z powodu błędu braku pamięci.
Jeśli zachodzi potrzeba wydrukowania głębszej struktury, zalecane jest użycie 'dtSaveTable'.
Autor:w33zl