Перейти к основному содержимому
Вернуться в категорию

Установка сервера Terraria: Руководство по Dedicated Server

Установка выделенного сервера Terraria, фреймворк tShock, настройка мира, система прав, проброс портов и автоматическое резервное копирование.

Время чтения: 13 мин. Настройка игровых серверов
terrariaигровой серверtshockdedicated serverlinux

Содержание

Введение

Terraria — 2D sandbox экшн-приключение, сочетающее исследование, строительство, бой и крафтинг. Настроив собственный выделенный сервер, вы можете играть вместе с друзьями. В этом руководстве описана установка Terraria Dedicated Server и фреймворка tShock на вашем REXE VDS.

Системные требования

РесурсМинимумРекомендуется
CPU2 ядра4+ ядер
RAM2 ГБ4+ ГБ
Диск5 ГБ SSD10+ ГБ NVMe
ОСUbuntu 22.04+Ubuntu 22.04 LTS

Сервер Terraria потребляет относительно мало ресурсов по сравнению с другими играми.

Предварительная подготовка

hljs bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y wget unzip screen mono-complete
sudo adduser terraria --disabled-login --gecos ""
sudo su - terraria

Установка tShock (Рекомендуется)

tShock — самый популярный мод-фреймворк для серверов Terraria с поддержкой плагинов и системой прав.

Загрузка и установка tShock

hljs bash
mkdir -p ~/tshock-server && cd ~/tshock-server
wget https://github.com/Pryaxis/TShock/releases/latest/download/TShock-5-2-0-for-Terraria-1-4-4-9-linux-x64-Release.zip
unzip TShock-*.zip
chmod +x TShock.Server

Настройка tShock

hljs bash
nano ~/tshock-server/tshock/config.json
hljs json
{
  "Settings": {
    "ServerPassword": "",
    "ServerPort": 7777,
    "MaxSlots": 16,
    "ServerName": "REXE Terraria Сервер",
    "SpawnProtection": true,
    "AntiCheat": true,
    "BackupInterval": 10,
    "AutoSave": true,
    "RESTApiEnabled": true,
    "RESTApiPort": 7878
  }
}

Параметры конфигурации

ПараметрОписаниеЗначения
autocreateРазмер мира1=Маленький, 2=Средний, 3=Большой
difficultyСложность0=Обычная, 1=Эксперт, 2=Мастер, 3=Путешествие
maxplayersМакс. игроков1-255
portИгровой порт7777 (по умолчанию)

Настройка портов

ПортПротоколНазначение
7777TCPИгровой порт Terraria
7878TCPtShock REST API (опционально)

Правила файрвола

hljs bash
sudo ufw allow 7777/tcp comment "Terraria Game"
sudo ufw allow 7878/tcp comment "tShock REST API"

Скрипт запуска

hljs bash
nano ~/tshock-server/start.sh
hljs bash
#!/bin/bash
cd ~/tshock-server
./TShock.Server \
  -port 7777 \
  -maxplayers 16 \
  -world /home/terraria/tshock-server/worlds/myworld.wld \
  -autocreate 3 \
  -worldname REXE_Terraria
hljs bash
chmod +x ~/tshock-server/start.sh

Автозапуск через systemd

hljs bash
sudo nano /etc/systemd/system/terraria.service
hljs ini
[Unit]
Description=Terraria tShock Server
After=network.target

[Service]
Type=simple
User=terraria
Group=terraria
WorkingDirectory=/home/terraria/tshock-server
ExecStart=/home/terraria/tshock-server/TShock.Server -port 7777 -maxplayers 16 -world /home/terraria/tshock-server/worlds/myworld.wld -autocreate 3
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target
hljs bash
sudo systemctl daemon-reload
sudo systemctl enable terraria
sudo systemctl start terraria

Система прав tShock

Создание суперадмина

/setup КОД_НАСТРОЙКИ
/user add ИМЯ_ПОЛЬЗОВАТЕЛЯ ПАРОЛЬ superadmin

Управление группами

/group add moderator
/group addperm moderator tshock.admin.kick
/group addperm moderator tshock.admin.ban
/user group ИМЯ_ПОЛЬЗОВАТЕЛЯ moderator

Популярные команды tShock

КомандаОписание
/kick игрокКикнуть игрока
/ban игрокЗабанить игрока
/tp игрокТелепортироваться к игроку
/item id количествоВыдать предмет
/time dayУстановить день
/saveСохранить мир

Установка плагинов

hljs bash
cp ИмяПлагина.dll ~/tshock-server/ServerPlugins/
sudo systemctl restart terraria

Автоматическое резервное копирование

hljs bash
nano ~/tshock-server/backup.sh
hljs bash
#!/bin/bash
BACKUP_DIR="/home/terraria/backups"
WORLD_DIR="/home/terraria/tshock-server/worlds"
DATE=$(date +%Y%m%d_%H%M%S)

mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/terraria_$DATE.tar.gz -C $WORLD_DIR .
find $BACKUP_DIR -name "terraria_*.tar.gz" -mtime +7 -delete
echo "$(date): Резервное копирование завершено"
hljs bash
chmod +x ~/tshock-server/backup.sh
crontab -e
0 */4 * * * /home/terraria/tshock-server/backup.sh >> /home/terraria/backup.log 2>&1

Заключение

Установка выделенного сервера Terraria проста и быстра. С фреймворком tShock для поддержки плагинов, системы прав и расширенных инструментов управления вы обеспечите профессиональный серверный опыт. Надёжная инфраструктура REXE VDS обеспечивает идеальную производительность для вашего сервера Terraria.