Форум программистов, компьютерный форум CyberForum.ru

Механизмы онлайн игр - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
spydark91
84 / 84 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
28.07.2013, 15:00     Механизмы онлайн игр #1
Как в онлайн играх происходит одновременое отображение действий персонажа, к примеру, на всех экранах играющих?
Игрок, к примеру, нажимает на какое-то умение, информация об этом отправляется на сервер, а сервер высылает всем игрокам строку типа "игрок:id111;действие:id10;" и все игроки обрабатывают эту строку и прорисовыва.т нужное действие, так?
если так, то как можно снизить нагрузку на сервер..
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bend3r
 Аватар для Bend3r
142 / 129 / 17
Регистрация: 29.07.2012
Сообщений: 681
28.07.2013, 15:04     Механизмы онлайн игр #2
Ну в любой игре, нагрузка на сервер не слишком большая, как вы думаете. Так же дота. Для каждой новой битве, 5х5, создается новый сервер. Так что обрабатывать 10 человек не такая, уж тяжелая работа.
spydark91
84 / 84 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
28.07.2013, 16:40  [ТС]     Механизмы онлайн игр #3
если взять игровые серверы крупных оналйн игр, к примеру вов, то там сотни запросов на сервер только от одного игрока за пару секунд получается..
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,093
28.07.2013, 16:47     Механизмы онлайн игр #4
Цитата Сообщение от spydark91 Посмотреть сообщение
сотни запросов на сервер только от одного игрока за пару секунд получается..
Не получается. У вас игрок сотни раз в секунду на кнопки жмёт?
VLK
 Аватар для VLK
192 / 161 / 12
Регистрация: 05.05.2013
Сообщений: 1,221
28.07.2013, 16:51     Механизмы онлайн игр #5
Цитата Сообщение от NoMasters Посмотреть сообщение
Не получается. У вас игрок сотни раз в секунду на кнопки жмёт?
а может он отправляет информацию о том, что игрок все еще онлайн (при том, что он ни чего не делает), или у него не произошел обрыв связи.
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,093
28.07.2013, 16:53     Механизмы онлайн игр #6
Цитата Сообщение от VLK Посмотреть сообщение
а может он отправляет информацию о том, что игрок все еще онлайн (при том, что он ни чего не делает), или у него не произошел обрыв связи.
Что, тоже сотни раз в секунду?
VLK
 Аватар для VLK
192 / 161 / 12
Регистрация: 05.05.2013
Сообщений: 1,221
28.07.2013, 16:56     Механизмы онлайн игр #7
Цитата Сообщение от NoMasters Посмотреть сообщение
Что, тоже сотни раз в секунду?
ну это автор приврал или напутал, или это обоснованные запросы.
Bend3r
 Аватар для Bend3r
142 / 129 / 17
Регистрация: 29.07.2012
Сообщений: 681
28.07.2013, 16:57     Механизмы онлайн игр #8
100 раз в секунду, ну ни как не может это произойти, ну только если он выполняет какие-то действия очень быстро, и на каждое действие необходимы запрос.
VLK
 Аватар для VLK
192 / 161 / 12
Регистрация: 05.05.2013
Сообщений: 1,221
28.07.2013, 17:00     Механизмы онлайн игр #9
spydark91, есть один извращенный способ который родился в мой голове, разделить типы запросов на важные и не важные, важные (допустим потеря ХП) будут идти только через сервер, а вот не важные, допустим в том же WOW, эмоции и т.д. будут идти через других игроков, т.е. игровой клиент будет иметь еще и функции сервера.
Bend3r
 Аватар для Bend3r
