Користувальницькі налаштування

Налаштування сайту


howto:terraria_server

Terraria Server

Запуск на Windows7

Дано

  • Ноутбук з Windows7 Starter на борту та авто-логіном - це міняти не можна
  • 2 ГБ оперативної пам'яті

Завдання

  • З мінімальним змінами системи (Ноутбук може ще знадобитись для робочих цілей), зробити ігровий сервер для Terraria.
  • Періодична, автоматична зміна мап
  • Можливість запуску серверу вручну та при увімкненні ноутбуку
  • Купленої в стімі гри немає, гра повинна бути доступна в домашній мережі і все.

Залежності

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

  • NET Framework 4 і вище
  • Microsoft XNA

Реалізація

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

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

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

Посилання

You could leave a comment if you were logged in.
howto/terraria_server.txt · Востаннє змінено: 2022/04/25 20:17 повз Юрій