Зміст

Terraria Server

Запуск на Windows7

Дано

Завдання

Залежності

Для коректної роботи потрібно

Реалізація

Terraria має окремий сервер для майже всіх платформ - знайти його можна на офіційному сайті. Сервер має доволі простий конфігураційний файл, тому розглядати його тут немає особливого сенсу.

З архіву з сервером, у моєму випадку, була потрібна лише папка Windows. Її потрібно спопіювати у теку звідки буде запускатись сервер. Бажано щоб вона була доступна тільки на запис.

По замовчуванню Terraria зберігає данні у профілі користувача, при потребі можна вказати й іншу теку, одначе задля універсальності я лишив цей шлях.

На скрипт запуску серверу було зроблено посилання й покладено в теку “автозавантаження”, що знаходиться за адресою

%userprofile%\adm\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

Також для можливості ручного запуску, було створено ярлик на робочому столі.

Сервер показує консоль, де можна вводити команди вручну, якщо ж її закрити сервер зупиняє свою роботу й ноутбук можна буде використовувати для інших потреб

В папці з сервером є конфігураційни файл, його потрібно трошки відредагувати.

Також в ньому можна вказати шлях до мапи, але він не підтримує змінні середовища - тому я задав шляд до мапи в скрипті запуску.

Скрипт запуску має такий вигляд

@echo off
cls
:start
TerrariaServer.exe -config serverconfig.txt  -world "%userprofile%\Documents\My Games\Terraria\Worlds\Maps.wld" -autocreate 3
@echo.
@echo Restarting server...
@echo.
goto start

Мапа з назвою Maps.wld розтащована у теці де зберігає свої ресурси гра. Це зроблено для можливості переносу конфігурації на інші ПК з мінімальним змінами. Також це дозволяє запускати цю мапу прямо із встановленої гри - при локальній грі.

Файл конфігурації було змінено мінімально, одначе його можна не змінювати зовсім і лишити як є, оскільки доступ буде лише у локальній мережі можна просто лишити його за замовчуванням.

Автоматична заміна мапи

Було додано завдання у планувальник з виконанням наступного скрипта

taskkill  /im  terrariaserver.exe /f
del "%USERPROFILE%\Documents\My Games\Terraria\Worlds\Maps.wld" /S /F /Q

Перший рядок завершує процес серверу, в той час як другий видаляє мапу по замовчуванню. При цьому сервер перезапускається й створює ному мапу.

Увага, при випадковому пошкодженню чи знищенню мапи є можливість відновити її з резервної копії, що періодично створюються сервером і розміщуються у теці з мапою. Для відновлення потрібно перейменувати резервну копію у назву, що відповідає назві мапи.

Посилання