142 / 129 / 17
Регистрация: 29.07.2012
Сообщений: 681
28.07.2013, 17:09     Механизмы онлайн игр #10
Цитата Сообщение от VLK Посмотреть сообщение
spydark91, есть один извращенный способ который родился в мой голове, разделить типы запросов на важные и не важные, важные (допустим потеря ХП) будут идти только через сервер, а вот не важные, допустим в том же WOW, эмоции и т.д. будут идти через других игроков, т.е. игровой клиент будет иметь еще и функции сервера.
А ты представь, что у игровой сервер весит пару гигов. Но ты еще и хочешь в него запихать функции сервера, а вдруг этих функций очень много? То что тогда? Не вариант.
_THE_MASTER_
Сообщений: n/a
28.07.2013, 17:16     Механизмы онлайн игр #11
В хорошей инфраструктуре на сервер отправляется только уведомления о нажатых кнопках на клавиатуре и текущее состояние мышки, сервер же уже сам решает, что с этим делать
spydark91
84 / 84 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
28.07.2013, 21:33  [ТС]     Механизмы онлайн игр #12
к примеру игрок бежит(запросы пару раз в секунду чтоб все обновлялось бытстро), одновременно юзая заклинанию(еще запрос), магию сбили(еще запрос),хп снимают,ману снимают, еще чтонить можно придумать
около 10 запросов в секунду
VLK
28.07.2013, 21:41
  #13

Не по теме:

_THE_MASTER_, бедняга 1 сообщение и уже заблокирован.

Smiler
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 5
28.07.2013, 21:55     Механизмы онлайн игр #14
Цитата Сообщение от spydark91 Посмотреть сообщение
Как в онлайн играх происходит одновременое отображение действий персонажа, к примеру, на всех экранах играющих?
Игрок, к примеру, нажимает на какое-то умение, информация об этом отправляется на сервер, а сервер высылает всем игрокам строку типа "игрок:id111;действие:id10;" и все игроки обрабатывают эту строку и прорисовыва.т нужное действие, так?
если так, то как можно снизить нагрузку на сервер..
не ВСЕМ игрокам отправляет а только тем которые есть у него в так называемом KnownList (другими словами тем кто его видит) а таких как правило немного.

Добавлено через 2 минуты
Цитата Сообщение от spydark91 Посмотреть сообщение
к примеру игрок бежит(запросы пару раз в секунду чтоб все обновлялось бытстро), одновременно юзая заклинанию(еще запрос), магию сбили(еще запрос),хп снимают,ману снимают, еще чтонить можно придумать
около 10 запросов в секунду
зависит от игры конечно.

но судя по L2 AION WOW (то с чем сталкивался) не более 2-3 пакетов (вместе с пингом) в секунду. это не очень большая нагрузка.
spydark91
84 / 84 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
28.07.2013, 22:05  [ТС]     Механизмы онлайн игр #15
это понятно, что расслыаем мы не всему серверу, а 50-100 человекам
но разве то что мы постоянно обращаемся к серверу не сказывается пагубно на его работе?
Wolkodav
 Аватар для Wolkodav
599 / 452 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
28.07.2013, 22:45     Механизмы онлайн игр #16
Тут. Почитайте, немного написано про онлайн игру типа WoW. Может поможет проясниться.

Добавлено через 35 минут
Тут, еще немножко про онлайн игра.
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,093
28.07.2013, 22:53     Механизмы онлайн игр #17
Цитата Сообщение от spydark91 Посмотреть сообщение
к примеру игрок бежит(запросы пару раз в секунду чтоб все обновлялось бытстро), одновременно юзая заклинанию(еще запрос), магию сбили(еще запрос),хп снимают,ману снимают, еще чтонить можно придумать
около 10 запросов в секунду
Запросов? Пакетов от сервера может быть, а от клиента нужны _только_ действия игрока. Всё остальное сервер и другие клиенты посчитают сами. Более того, даже не все действия, а только те, которые невозможно предугадать.
spydark91
84 / 84 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
29.07.2013, 09:42  [ТС]     Механизмы онлайн игр #18
Цитата Сообщение от NoMasters Посмотреть сообщение
Запросов? Пакетов
а чем различаются пакеты и запросы?
Wolkodav
 Аватар для Wolkodav
599 / 452 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
29.07.2013, 09:46     Механизмы онлайн игр #19
Пакет это, что содержится в запросе) Как слова в вопросе.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2013, 10:55     Механизмы онлайн игр
Еще ссылки по теме:

C++ Механизмы обработки исключений / Нужен пример
Защита 2д онлайн игры от взломов C++
Какие механизмы для защиты кучи есть? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
spydark91
84 / 84 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
29.07.2013, 10:55  [ТС]     Механизмы онлайн игр #20
пост запрос это пакет, так? к примеру
Yandex
Объявления
29.07.2013, 10:55     Механизмы онлайн игр
Ответ Создать тему
Опции темы

Текущее время: 16:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru