Elektronarzędzia: Programista v1.0.0.0
Elektronarzędzia: Programista v1.0.0.0
Power Tools: Developer to moder zapewniający wygodę życia, który dobrze współpracuje z Power Tools, Easy Dev Controls i Global Explorer.
Ulepszony styl wizualizacji tabel w grze, wraz z możliwością zapisywania tabel w dobrze utworzonych plikach Lua, otwiera 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 wydruk zawartości tabeli Lua w konsoli/dzienniku lub w oddzielnym pliku
– Polecenie konsoli umożliwiające wyczyszczenie pliku dziennika
POLECENIA KONSOLI:
– dtRestart (lub „r”): Restartuje bieżący zapis gry za pomocą miękkiego restartu (nieco szybciej niż twardy reset)
– dtRestartHard (lub 'rr'): Wykonuje twardy reset (zapewni to, że wszystko zostanie wyładowane z pamięci)
– dtTable: Drukuje zawartość tabeli Lua w konsoli/dzienniku
– dtSaveTable: Zapisz zawartość tabeli Lua do pliku (3-4x szybciej niż drukowanie tabeli do dziennika)
– dtVisualizeTable [beta]: Ulepszony sposób drukowania tabel do dziennika, zarówno szybszy, wydajniejszy pod względem pamięci, jak i ulepszony wizualnie.
– dtClearLog (lub 'cls'): Czyści plik log.txt, aby uzyskać nowy dziennik (szczególnie przydatne przy użyciu polecenia restartu)
OSTROŻNOŚĆ!
Polecenia konsoli umożliwiające ponowne uruchomienie gry zrobią to bez pytania o wcześniejsze zapisanie postępów. Oznacza to, że ryzykujesz utratę postępu, jeśli nie będziesz ostrożny!
ZAPISYWANIE TABELI
'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 przypadków użycia, szczególnie w celu zrozumienia modelu obiektowego FS.
Opcjonalnie możesz wybrać głębokość danych wyjściowych, co jest szczególnie ważne przy zapisywaniu 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 tracić 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”. Spowodowałoby to wyeksportowanie tabeli g_currentMission do pliku o nazwie „currentMission.lua” i obejmowałoby tylko bezpośrednich potomków g_currentMission.
Uwaga: ze względu na ograniczenia bezpieczeństwa wygenerowany plik .lua zostanie zapisany w folderze „My GamesFarmingSimulator2022modSettingsFS22_000_DevTools”.
TABLICE DRUKU
Podobnie jak w przypadku „dtSaveTable”, polecenie „dtTable” może zostać użyte do zapisania tabeli w dzienniku. Przyjmuje nazwę tabeli jako parametr obowiązkowy i maxDepth jako parametr opcjonalny (z wartością domyślną 2).
Ważny! Ze względu na charakter drukowania FS na dzienniku jest on zalecany tylko w przypadku dość małych tabel i/lub płytkich struktur (głębokość nie powinna przekraczać 2-3). Np. wydrukowanie g_currentMission na konsoli z głębokością 4 spowoduje, że FS zużyje około 10-15 GB systemowej pamięci RAM, a następnie ulegnie awarii z powodu błędu braku pamięci.
Jeśli chcesz wydrukować głębszą strukturę, zaleca się użycie „dtSaveTable”.
Autor:w33zl