![]() |
Модераторы: Rickert |
![]() ![]() ![]() |
|
Miller_time |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 641 Регистрация: 8.9.2006 Где: Нижний Новгород Репутация: нет Всего: 1 |
Подскажите пожайлуста, есть ли где нибуть в сети алгоритмы работы ? Хотелось бы почитать материал ?
Есть ряд вопросов может кто нибуть подскажет : 1. Как должен работать сервер и что от сервера должен получать игрок( Клиент) Попытался реализовать так (Читать по пунктам ) : Сервер Клиент 1.Клиент отправляет свои данные и коррдинаты на карте 2.Сервер обрабатывает игрока 3. Выслает ему данные относительно других игроков 4. На клиенте создаються модели и сущьности других игроков 5. Клиент начинает постоянно опрашивать сервер относительно позиций других игроков Хотелось бы узнать является ли этот примерный алгоритм правильным ? |
|||
|
||||
REZiaMIX |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 3.11.2007 Репутация: 1 Всего: 4 |
Клиент не должен ниче серьезного отправлять , иначе будут читы. Клиент должен отправлять свое смещение относительно текущей позиции , причем сервер должен его проверять. -------------------- ![]() |
|||
|
||||
Miller_time |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 641 Регистрация: 8.9.2006 Где: Нижний Новгород Репутация: нет Всего: 1 |
А есть, может быть какиенибть библиотеки или движи со встроенным клиент-сервером ? Графическим ?
Добавлено через 28 секунд Да и с какой переодичностью передовать данные ? |
|||
|
||||
Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 5 Всего: 27 |
Вот какой был у меня опыт: Программа, работающая по сети на трех машинах. Сервер расчитывает движение поезда, клиенты должны получать данные от сервера и точно так же рисовать этот движущийся поезд, но с других ракурсов. В общем сначала я на каждом кадре формировал буфер для отправки, который содержал в себе координаты всех вагонов. Но даже при таком малом объеме данных на клиентах вагоны двигались рывками. Всё из-за потери пакетов при передачи.
Короче проблему решили частично, так как проект уже надо было сдавать. А именно пришлось рассчитывать на клиенте как двигается вагон между пришедшими пакетами. Я это к тому, что полностью полагаться на сервер нельзя. Много расчетов надо делать на клиенте. |
|||
|
||||
REZiaMIX |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 3.11.2007 Репутация: 1 Всего: 4 |
При MMORPG - важные расчеты в клиент нельзя переносить. Пример: Игрок1 бьет Игрока2-> Игрок1 передает серверу пакет о том , что удар нанес 111 единиц урона. Путем сниффа , анализа , потом подмены пакетов , число 111 заменяется на любое другое. Так же и с движением и т.д. Тут надо включит голову , например в примере с поездами: Сервер должен не передавать каждый кадр. Надо передавать данные смещения, т.е. направление , скорость и т.д. И не стоит путать MMORPG с промышленной программой. В промышленной можно надеяться никто читерить не будет. Да и 3 клиента - нагрузка небольшая. А вот если этих клиентов 1000 , попробуйте слать каждый кадр движение??? а вот и не выйдет(никакой сервер не потянет) Так что тут вывод такой , надо с самого начала полагаться на то, что нельзя делать никакую продвинутую физику и тд , что нельзя расчитать за определенный промежуток времени. Например все текущие физ. движки расчитаны на просчет в каждом кадре. Тут стоит выбор , или дать клиенту расчитать его движение , или пускай сервер это делает. В первом случае - клиент может послать что захочешь , во втором случае при большом количестве клиентов(больше 30-40 думаю) производительности не хватит. -------------------- ![]() |
|||
|
||||
Miller_time |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 641 Регистрация: 8.9.2006 Где: Нижний Новгород Репутация: нет Всего: 1 |
А может быть уже есть платформы под MMORPG ? Студийные ?
Добавлено через 4 минуты и 57 секунд Можеть быть есть смысал использовать Unity 3D, вроде динамично развивающаяся платформа ? Глючная пока правда. Подскажите кто что может, сейчас использую Truevison3D но это просто графический библиотека. |
|||
|
||||
ShellRaiser |
|
|||
![]() еще чуть и закоммичу ![]() Профиль Группа: Участник Сообщений: 156 Регистрация: 20.7.2007 Где: Белaрусь, Гродно Репутация: 1 Всего: 1 |
а у тебя есть $100к за юнити? ![]() |
|||
|
||||
Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 5 Всего: 27 |
REZiaMIX, убедил
![]() A Unity под винду по моему еще не сделали. Или уже сделали? Во всяком случае, когда я его скачивал (месяца три назад), пакета разработчика под винду небыло. |
|||
|
||||
Miller_time |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 641 Регистрация: 8.9.2006 Где: Нижний Новгород Репутация: нет Всего: 1 |
Год как Unity уже сть под винду, вопрос в том что он работает криво :(
Есть ))). Может быть ктонибуть натыкался на платформы предназначенные для разработки MMORPG. |
|||
|
||||
ShellRaiser |
|
|||
![]() еще чуть и закоммичу ![]() Профиль Группа: Участник Сообщений: 156 Регистрация: 20.7.2007 Где: Белaрусь, Гродно Репутация: 1 Всего: 1 |
projectdarkstar.com
клиент серверная платформа, для ммо игр и не только =) поддерживает очень много вкусных фич, но ет читайте на офф сайте Добавлено @ 14:59 Bitter, Miller_time, я вас чуть не попутал с вашими аватарами) Это сообщение отредактировал(а) ShellRaiser - 14.7.2009, 15:01 |
|||
|
||||
arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 6 Всего: 61 |
Miller_time, есть две ММОРПГ платформы сейчас - HeroEngine и BigWorld. Стоят недешево (считай, 500K USD и выше). У обоих свои недостатки.
- HeroEngine жрет ресурсы серверов оооочень сильно, требует Винду. - BigWorld имеет мощный сервер, но слабоватый рендер и path finding Есть третий вариант. В моей компании сейчас разрабатывается серверный движок для ММО, который в качестве клиента использует Gamebryo (Oblivion, Fallout3, Warhammer Online, etc). Если ты действительно серьезно настроен и есть финансирование, стучись в личку, обсудим возможное сотрудничество. Добавлено через 1 минуту и 20 секунд это УГ. оно ни в одном серьезном проекте коммерческом не использовалось. там от их даркстара до ММО сервера человеко-годы работы, и еще человеко-годы для клиентской части. Добавлено через 2 минуты и 22 секунды Miller_time, да, забыл. У меня еще есть платформа для MMORPG на Flash. Тоже обсуждабельно. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |