У Miscreated есть выделенный сервер для Windows (app SteamCMD 302200), настраиваемый через hosting.cfg и аргументы запуска; в Linux работает через Wine или Docker. Сведения взяты из руководств хостеров и сообщества, так как разработчик не публикует подробной документации: часть пунктов (порты, анонимный вход) помечена как требующая проверки.
Пошаговая установка
Проверьте машину: 4 cores, 8 GB RAM, 30 GB disk (community estimate).
Скачайте SteamCMD и создайте папку сервера.
Установите сервер через SteamCMD: login (anonymous, otherwise a Steam account owning the game), app_update 302200 validate.
Запустите сервер один раз, остановите и отредактируйте hosting.cfg.
Запустите Bin64_dedicated\MiscreatedServer.exe с +sv_maxplayers, +map, -sv_bind <внешний IP>, -sv_port 64090 и +http_password.
Откройте порты 64090-64094 (TCP/UDP) в брандмауэре и на роутере.
Проверьте на localhost (127.0.0.1), затем извне из другой сети.
Запланируйте перезапуск: сервер сам останавливается не позже чем через 24 ч (sv_maxuptime).
Настройте автозапуск (планировщик задач или служба systemd).
Запланируйте резервные копии MiscreatedServer и обновления.
Требования
Официальных цифр нет: для около пятидесяти игроков закладывайте 4 ядра, 8 ГБ RAM и 30 ГБ диска (оценка). Windows либо Linux с Wine/Docker. SteamCMD: app 302200 может требовать аккаунт Steam с игрой (у некоторых анонимный вход не сработал); сначала попробуйте анонимно. Версии клиента и сервера должны совпадать.
Локальная установка (Windows)
Установите и запустите с аргументами ниже (замените IP внешним; для локального теста используйте IP машины). Подключайтесь из игры по 127.0.0.1.
C:\steamcmd\steamcmd.exe +force_install_dir C:\miscreated-server +login anonymous +app_update 302200 validate +quit
cd /d C:\miscreated-server
Bin64_dedicated\MiscreatedServer.exe +sv_maxplayers 50 +map islands -mis_gameserverid 1337 -sv_bind 203.0.113.10 -sv_port 64090 +sv_servername "My Miscreated Server" +http_password ChangeMe! +http_startserver port:64190Установка на Linux VPS / выделенный сервер
Для Linux нативная версия не документирована: образ Docker от сообщества (docker-steamcmd-wine, помечен устаревшим) использует сеть хоста, hosting.cfg в steamapps/common/MiscreatedServer и плановый перезапуск. Чтобы остаться в рамках документации, выбирайте Windows Server.
Порты для открытия
- 64090-64094 TCP/UDP: диапазон, используемый сервером (образ Docker сообщества); игровой порт задаётся через -sv_port
- 64190/TCP: HTTP RCON (пример +http_startserver port:64190): не открывать публично
Брандмауэр Linux (ufw)
В Ubuntu/Debian сначала разрешите SSH, чтобы не потерять доступ, затем порты игры.
sudo ufw allow OpenSSH
sudo ufw allow 64090:64094/udp
sudo ufw allow 64090:64094/tcp
sudo ufw enable
sudo ufw statusБрандмауэр Windows (netsh)
В PowerShell от имени администратора (или «cmd» администратора):
netsh advfirewall firewall add rule name="Miscreated 64090-64094/UDP" dir=in action=allow protocol=UDP localport=64090-64094
netsh advfirewall firewall add rule name="Miscreated 64090-64094/TCP" dir=in action=allow protocol=TCP localport=64090-64094Брандмауэр хостера и проброс портов (NAT)
Если сервер у хостера (OVH, Hetzner, Scaleway…), откройте те же порты в его сетевом брандмауэре («security group»). При домашнем хостинге пробросьте порты (NAT) с роутера на постоянный локальный IP машины. Проверяйте извне (мобильный интернет или друг): проверка из своей сети ничего не доказывает.
Автозапуск и мониторинг
Создайте /etc/systemd/system/<имя>.service и выполните: sudo systemctl daemon-reload && sudo systemctl enable --now <имя>. Логи: journalctl -u <имя> -f.
[Unit]
Description=Miscreated dedicated server
After=network-online.target
Wants=network-online.target
[Service]
User=steam
WorkingDirectory=/home/steam/miscreated
ExecStart=/usr/bin/xvfb-run /usr/bin/wine64 Bin64_dedicated/MiscreatedServer.exe +sv_maxplayers 50 +map islands -sv_bind 203.0.113.10 -sv_port 64090
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.targetАвтозапуск в Windows (планировщик задач)
Создайте задачу планировщика «При запуске системы», выполняющую скрипт запуска, с наивысшими правами и «Выполнять вне зависимости от входа пользователя».
Обновления, резервные копии и перезапуски
Остановите сервер, снова выполните app_update 302200 validate и перезапустите. Перед крупным обновлением копируйте MiscreatedServer. Перезапускайте минимум раз в 24 ч: сервер сам накладывает это ограничение (sv_maxuptime, 12 ч на сервере без белого списка).
# backup
tar czf ~/backup-$(date +%F).tar.gz -C ~/server MiscreatedServerКак добавить и найти сервер
Когда сервер станет публичным, добавьте его на https://game-rank.com/jeux/miscreated (сайт владельца этого инструмента), чтобы игроки могли найти его, следить за ним и голосовать.
Устранение неполадок
- Недоступен снаружи, но работает на localhost: нет правила в брандмауэре ОС, у хостера или проброса NAT, либо неверный протокол (UDP/TCP). Проверьте каждый уровень по очереди.
- Подключение отклонено после обновления игры: версии клиента и сервера должны совпадать. Обновите сервер ещё раз и перезапустите его.
- Сервер сразу закрывается: запустите из консоли, чтобы прочитать ошибку, и проверьте свободную RAM, диск и программные требования.
- Сервер не инициализируется с патча 1.18.x: добавьте -sv_bind <внешний IP> (опускайте только при контенте Steam UGC).
- Имя сервера из hosting.cfg игнорируется: используйте +sv_servername в строке запуска.
Частые вопросы
- Какой Steam App ID у сервера?
- 302200 (Miscreated Dedicated Server). По отзывам сообщества анонимный вход может не сработать; тогда используйте аккаунт Steam с игрой.
- Как обновить сервер?
- Остановите сервер и снова выполните app_update 302200 validate; версии клиента и сервера должны совпадать.
- Как получить доступ к RCON?
- Включается через +http_startserver (порт любой) и защищается http_password в hosting.cfg либо +http_password при запуске; подключается веб-клиент RCON. Держите этот порт закрытым.
- Как рассказать о своём сервере?
- Добавьте его на https://game-rank.com/jeux/miscreated (сайт владельца этого инструмента): игроки смогут найти его, следить за ним и голосовать.
