Интеграция лобби EOS

Это руководство покажет вам, как интегрировать Edgegap для работы с лобби EOS в вашем проекте на Unreal. Некоторые шаги потребуют отправки запросов к нашему API с использованием токена, и curl команды, приведенные ниже, позволят вам просмотреть каждый из их ответов, чтобы вы могли определить, как обрабатывать их в своем коде. При использовании токена в ваших запросах убедитесь, что сохраняете токен ключевое слово.

Вам также потребуется заранее настроенная версия приложения на нашей платформе для вашего проекта. В этом случае мы рекомендуем использовать плагин Edgegap для Unreal, чтобы ускорить процесс тестирования. Для получения дополнительной информации о плагине вы можете прочитать нашу документацию здесь.

circle-exclamation

1. Получение и сохранение публичного IP игроков

Для начала каждый игрок, который присоединяется к лобби — включая владельца лобби — должен получить свой публичный IP и сохранить его как свойство участника лоббиarrow-up-right.

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 и порта деплоймента как свойства лобби EOSarrow-up-right.

3. Подключение к деплойменту

Когда игроки получат уведомление о том, что значения IP и порта были назначены, они могут сверить их с кэшем клиента и затем использовать их для подключения к серверу, чтобы сыграть матч.

4. Завершение матча и деплоймента

После завершения матча владелец лобби снимет значения IP и порта из свойств лобби EOS, что уведомит всех остальных корректно отключиться от сервера. Если приложение настроено на внедрение переменных окружения, они могут быть использованы для завершения деплоймента изнутри в это время.

Для завершения деплоймента извне сервера можно использовать запрос, подобный curl команде, показанной ниже.

Если игроки остаются в лобби, владелец лобби может затем повторить шаги, начиная с запроса нового деплоймента, чтобы инициировать реванш с теми же участниками.

Последнее обновление

Это было полезно?