День оновленняОновіть моди та налаштування, не втрачаючи світ
Вийшло оновлення гри, і ви хочете оновити моди та свій світ, не втрачаючи прогресу. Зміна налаштувань сервера Vintage Story та додавання модів — це дві зміни, які можуть завадити завантаженню світу, тому цей сценарій виконує їх у фіксованому порядку: скопіюйте збереження, змініть одну річ, запустіть сервер і прочитайте лог, потім змініть наступну річ. Cascadia Merge виконує роботу з файлами та показує вам кожен результат у вигляді картки. Ви приймаєте кожне рішення, і ви зупиняєте сервер, поки змінюються файли. Плануйте витрачати свій час на читання diff-ів та логу, а не на введення шляхів, і записуйте версію кожного мода перед його зміною, щоб цей список міг служити вашим журналом дня оновлення.
Керуйте модами сервера Vintage Story за чотири кроки
Перевірте, що встановлено
Почніть із перегляду перед тим, як щось змінити. Агент використовує list_dir та glob для пошуку папки Mods у папці даних, read_file для відкриття modinfo.json кожного мода, який знаходиться в папці, та write_file для збереження простого списку назв і версій у вашій робочій папці. Якщо вам потрібна допомога з модами на хостингу, спочатку переконайтеся, що ви можете дістатися до його папки даних, оскільки агент може працювати лише з файлами, які ви можете відкрити. Надрукуйте список. Ви порівнюєте його з модами ваших гравців, оскільки серверу та гравцям потрібні однакові моди та версії, і ви вирішуєте, що оновити. Нічого ще не змінилося, і у вас є запис про те, що було встановлено до оновлення, що допоможе, якщо вам доведеться скасувати крок пізніше.
Спочатку скопіюйте збереження
Ваш світ — це один файл .vcdbs у папці Saves, тому скопіюйте цю папку перед кожним оновленням гри, зміною мода та зміною налаштувань. Спочатку зупиніть сервер. Агент використовує copy_file для розміщення файлу світу в папці Backups, а Shell запускає ваш власний скрипт резервного копіювання та повідомляє реальний код виходу в картці. Копія, яку ніколи не відновлювали, — це лише припущення, тому відновіть її один раз у резервній папці, відкрийте її та переконайтеся, що світ там є. Тільки тоді ви переходите до частини роботи, яка змінює файли, маючи безпечний шлях назад, якщо зміна піде не так. Ви нічого не видаляєте, і збереження ніколи не видаляється без копії. Якщо папка містить кілька світів, скопіюйте всю папку Saves, щоб жоден із них не був пропущений.
Змініть одне налаштування або мод
Тепер змініть одну річ. Щоб налаштувати налаштування сервера Vintage Story, агент використовує edit_file для serverconfig.json і показує diff у режимі Ask first; щоб оновити мод, ви самі розміщуєте новий .zip у папці Mods, лише з офіційної бази модів. Якщо світ не завантажується після встановлення мода, остання зміна є підозрюваною, і ви можете скасувати її, перемістивши цей файл знову. Зупиніться тут. Ви не додаєте другий мод, перш ніж перший не буде протестовано, бо дві зміни одночасно приховують причину. Plan only може спочатку записати кроки без їх запуску, що корисно, коли ви хочете чек-лист для дня оновлення, який може прочитати й інший адміністратор.
Запустіть сервер і прочитайте лог
Запустіть сервер своїм власним скриптом запуску. Shell запускає його та показує реальний код виходу, а потім grep шукає в лозі сервера слова failed та error. Усунення неполадок на виділеному сервері починається з цього логу, а картка перелічує кожний збіжний рядок, щоб ви могли прочитати їх у порядку. glob знаходить файли логу, якщо ви не впевнені, який із них найновіший. Далі ви приєднуєтеся з гри та оглядаєте світ. Ви приймаєте зміну як завершену лише після того, як лог чистий, і до нього приєднався другий гравець. Якщо він не чистий, ви повертаєтеся на крок назад, читаєте першу помилку, а не останню, і відновлюєте копію збережень, якщо сам світ пошкодився.