TShock подходит для учётных записей Terraria, групп прав и серверного администрирования, когда игроки подключаются совместимым обычным PC-клиентом. Контентные моды tModLoader относятся к другому серверному стеку: файлы .tmod не являются плагинами TShock.
Разберём установку TShock 6.2.1 для Terraria 1.4.5.8 на Linux x86-64 — стабильного релиза, проверенного 25 октября 2026 года. До загрузки сверьте версию Terraria в описании релиза с клиентами игроков. Нельзя считать, что актуальный клиент телефона или консоли автоматически подключится к этому PC-серверу.
Подготовьте закрытый первый запуск#
Используйте обычного пользователя Linux с доступным для записи домашним каталогом. Установите curl, unzip и tar средствами дистрибутива, а также .NET 9 Runtime по инструкции Microsoft для Linux, выбрав свою систему и архитектуру. Проверьте доступные среды:
dotnet --list-runtimes
Для этого релиза нужна строка Microsoft.NETCore.App 9.0.x. Его launcher собран под .NET 9; старые руководства с Mono или .NET 6 описывают другие сборки. Если запуск сообщает об отсутствующих системных библиотеках Linux, установите указанные зависимости.
На первом этапе разрешите игровой порт только с адреса администратора — и на хосте, и в firewall провайдера. Обладатель кода настройки может получить временные расширенные права. Не открывайте доступ к консоли, файлу кода, резервным копиям и трансляции экрана до завершения настройки.
Скачайте и полностью распакуйте нужный релиз#
Создайте отдельный каталог, не смешивая его с существующим обычным или модифицированным сервером. В примере скачивается проверенный архив linux-x64 выбранного релиза для Terraria 1.4.5.8:
mkdir -p "$HOME/terraria-tshock"
cd "$HOME/terraria-tshock"
curl -fL -o tshock-release.zip \
https://github.com/Pryaxis/TShock/releases/download/v6.2.1/TShock-6.2.1-for-Terraria-1.4.5.8-linux-x64-Release.zip
unzip -l tshock-release.zip
unzip tshock-release.zip
Внутри Linux ZIP версии 6.2.1 находится TShock-Beta-linux-x64-Release.tar. Нужно распаковать и его:
tar -tf TShock-Beta-linux-x64-Release.tar
tar -xf TShock-Beta-linux-x64-Release.tar
chmod +x TShock.Server
mkdir -p Worlds tshock
Оставьте TShock.Server, bin, ServerPlugins и остальные файлы комплекта вместе. Поставляемый TShockAPI.dll необходим для работы: замена каталога плагинов пустой папкой сломает установку. Для другой платформы или будущего релиза выберите существующий архив на официальной странице и сначала изучите его структуру.
Выберите мир и запустите сервер#
Для нового маленького мира выполните:
./TShock.Server -world "$PWD/Worlds/Coop.wld" -autocreate 1 \
-port 7777 -maxplayers 8 -configpath "$PWD/tshock"
Если переносите совместимый обычный мир, скопируйте его резервную копию с остановленного сервера в Worlds и укажите настоящее имя файла. Уберите -autocreate 1, чтобы ошибка в пути не породила новый мир. Переносить мир tModLoader в ожидании сохранения его контентных модов сюда не следует.
Явный -configpath размещает настройки TShock и локальную базу в этом экземпляре. -world отдельно задаёт мир. Сверьте версию при запуске, выбранный мир и ошибки. На совместимом PC-клиенте Terraria откройте Multiplayer → Join via IP, введите достижимый адрес и TCP-порт 7777. Одного процесса или открытого порта для подтверждения игровой сессии недостаточно.
Замените временный доступ постоянным владельцем#
Прочитайте код в консоли именно этого сервера или в закрытом файле tshock/setup-code.txt. В игровом чате по очереди выполните команды, заменив значения в верхнем регистре без угловых скобок:
/setup <SETUP_CODE>
/user add AdminCharacter <UNIQUE_OWNER_PASSWORD> owner
/login AdminCharacter <UNIQUE_OWNER_PASSWORD>
/setup
Вместо AdminCharacter используйте выбранное имя учётной записи. Если конфигурация требует совпадения с именем персонажа, укажите его точно. До последнего /setup убедитесь, что аккаунт создан и вход прошёл успешно. Последняя команда проверяет постоянную авторизацию, отключает первичную настройку, создаёт setup.lock и удаляет setup-code.txt в каталоге конфигурации.
Создавайте именно owner, как предлагает TShock. Постоянная группа superadmin даёт более широкие обходы, включая проверки серверных персонажей, и не является просто другим названием владельца. Не публикуйте настоящий код настройки или пароль в обращениях, скриншотах и общих журналах.
Пароль входа на сервер и пароль учётной записи решают разные задачи. Для закрытого мира задайте отдельный ServerPassword в созданном tshock/config.json; остановите сервер перед правкой JSON и сохраните его структуру. Для публичного сервера проверьте DisableUUIDLogin: отключение автоматического входа по UUID уменьшает зависимость от идентификатора, который могут получить другие серверы. Открытие игрового порта не требует публикации REST-интерфейса.
Выдайте модератору отдельную группу прав#
После входа владельцем можно создать группу, которая наследует обычные права игроков и дополнительно разрешает исключать нарушителей:
/group add helpers
/group parent helpers default
/group addperm helpers tshock.admin.kick
/user group HelperAccount helpers
Учётная запись HelperAccount уже должна существовать: сначала попросите игрока зарегистрироваться обычным способом. Посмотрите унаследованные права через /group listperm helpers и проверьте с его аккаунта, что нужная команда доступна, а команды владельца — нет. Добавляйте конкретные разрешения по обязанностям вместо выдачи * или owner всем подряд.
Сторонние плагины подключайте после успешного входа в базовую установку. Проверяйте совместимость с выбранными TShock и TSAPI, затем перезапускайте сервер и читайте ошибки загрузки после каждого добавления. Флаг -ignoreversion отключает проверку версии API, но не исправляет несовместимый плагин.
Сохраните мир и базу учётных записей#
Отключите игроков, выполните save, затем off в доверенной серверной консоли и дождитесь выхода процесса. Скопируйте всю остановленную установку за её пределы, включая Worlds, tshock, ServerPlugins, параметры запуска и рабочий релиз. При стандартной локальной базе tshock.sqlite содержит учётные записи и права: один .wld их не восстановит. Для внешней базы дополнительно нужна её согласованная резервная копия.
При следующих запусках сохраняйте те же абсолютные пути мира и конфигурации, убрав -autocreate для нового мира. Подключитесь повторно, войдите владельцем и убедитесь, что первичная настройка отключена, прежде чем расширять сетевой доступ. Если сервер неожиданно предлагает настроиться заново, сначала проверьте пользователя процесса, рабочий каталог и путь базы. Удаление базы ради исправления входа уничтожает административные данные.
Перед обновлением сверьте версию Terraria, плагины и заметки релиза. Сохраните восстанавливаемую копию прежних файлов и данных до миграций. Nexardo поможет администрировать собственную инфраструктуру; политику аккаунтов TShock и совместимые плагины для этого сервера всё равно нужно настроить осознанно.




