Интеграция лобби EOS
Это руководство покажет вам, как интегрировать Edgegap для работы с лобби EOS в вашем проекте на Unreal. Некоторые шаги потребуют отправки запросов к нашему API с использованием токена, и curl команды, приведенные ниже, позволят вам просмотреть каждый из их ответов, чтобы вы могли определить, как обрабатывать их в своем коде. При использовании токена в ваших запросах убедитесь, что сохраняете токен ключевое слово.
Вам также потребуется заранее настроенная версия приложения на нашей платформе для вашего проекта. В этом случае мы рекомендуем использовать плагин Edgegap для Unreal, чтобы ускорить процесс тестирования. Для получения дополнительной информации о плагине вы можете прочитать нашу документацию здесь.
В качестве меры предосторожности не рекомендуется позволять владельцу лобби EOS отправлять запросы напрямую к API Edgegap в рабочей среде, поскольку клиент получит доступ к API-токену. Вместо этого следует использовать отдельный сервис для управления этими запросами.
1. Получение и сохранение публичного IP игроков
Для начала каждый игрок, который присоединяется к лобби — включая владельца лобби — должен получить свой публичный IP и сохранить его как свойство участника лобби.
curl --location --request GET 'https://api.edgegap.com/v1/ip' \
--header 'Authorization: [EDGEGAP_API_TOKEN]'2. Создать деплоймент
Когда владелец лобби решит, что матч готов начаться, необходимо отправить запрос на создание нового деплоймента на Edgegap, используя сохраненные публичные IP-адреса.
curl --location --request POST 'https://api.edgegap.com/v1/deploy' \
--header 'Content-Type: application/json' \
--header 'Authorization: [EDGEGAP_API_TOKEN]' \
--data-raw '{
"app_name": "[EDGEGAP_APP_NAME]",
"version_name": "[EDGEGAP_APP_VERSION]",
"ip_list": [
"[LOBBY_MEMBER_IP]"
]
}'После этого владельцу лобби потребуется периодически опрашивать деплоймент, используя request_id, предоставленный в ответе на запрос создания деплоймента. Как только в ответе у деплоймента появится текущее_состояние установлено в ГОТОВ, владелец лобби должен будет установить значения IP и порта деплоймента как свойства лобби EOS.
3. Подключение к деплойменту
Когда игроки получат уведомление о том, что значения IP и порта были назначены, они могут сверить их с кэшем клиента и затем использовать их для подключения к серверу, чтобы сыграть матч.
4. Завершение матча и деплоймента
После завершения матча владелец лобби снимет значения IP и порта из свойств лобби EOS, что уведомит всех остальных корректно отключиться от сервера. Если приложение настроено на внедрение переменных окружения, они могут быть использованы для завершения деплоймента изнутри в это время.
Для завершения деплоймента извне сервера можно использовать запрос, подобный curl команде, показанной ниже.
Если игроки остаются в лобби, владелец лобби может затем повторить шаги, начиная с запроса нового деплоймента, чтобы инициировать реванш с теми же участниками.
Последнее обновление
Это было полезно?

