Вопрос Dedicated server p2p

Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Кто-то пробовал уже делать сессии, когда при выходе сервера из нее, чтобы сессия не закрывалась и клиенты дальше играли, когда уже 0 игроков сессия сама закрывается.
Если делать через выделенный сервер то как? В интернете уроки только по AWS/PlayFab.
Допустим у меня есть вдс и я хочу запустить на ней эту систему.
Как её сделать?При создании сессии должен создаваться сервер с рандомным портом, и потом уничтожать её если 0 игроков?

Как это вообще возможно реализовать?
 
Пользователь
Статус
Оффлайн
Регистрация
17 Июл 2021
Сообщения
463
Реакции[?]
119
Поинты[?]
11K
При создании сессии должен создаваться сервер с рандомным портом
Лучше создавать с определенным портом. В популярных играх на UE4 зачастую используются порты 7777-7780. Ну и опять же, нужно понимать какую систему ты хочешь сделать. Если просто поиск по очередям, то тогда нужно убивать сессию; но если ты хочешь сделать лист серверов (как в кс server browser), то такой вариант не подходит.

Еще нужно уточнить на чем ты делаешь сервера. Если на Blueprint, то кажется, там можно получить информацию о текущей сессии (кол-во игроков) через ноду, сверять ее (кол-во игроков == 0) и кидать в бранч на обработку, потом вытягивать лайн с TRUE и закрывать сессию через ноду.

Дополнительно, не совсем понятен заголовок. P2P и Dedicated Server это разные понятия, которые никак не стакаются вместе.
P2P - когда один из игроков является хостом, т.е преимущество по пингу будет у этого игрока (хост). Этот способ плох тем, что открывается кучу новых возможностей типа использований Authority_ функций, Lagswitch и т.д
Dedicated Server - это что-то типо MITM, когда сервер выступает в качестве хоста. Т.е все игроки отправляют данные на этот сервер, а сервер отправляет данные игрокам. Выделенные сервера как раз-таки и фиксят все те "возможности", о которых я сказал выше.
 
Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Лучше создавать с определенным портом. В популярных играх на UE4 зачастую используются порты 7777-7780. Ну и опять же, нужно понимать какую систему ты хочешь сделать. Если просто поиск по очередям, то тогда нужно убивать сессию; но если ты хочешь сделать лист серверов (как в кс server browser), то такой вариант не подходит.

Еще нужно уточнить на чем ты делаешь сервера. Если на Blueprint, то кажется, там можно получить информацию о текущей сессии (кол-во игроков) через ноду, сверять ее (кол-во игроков == 0) и кидать в бранч на обработку, потом вытягивать лайн с TRUE и закрывать сессию через ноду.

Дополнительно, не совсем понятен заголовок. P2P и Dedicated Server это разные понятия, которые никак не стакаются вместе.
P2P - когда один из игроков является хостом, т.е преимущество по пингу будет у этого игрока (хост). Этот способ плох тем, что открывается кучу новых возможностей типа использований Authority_ функций, Lagswitch и т.д
Dedicated Server - это что-то типо MITM, когда сервер выступает в качестве хоста. Т.е все игроки отправляют данные на этот сервер, а сервер отправляет данные игрокам. Выделенные сервера как раз-таки и фиксят все те "возможности", о которых я сказал выше.
Заголовок для большего внимания к этой теме, сейчас расскажу поподробнее.
Существует выделенная машина на которой игроки могут создавать сессии, игрок создал сессию и он является сервером, мне такое не надо, так как если он выйдет, сервер закроется а клиенты дальше не смогут доиграть матч.
Смысл такой сессии в том, что она существует до тех пор пока на ней кто-то есть.
Делаю на блупринтах, если делать через advanced session, то это не подходит, там есть сервер который может выйти и игра закроется.
Можно на небольшом примере узнать как это можно реализовать.
1636899313827.png
 
Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Лучше создавать с определенным портом. В популярных играх на UE4 зачастую используются порты 7777-7780. Ну и опять же, нужно понимать какую систему ты хочешь сделать. Если просто поиск по очередям, то тогда нужно убивать сессию; но если ты хочешь сделать лист серверов (как в кс server browser), то такой вариант не подходит.

Еще нужно уточнить на чем ты делаешь сервера. Если на Blueprint, то кажется, там можно получить информацию о текущей сессии (кол-во игроков) через ноду, сверять ее (кол-во игроков == 0) и кидать в бранч на обработку, потом вытягивать лайн с TRUE и закрывать сессию через ноду.

Дополнительно, не совсем понятен заголовок. P2P и Dedicated Server это разные понятия, которые никак не стакаются вместе.
P2P - когда один из игроков является хостом, т.е преимущество по пингу будет у этого игрока (хост). Этот способ плох тем, что открывается кучу новых возможностей типа использований Authority_ функций, Lagswitch и т.д
Dedicated Server - это что-то типо MITM, когда сервер выступает в качестве хоста. Т.е все игроки отправляют данные на этот сервер, а сервер отправляет данные игрокам. Выделенные сервера как раз-таки и фиксят все те "возможности", о которых я сказал выше.
Как я понял, можно игрока при входе в игру сразу конектить к выделенному серверу, и через него запускать сессии, опробую и напишу.
 
Похожие темы
Сверху Снизу