Установка выделенного сервера Don't Starve Together на Windows
Инструкция из исходного markdown: требования, установка, конфигурация, порты, запуск и подключение сервера.
Прежде чем переходить к настройкам, важно понять контекст. Сервер для Don't Starve Together — это не только мощность железа, но и грамотная конфигурация: от тикрейта до резервного копирования. В этом гайде разбираем то, что обычно остаётся за кадром в официальной документации.
Введение
Don't Starve Together (DST) поддерживает мультиплеер с хостом-игроком в двух вариантах: внутриигровой хостинг (компьютер ведущего одновременно работает как сервер) и выделенные серверы. Выделенный сервер — это «безголовая» сборка игры без графики, рассчитанная на круглосуточную работу и дающая ощутимо меньшие задержки по сравнению с внутриигровым хостингом, особенно при включённых пещерах: каждый слой мира (Лес/Поверхность и Пещеры) запускается отдельным процессом.
В этом руководстве описан рекомендованный Klei способ быстрой настройки на Windows 10/11 с использованием SteamCMD и официального преднастроенного пакета сервера из вашего аккаунта Klei. По завершении у вас локально будет работать кластер из двух шардов (Лес + Пещеры), к которому можно подключиться через окно Browse Games в самой игре.
---
Рекомендуемые системные требования
Приведённые ниже значения опираются на сторонние бенчмарки плюс практический запас на моды и одновременную игру 4–6 человек.
- ОС: Windows 10/11 64-бит
- ЦП: 6 ядер, 3,5 ГГц и выше (Intel Core i5-12400 / AMD Ryzen 5 5600 или лучше)
- ОЗУ: 16 ГБ
- Видеокарта: дискретная, минимум 2 ГБ видеопамяти — NVIDIA GeForce GTX 1050 / AMD Radeon RX 560 или лучше уверенно держат стабильные 60 кадр/с в Full HD
- Накопитель: SSD с 15+ ГБ свободного места
- Сеть: 10+ Мбит/с на отдачу, проводное Ethernet-подключение предпочтительнее Wi-Fi для меньшего разброса задержек
Эти цифры намеренно выше опубликованного Klei минимума (1,7 ГГц ЦП, 1 ГБ ОЗУ, Radeon HD 5450), потому что официальный минимум составлен ещё до появления архитектуры с кластерами и пещерами и не учитывает одновременную работу двух процессов-шардов и графического клиента бок о бок.
---
Что понадобится
- Аккаунт Steam с приобретённой Don't Starve Together
- Аккаунт Klei (бесплатный, можно привязать через Steam)
- Don't Starve Together, установленная в клиенте Steam и хотя бы раз запущенная
- Пустая папка под SteamCMD (например, C:\\steamcmd)
- 30–45 минут времени
Вторая копия DST не нужна. Одна лицензия позволяет хостить любое количество выделенных серверов. Сам серверный софт скачивается через SteamCMD и формально бесплатен, но для размещения именно *онлайн*-сервера у вас на аккаунте должна быть DST.
---
Шаг 1 — Установка SteamCMD
SteamCMD — это консольная версия клиента Steam от Valve, предназначенная для установки и обновления серверного ПО.
- Скачайте SteamCMD с официальной вики Valve Developer Community: https://developer.valvesoftware.com/wiki/SteamCMD#Windows (https://developer.valvesoftware.com/wiki/SteamCMD#Windows)
- Создайте папку C:\\steamcmd и распакуйте в неё скачанный ZIP. Путь может быть любым, но C:\\steamcmd совпадает с официальным скриптом Klei и избавляет от правок в дальнейшем.
- Дважды щёлкните steamcmd.exe. При первом запуске он скачает и установит остальные свои файлы. Дождитесь приглашения Steam> и закройте окно.
!\Пример пути SteamCMD (https://images.steamusercontent.com/ugc/1698402275326018113/945EEF5C8F05FA7455C4E956AFFF3E09F8BC1F1A/)
Сам выделенный сервер устанавливать вручную не нужно — стартовый скрипт из Шага 4 автоматически попросит SteamCMD скачать приложение с ID 343050 (Don't Starve Together Dedicated Server) в папку C:\\steamcmd\\steamapps\\common\\Don't Starve Together Dedicated Server.
---
Шаг 2 — Создание кластера сервера в аккаунте Klei
У Klei есть веб-инструмент, который собирает за вас архив с готовым кластером, включая важнейший *токен кластера* — он подтверждает сервисам Klei, что вы законный владелец DST.
- Перейдите на https://accounts.klei.com/ (https://accounts.klei.com/) и войдите тем же аккаунтом, на котором приобретена DST. Если вы покупали DST в Steam, авторизуйтесь через кнопку Steam.
!\Вход в аккаунт Klei (https://cdn.forums.klei.com/monthly_2021_05/2_login_ku.png.880a5609e4bd8d55d66f227a893465a5.png)
- На верхней панели нажмите GAMES, найдите Don't Starve Together и щёлкните Game Servers.
!\Раздел Game Servers (https://cdn.forums.klei.com/monthly_2021_05/3_gameservers.png.25224d2c56ec54a7b323cb654b5e6469.png)
- Нажмите ADD NEW SERVER, задайте внутреннее имя кластера (например, MyDediServer) и подтвердите.
!\Добавление нового сервера (https://cdn.forums.klei.com/monthly_2019_09/add_new_server.jpg.6f5da1d4b49158ee001c90dce017d6d9.jpg)
- Нажмите зелёную кнопку CONFIGURE рядом с новым сервером. На открывшейся странице можно задать видимое игрокам имя сервера, пароль, лимит игроков, режим игры, шаблон сезонов, PvP и так далее. Настройте по своему вкусу и нажмите DOWNLOAD SETTINGS — скачается ZIP-архив.
!\Настройка сервера (https://cdn.forums.klei.com/monthly_2019_09/configure_server.jpg.bf9cc3c0e1eff75340d2f5191353dee2.jpg)
- Откройте Проводник и перейдите в C:\\Users\\<ВашеИмяПользователя>\\Documents\\Klei\\DoNotStarveTogether\. Если папок там нет — создайте; они появляются автоматически только после первого запуска DST.
- Распакуйте сюда архив. В итоге должна появиться папка с именем кластера (MyDediServer), внутри которой лежат cluster.ini, cluster_token.txt и две подпапки Master и Caves, в каждой — свой server.ini и worldgenoverride.lua.
!\Структура папки MyDediServer (https://cdn.forums.klei.com/monthly_2019_09/mydediserver.png.8eebe8f3dea4d9b681f79f51f9a979ae.png)
Файл cluster_token.txt — приватный: любой, кому он попадёт в руки, сможет запустить сервер от вашего имени Klei. Никому его не передавайте.
---
Шаг 3 — Проверка файлов кластера
Перед запуском убедитесь, что все нижеперечисленные файлы на месте. Если хоть одного нет — сервер просто откажется стартовать.
- Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\cluster_token.txt
- Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\cluster.ini
- Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\Master\\server.ini
- Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\Caves\\server.ini
- Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\Caves\\worldgenoverride.lua
---
Шаг 4 — Создание скрипта запуска
Стартовый скрипт делает три вещи подряд: просит SteamCMD обновить или установить бинарники сервера, переходит в папку сервера bin64 и запускает шарды Master и Caves в виде двух консольных окон.
- Откройте «Блокнот».
- Вставьте ровно эти четыре строки:
- Если SteamCMD стоит не в C:\\steamcmd, поправьте первые две строки под фактические пути.
- Если в Шаге 2 вы дали кластеру другое имя, замените MyDediServer в строках 3 и 4 на это имя.
- Меню Файл → Сохранить как. В поле Тип файла выберите Все файлы, в имени укажите StartDSTServers.bat, и сохраните в Documents\\Klei\\ — чтобы запускать одним кликом.
!\Сохранение .bat-файла (https://images.steamusercontent.com/ugc/1698402275326549450/6E7E0FAD949435575602C34CF2B437109A261462/)
64-битный исполняемый файл dontstarve_dedicated_server_nullrenderer_x64 и папка bin64 — текущий стандарт. В старых руководствах фигурирует 32-битная версия dontstarve_dedicated_server_nullrenderer из папки bin; она по-прежнему есть в комплекте, но именно x64-сборку Klei рекомендует сегодня.
---
Шаг 5 — Запуск серверов
Дважды щёлкните StartDSTServers.bat. Сначала откроется окно SteamCMD: при первом запуске оно скачает около 800 МБ файлов сервера, на последующих — лишь проверит и накатит обновления, что занимает считанные секунды.
После того как SteamCMD отработает, откроются два консольных окна — одно для шарда Master, второе для шарда Caves. По обоим побегут лог-сообщения, пока не появится строка о том, что мир сгенерирован и шард готов.
!\Два запущенных консольных окна (https://images.steamusercontent.com/ugc/1698402275326575400/0282E1769C5D5683D5D2AE34BABD705B026B4429/)
Если видите ошибки об отсутствующих файлах, неверном токене или E_INVALID_TOKEN — вернитесь к Шагу 2: токен должен быть точной строкой из аккаунта Klei, без лишних кавычек и хвостовых переводов строки.
---
Шаг 6 — Подключение из игры
- Запустите Don't Starve Together обычным образом.
- Нажмите Browse Games.
- Найдите свой сервер по имени. Если он крутится на той же машине, в фильтре Connection переключите Online на LAN — сервер появится мгновенно. (Замечание: при включённом LAN-фильтре в списке виден только мастер-шард — это нормально; шард Caves подключится автоматически, когда вы спуститесь в воронку уже в мире.)
- Выберите сервер и нажмите Join.
!\Список серверов в Browse Games (https://images.steamusercontent.com/ugc/1698402275326579424/04C9DE6C065A71A17B5F83EDEC870AA9AC62949A/)
Чтобы друзья могли подключаться через интернет, на роутере нужно пробросить UDP-порты 10999 (Master) и 11000 (Caves) на локальный IP вашего ПК, а в брандмауэре Windows разрешить dontstarve_dedicated_server_nullrenderer_x64.exe. Сетевой слой Klei умеет ещё и пробивать NAT для клиентов, которым не удаётся подключиться напрямую, поэтому в простых домашних сетях обычно всё работает и без явного проброса портов.
---
Шаг 7 — Тонкая настройка кластера (по желанию)
Откройте Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\cluster.ini в Блокноте. Это обычный INI-файл со следующими ключевыми секциями:
- [GAMEPLAY] — max_players (по умолчанию 16), pvp (true/false), game_mode (survival, endless, wilderness), pause_when_empty, vote_enabled
- [NETWORK] — cluster_name (видимое имя), cluster_password, cluster_description, tick_rate (по умолчанию 15; повышать стоит только в LAN-играх и брать делитель 60, например 20 или 30), lan_only_cluster
- [STEAM] — steam_group_only, steam_group_id, steam_group_admins для ограничения подключений только участниками Steam-группы
- [MISC] — console_enabled (значение true позволяет вводить Lua-команды c_* прямо в работающую консоль), max_snapshots (число точек отката, доступных в окне Host Game)
- [SHARD] — оставьте значения по умолчанию, если не уверены; shard_enabled = true обязательно для работы пещер
Сохраните и перезапустите серверы (закройте оба консольных окна по Ctrl+C, потом снова запустите StartDSTServers.bat). Параметры генерации мира — биомы, монстры, сезоны — лежат в Master\\worldgenoverride.lua и Caves\\worldgenoverride.lua соответственно.
---
Шаг 8 — Подключение модов из Workshop (по желанию)
Моды бывают двух типов: клиентские (работают только у вас и настраиваются в самой игре) и серверные (обязательны для всех подключающихся; о них и пойдёт речь).
8.1 — Указать SteamCMD, какие моды качать
- Откройте Steam Workshop для DST: https://steamcommunity.com/app/322330/workshop/ (https://steamcommunity.com/app/322330/workshop/) и найдите нужные моды. URL каждого мода заканчивается на ?id=ЧИСЛО — выпишите это число для каждого мода.
- Перейдите в C:\\steamcmd\\steamapps\\common\\Don't Starve Together Dedicated Server\\mods\\ и откройте dedicated_server_mods_setup.lua в текстовом редакторе (если файла нет — создайте).
- Добавьте по одной строке на каждый мод:
Замените число и комментарий на реальный ID и название мода. Сохраните файл.
- (Не обязательно, но рекомендуется.) Правый клик по dedicated_server_mods_setup.lua → Свойства → поставьте галку Только чтение → Применить. Это защитит файл от перезаписи при проверке установки в SteamCMD.
8.2 — Включить моды на стороне кластера
В папке Documents\\Klei\\DoNotStarveTogether\\MyDediServer\\Master\\ создайте файл modoverrides.lua со следующим содержимым:
unknown nodeДля нескольких модов:
unknown nodeКаждая запись должна заканчиваться запятой, а сам файл — закрывающей }. Скопируйте этот же modoverrides.lua в подпапку Caves. Перезапустите серверы через StartDSTServers.bat.
В окне Browse Games рядом с именем сервера должен появиться значок гаечного ключа — это значит, моды подцепились. Кнопка View Mods покажет их список.
!\Сервер с индикатором модов (https://images.steamusercontent.com/ugc/1698402386863301141/355441FA951FA2C0F6B6A66946AA6F732C240FB0/)
---
Остановка и перезапуск сервера
Чтобы остановить корректно: в каждом консольном окне наберите c_shutdown(true) и нажмите Enter (это сначала сохраняет мир) либо дважды нажмите Ctrl+C для принудительного выхода. Закрытие окон крестиком работает, но пропускает сохранение. Для перезапуска просто снова запустите StartDSTServers.bat — мир сохраняется между сессиями.
---
Решение типичных проблем
- Windows cannot find 'dontstarve_dedicated_server_nullrenderer' — обычно SteamCMD ещё не докачал серверные файлы или путь в .bat-файле не совпадает с фактическим. Запустите SteamCMD руками с командами +login anonymous +app_update 343050 validate +quit и убедитесь, что всё скачалось.
- E_INVALID_TOKEN / E_EXPIRED_TOKEN — cluster_token.txt отсутствует, отредактирован или скопирован с уже удалённого сервера в аккаунте Klei. Сгенерируйте заново на странице аккаунта Klei и убедитесь, что в файл не затесались невидимые символы или лишние переводы строки.
- SteamAPI_Init() failed в консоли — на Windows при локальном запуске безобидно: API сначала пытается достучаться до локального клиента Steam. Сервер всё равно запускается.
- [Warning] Could not confirm port 10999 is open in the firewall — пробросьте на роутере UDP-порт 10999 (и 11000 для пещер) и добавьте входящее правило в брандмауэре Windows для dontstarve_dedicated_server_nullrenderer_x64.exe. Если на одной машине запущено несколько серверов, у каждого должен быть свой server_port в его server.ini.
- Друзья не видят сервер в интернете — то же самое, что выше. Заодно проверьте, что в cluster.ini параметр lan_only_cluster не выставлен в true.
- Шард Caves не поднимается — убедитесь, что worldgenoverride.lua в папке Caves содержит корректный пресет пещер (например, DST_CAVE) и что в server.ini каждого шарда указаны разные порты.
---