Другие методы сборки
Эти подходы обычно медленнее и требуют более глубокого понимания Unreal Engine.
См. Unreal Engine для ваших первых шагов с хостингом игровых серверов Unreal Engine на Edgegap.
Изучите альтернативные методы сборки, подходящие для более продвинутых пользователей Unreal Engine и Edgegap:
Другие методы сборки — это быстрый и автоматизированный метод, подходящий для непрерывной интеграции.
⚡ Сборка из плагина — устаревший метод сборки, требующий сборки Unreal Engine из исходников.
⚡ Сборка с помощью скриптов
Сборка с помощью скриптов — это быстрый, полностью автоматизированный и простой метод, подходящий для непрерывной интеграции.
Подготовка
Прежде чем начать, убедитесь, что создать бесплатную учетную запись на Edgegap (кредитная карта не требуется).
Настройте несколько основных параметров на вашей машине для разработки:
1. Настроить проект
Будь то машина с Windows, Mac или Linux, вам потребуется собрать сервер для среды выполнения Linux, так как большинство облачных провайдеров в наши дни (включая Edgegap) работают на Linux. Не беспокойтесь, знание Linux не требуется.
☑️ Отключить проверку совместимости версии Unreal Engine для выделенных серверов и установить IpNetDriver в качестве драйвера по умолчанию или запасного драйвера для сетевой репликации:
Убедитесь, что ввели ваш DefaultServerTarget в конце этого фрагмента!
☑️ Перезапустите Unreal Engine чтобы загрузить последние изменения.
☑️ Создайте скрипт целевой сборки для выделенного сервера скопировав ваш <PROJECT>Editor.Target.cs файл в корневой папке проекта и переименовав копию в <PROJECT>Server.Target.cs.
☑️ Замените любые ссылки на слово Editor с Сервер в вашем скрипте целевой сборки сервера.
☑️ Включите вывод стандартных логов сервера добавив переопределения в ваш скрипт целевой сборки сервера:
✅ Теперь вы можете перейти к следующему шагу.
2. Собрать и опубликовать
Работа в команде разработчиков означает совместное использование кода. Когда что-то идет не так, последнее, что вы хотите услышать — «у меня работает». Игровые серверы должны надежно работать на любой машине, поскольку успешные игры запускают серверы на тысячах серверных машин по всему миру.
Чтобы сделать ваш сервер надежным, мы используем Docker — программное обеспечение виртуализации, гарантирующее, что все зависимости вашего серверного кода вплоть до уровня операционной системы всегда будут точно такими же, независимо от того, как и где запускается сервер.
☑️ Убедитесь, что Docker установлен и запущен.
☑️ Скачайте наш Edgegap Build Utils архив, включающий:
платформенно-специфичные скрипты сборки:
BuildAndUpload.ps1для Windows,BuildAndUpload.shдля macOS и Linux,
Dockerfile— рецепт для сборки ваших docker-образов,dockerignore— список некритичных файлов для удаления и ускорения сборок,StartServer.sh— утилитный скрипт, управляющий жизненным циклом Unreal Engine во время выполнения.
☑️ Переместите edgegap-unreal-buildutils папку в корневой каталог вашего проекта.
☑️ Отредактируйте BuildAndUpload скрипт для вашей платформы чтобы настроить:
учетные данные GitHub, используемые для получения предсобранных образов Unreal Engine для Linux-серверов,
детали проекта — версия движка, конфигурация сервера, имя файла .uproject,
Edgegap Registry учетные данные, используемые для загрузки ваших готовых сборок.
☑️ Выполните отредактированный скрипт чтобы запустить процесс сборки и загрузки. Завершение этого шага добавит новый образ в вашу страницу панели реестра контейнеров Edgegap в вашем репозитории.
☑️ Вы будете автоматически перенаправлены на создание нового Приложения и версии в панели управления.
✅ Теперь вы можете перейти к следующему шагу, перейдите к Другие методы сборки.
⚡ Сборка из плагина
Наш устаревший плагин включает расширенные утилиты и требует сборки Unreal Engine из исходников.
Подготовка
Прежде чем начать, убедитесь, что создать бесплатную учетную запись на Edgegap (кредитная карта не требуется).
Настройте несколько основных параметров на вашей машине для разработки:
1. Настроить проект
Будь то машина с Windows, Mac или Linux, вам потребуется собрать сервер для среды выполнения Linux, так как большинство облачных провайдеров в наши дни (включая Edgegap) работают на Linux. Не беспокойтесь, знание Linux не требуется.
☑️ Соберите вашу версию Unreal Engine из исходников на вашей машине разработчика,
установите конкретную ветку релиза (например,
5.5) чтобы собирать на стабильной основе,используйте твердотельный накопитель (SSD) для ускорения сборок (с ~12+ часов до ~2+ часов),
это требуется только в первый раз и каждый раз при обновлении версии Unreal Engine.
Скачивайте ветку с помощью git-клиента! Использование интерфейса GitHub всегда скачает нестабильную release ветку.
☑️ Установите Unreal Cross-Compiling Toolchain для сборки игровых серверов для Linux.
☑️ Перезагрузите вашу машину разработчика, иначе позже вы столкнетесь с ошибками!
☑️ Отключить проверку совместимости версии Unreal Engine для выделенных серверов и установить IpNetDriver в качестве драйвера по умолчанию или запасного драйвера для сетевой репликации:
Убедитесь, что ввели ваш DefaultServerTarget в конце этого фрагмента!
☑️ Перезапустите Unreal Engine чтобы загрузить последние изменения.
☑️ Создайте скрипт целевой сборки для выделенного сервера скопировав ваш <PROJECT>Editor.Target.cs файл в корневой папке проекта и переименовав копию в <PROJECT>Server.Target.cs.
☑️ Замените любые ссылки на слово Editor с Сервер в вашем скрипте целевой сборки сервера.
☑️ Включите вывод стандартных логов сервера добавив переопределения в ваш скрипт целевой сборки сервера:
✅ Теперь вы можете перейти к следующему шагу.
2. Собрать и опубликовать
Работа в команде разработчиков означает совместное использование кода. Когда что-то идет не так, последнее, что вы хотите услышать — «у меня работает». Игровые серверы должны надежно работать на любой машине, поскольку успешные игры запускают серверы на тысячах серверных машин по всему миру.
Чтобы сделать ваш сервер надежным, мы используем Docker — программное обеспечение виртуализации, гарантирующее, что все зависимости вашего серверного кода вплоть до уровня операционной системы всегда будут точно такими же, независимо от того, как и где запускается сервер.
☑️ Убедитесь, что Docker установлен и запущен.
☑️ Пересоберите наш плагин для вашей пользовательской версии Unreal Engine, собранной из исходников.
☑️ Скопируйте скомпилированный плагин в вашу Plugins папку в корне вашего проекта Unreal (не движка).
☑️ Запустите ваш новый Unreal Engine из Visual Studio и откройте пункт панели инструментов Edit / Plugins.
☑️ Включите наш плагин в разделе INSTALLED / Other.
☑️ Настройте наш плагин открыв пункт панели инструментов Edit / Project Settings / Edgegap:
Всегда нажимайте Enter после редактирования вводимых значений, чтобы убедиться, что они корректно сохранены.
API Token нужен для загрузки вашего сервера в Edgegap, получите его, нажав Get Token.
Название приложения в Edgegap может совпадать с названием вашего проекта или быть настроенным; убедитесь, что используете только строчные буквы, цифры или символы дефис
-и нижнее подчеркивание_.Image Path при необходимости предоставляет пользовательскую иконку для вашего игрового сервера на Edgegap, пока пропустите.
Название версии полезно для отслеживания совместимости клиент/сервер и отката в случае проблем.
Метки времени — отличный вариант для названий версий приложения, например,
2024.01.30-16.50.20-UTC.Несколько версий приложения могут указывать на один и тот же тег образа, например
v1.1.0иdev.Узнайте больше о Приложения и версии позже.
Не переиспользуйте latest версию чтобы предотвратить развертывание нашей системой устаревшего (кэшированного) образа.
☑️ Нажмите Create Application. Завершение этого шага приведет к появлению нового приложения в в Edgegap Dashboard.
☑️ Пока пропустите настройки пользовательского реестра контейнеров, позже вы можете использовать сторонний реестр, если захотите.
☑️ Когда вы будете довольны конфигурацией, нажмите Build and Push, дождитесь завершения процесса и убедитесь, что в консоли Unreal не появилось новых ошибок. Завершение этого шага приведет к появлению новой папки в корне вашего проекта - Saved/LinuxServer. Кроме того, в вашем разделе панели реестра контейнеров Edgegap под вашим репозиторием теперь появился новый образ, и новая Приложения и версии появилась в вашем разделе панели управления под вашим приложением.
☑️ В вашей новой версии приложения установите переменную окружения TARGET_FILE_NAME чтобы она совпадала с вашим значением DefaultServerTarget из шага Другие методы сборки.
✅ Теперь вы можете перейти к следующему шагу.
👉 Следующие шаги
Продолжайте к Unreal Engine с нашей функцией Dashboard Deployment и узнайте больше об остановке ваших развертываний, внедряемых переменных и параметризации, а также обнаруживаемости сервера.
Последнее обновление
Это было полезно?

