Dzień aktualizacjiAktualizuj mody i ustawienia bez utraty świata
Wyszła aktualizacja gry, a Ty chcesz zaktualizować mody i swój świat, nie tracąc postępów. Zmiana ustawień serwera Vintage Story i dodawanie modów to dwie zmiany, które mogą uniemożliwić załadowanie świata, dlatego ten przepływ pracy wykonuje je w ustalonej kolejności: skopiuj zapisy, zmień jedną rzecz, uruchom serwer i przeczytaj log, a następnie zmień kolejną rzecz. Cascadia Merge wykonuje pracę na plikach i pokazuje Ci każdy wynik jako kartę. Każdą decyzję podejmujesz Ty, a serwer pozostaje wyłączony, dopóki zmieniają się pliki. Zaplanuj, aby Twój czas spędzać na czytaniu różnic (diffs) i logów, a nie na wpisywaniu ścieżek, oraz zapisuj wersję każdego moda przed jego zmianą, aby lista mogła służyć jako rejestr dnia aktualizacji.
Zarządzaj modami serwerowymi Vintage Story w czterech krokach
Sprawdź, co jest zainstalowane
Zacznij od sprawdzenia, zanim cokolwiek zmienisz. Agent używa list_dir i glob, aby znaleźć folder Mods wewnątrz folderu danych, read_file, aby otworzyć modinfo.json każdego moda znajdującego się w folderze, oraz write_file, aby zapisać prostą listę nazw i wersji w Twoim folderze roboczym. Jeśli potrzebujesz pomocy z modami na serwerze hostowanym, najpierw sprawdź, czy możesz dotrzeć do jego folderu danych, ponieważ agent może pracować tylko na plikach, które możesz otworzyć. Wypisz listę. Porównujesz ją z modami, które mają Twoi gracze, ponieważ serwer i gracze potrzebują tych samych modów i wersji, i decydujesz, co zaktualizować. Nic się jeszcze nie zmieniło, a Ty masz rejestr tego, co było zainstalowane przed aktualizacją, co pomaga, jeśli będziesz musiał cofnąć krok później.
Najpierw skopiuj zapisy
Twój świat to jeden plik .vcdbs w folderze Saves, więc skopiuj ten folder przed każdą aktualizacją gry, zmianą moda i zmianą ustawień. Najpierw wyłącz serwer. Agent używa copy_file, aby umieścić plik świata w folderze Backups, a Shell uruchamia Twój własny skrypt kopii zapasowej i raportuje rzeczywisty kod wyjścia w karcie. Kopia, której nigdy nie przywrócono, to tylko zgadka, więc przywróć ją raz do wolnego folderu, otwórz ją i sprawdź, czy świat tam jest. Dopiero wtedy przechodzisz do części pracy, która zmienia pliki, mając bezpieczną drogę powrotu, jeśli zmiana pójdzie nie tak. Nic nie usuwasz, a zapis nigdy nie jest usuwany bez kopii. Jeśli folder zawiera kilka światów, skopiuj cały folder Saves, aby żaden z nich nie został pominięty.
Zmień jedno ustawienie lub moda
Teraz zmień jedną rzecz. Aby dostosować ustawienia serwera Vintage Story, agent używa edit_file na serverconfig.json i pokazuje diff w trybie Ask first; aby zaktualizować moda, umieszczasz nowy .zip w folderze Mods samodzielnie, tylko z oficjalnej bazy modów. Jeśli świat nie ładuje się po zainstalowaniu moda, ostatnia zmiana jest podejrzana, i możesz ją cofnąć, przenosząc ten plik dalej. Zatrzymaj się tutaj. Nie dodajesz drugiego moda, zanim nie przetestujesz pierwszego, ponieważ dwie zmiany jednocześnie ukrywają przyczynę. Plan only może najpierw zapisać kroki bez ich uruchamiania, co jest przydatne, gdy chcesz listę kontrolną na dzień aktualizacji, którą może przeczytać również drugi administrator.
Uruchom serwer i przeczytaj log
Uruchom serwer swoim własnym skryptem startowym. Shell uruchamia go i pokazuje rzeczywisty kod wyjścia, a następnie grep wyszukuje w logu serwera słowa failed i error. Rozwiązywanie problemów na dedykowanym serwerze zaczyna się od tego logu, a karta wypisuje każdą pasującą linię, abyś mógł je przeczytać po kolei. glob znajduje pliki logu, jeśli nie jesteś pewien, który jest najnowszy. Następnie dołączasz z gry i przechadzasz się po świecie. Akceptujesz zmianę jako zakończoną tylko wtedy, gdy log jest czysty i drugi gracz dołączył. Jeśli nie jest czysty, wracasz o krok, czytasz pierwszy błąd, a nie ostatni, i przywracasz kopię zapisów, jeśli sam świat uległ uszkodzeniu.