Суббота, 30 Ноября 2024, 07:36

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
QvantДата: Вторник, 17 Июля 2012, 11:35 | Сообщение # 381 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Quote (zodiak)
Не правда. Если не придираться к словам, то в TCP все, что было отправлено, будет получено. Именно для этого он и создавался. В случае неполучения пакета TCP отправляет его повторно.

Нет , повторный и последующие пакет тоже может не дойти wink
по TCP если он не дошёл то вернётся ошибка , по UDP ошибка не вернётся.

Quote (zodiak)
В UDP же этот механизм нужно делать самому. И для его реализации тоже будут затраты сетевого времени.

так я написал если пакеты посылаются часто в равный промежуток времени тогда для UDP легко сделать проверку тех пакетов которые теряются и приходят вне очереди!
шлём n пакет на сервер
шлём n+1 пакет на сервер
шлём n+2 пакет на сервер
шлём n+3 пакет на сервер
пришла команда от сервера что пропал пакет шлём n+2 пакет на сервер
если там важная информация тогда
шлём n+4 пакет + n+2
если важного ничего нет (например промежуточные координаты , которые сервер сам вычислил методом интерполяции по n+1 и n+3) тогда просто
шлём n+4 пакет

В TCP при этом будут жестоки задержки -
послали запрос на передачу пакета - ждём
пришёл запрос , если сервер готов - посылаем пакет
ждём ответ от сервер что пакет дошёл
посылаем запрос на второй пакет...

если не дошёл тогда снова посылаем запрос
Если так передавать движение то игрок помрёт от задержек!!!

Если у нас одиночное событие - например клиент посылает команду раз в несколько минут в произвольный промежуток времени то тут TCP выгодней.
QvantДата: Вторник, 17 Июля 2012, 09:41 | Сообщение # 382 | Тема: Т 50 пак фа
почти ветеран
Сейчас нет на сайте
ага на 70-80 лет biggrin http://ru.wikipedia.org/wiki/Тип_92_(авиационный_пулемёт)

Сообщение отредактировал Qvant - Вторник, 17 Июля 2012, 09:43
QvantДата: Вторник, 17 Июля 2012, 09:37 | Сообщение # 383 | Тема: Т 50 пак фа
почти ветеран
Сейчас нет на сайте
Учи матчасть tongue
QvantДата: Вторник, 17 Июля 2012, 09:28 | Сообщение # 384 | Тема: Т 50 пак фа
почти ветеран
Сейчас нет на сайте
Да они и есть пулемёты посути но называются авиационные пушки , а не пулемёты.

Сообщение отредактировал Qvant - Вторник, 17 Июля 2012, 09:28
QvantДата: Вторник, 17 Июля 2012, 09:17 | Сообщение # 385 | Тема: Т 50 пак фа
почти ветеран
Сейчас нет на сайте
Пулемётов на самолётах нет , если только их пилот с собой незахватит и под седенье не положит ... есть авиационная пушка наверно она находится тут http://s1.ipicture.ru/uploads/20120717/RQHTxrQ1.jpg

Фонарь пилот врядли сможет открыть в полёте чтоб пострелять ...
QvantДата: Вторник, 17 Июля 2012, 09:07 | Сообщение # 386 | Тема: Т 50 пак фа
почти ветеран
Сейчас нет на сайте
Quote (MasTerilDar)
Кто знает, где у т 50 пулемёт стоит?

Пулемёт под сиденьем пилота лежит biggrin


Сообщение отредактировал Qvant - Вторник, 17 Июля 2012, 09:08
QvantДата: Вторник, 17 Июля 2012, 08:55 | Сообщение # 387 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Quote (Pesets)
Тогда встает вопрос - что делать с нагибаторами, которые при отправке пакетов могут выставить неверное время отправки команды?

Простенькая проверка на сервере сравниваем полученое время от клиента с временем на сервере.
Если отправленое время будит опережать время на сервере , тогда переносим игрока в локацию "тюрьма" и там его пытаем smile
Если время запаздывает больше положеного (например у нас стоит граница в несколько секунд , а пришла команда что игрок начал движение час назад) - выкидываем этого игока в меня с окошком "соединение разорвано".
QvantДата: Вторник, 17 Июля 2012, 08:44 | Сообщение # 388 | Тема: Construct Classic от Scirra VS Game Maker
почти ветеран
Сейчас нет на сайте
AMD 4GHz , ОЗУ 4Гб Radion 5600
С большим спрайтом Констрак работает на 30% быстрей - поздравляю его с победой biggrin

Construct Classic: test =25 fps
Game Maker: test = 19 fps.
QvantДата: Вторник, 17 Июля 2012, 00:13 | Сообщение # 389 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Quote (Qvant)
Сервер проверяет возможность выстрела (у игрока А достаточно патронов, между А и Б нет стен и т. д.), а затем вычисляет попадёт ли А в Б и сколько нанесёт

не желательно на сервере проверять коллизии ...
QvantДата: Вторник, 17 Июля 2012, 00:07 | Сообщение # 390 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Quote (Pesets)
Пусть у нас есть такая ситуация: -Клиент посылает команду (скажем, идет вперед)

бьём по рукам такому разработчику ММО игры biggrin
Например у нас движение по прямой:
игрок кликает мышкой куда ему идти
на сервер отправляется начальное время , начальные и конечные координаты
и сразу начинает движение не дожидаясь отклика от сервера

сервер вычисляет есть ли другие игроки рядом и если есть то им отсылается эти параметры начальное время , начальные и конечные координаты

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

Передвижние по алгоритму А* с обходом препятствий - путь вычисляется на первом клиенте и передаётся начальное время и массив координат точек пути
Всё тоже самое но остальные клиенты проверяют путь первого игрока чтоб не было читов (сервер путь и колизии вообще не должен вычислять)
QvantДата: Понедельник, 16 Июля 2012, 13:44 | Сообщение # 391 | Тема: Construct Classic от Scirra VS Game Maker
почти ветеран
Сейчас нет на сайте
Размер начального спрайта , размер комнаты , период синусоиды ?
с массивами - например подсчёт времени при генерация произвольного массива из xx элементов yy раз.
QvantДата: Понедельник, 16 Июля 2012, 13:29 | Сообщение # 392 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Quote
Но нет никакой проверки на сохранность пакета. Быстнее, но ненадёжнее и небезопастно. К тому же пакеты легко перехватить. Если нужно гарантировать доставку и безопасность пакета то лучше TCP, если скорость то UDP.
Ах, да это всё ИХМО.

Конечно это справедливое высказывание , но немного поясню - в реал тайме важна скорость (UDP)
Пропал один два пакета - фик с ним , движение интерполируется по соседним отчётам , важная информация при пропадания отчёта может быть послана снова - если есть обратная связь (какой пакет пропал)
В каждом пакете высылается номер пакета - это итак понятно.
В итоге всёравно имеем быстрей чем TCP.

Теперь о птичках - TCP как ни странно тоже не гарантирует передачу данных!
Грубо говоря отличие в том что TCP идёт 2 подтверждение что слушатель готов принять пакет и что пакет дошёл .
Хорошо для редких пакетов , и скорость до 3 раз ниже.
А в реалтайме несколько пакетов в секунду отсылается и не прырывно - вичислить что пропало легко.

Перехватить одинаково легко и TCP и UDP - шифровать пакеты надо
QvantДата: Понедельник, 16 Июля 2012, 12:59 | Сообщение # 393 | Тема: Construct Classic от Scirra VS Game Maker
почти ветеран
Сейчас нет на сайте
Quote (omsklavr)
Тему закрываем победила Скирра,

Победил холивар wink
QvantДата: Понедельник, 16 Июля 2012, 12:56 | Сообщение # 394 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Quote (Apati)
Почему именно UDP?

При передачи небольшого пакета скорость будит до 3 раз быстрей , чем больше пакет тем будит меньше разница.
QvantДата: Понедельник, 16 Июля 2012, 12:29 | Сообщение # 395 | Тема: Создание реал-тайм сетевой игры
почти ветеран
Сейчас нет на сайте
Pesets есть в интернете статьи с интерполяцией и апроксимацией с примерами в реалтайме для игр...
Если в двух словах:
То нужен протокол UDP , клиент жёстко синхронизован с сервером (посылает данные часто с постоянным промежутком времени).
Пакеты обрабатываются (пропущенные отчёты апроксимируются , те что пришли не в своём порядке надо переставить).
Если пропущен один или два пакет , то данные ещё можно апроксимировать , если больше - тогда соедининие рвётся.
Ну и методом интерполяции в клиенте вычисляется движение других игроков по этим же отчётам.
QvantДата: Понедельник, 16 Июля 2012, 09:22 | Сообщение # 396 | Тема: Falcoware - Заработай на своих играх!
почти ветеран
Сейчас нет на сайте
QvantДата: Понедельник, 16 Июля 2012, 08:40 | Сообщение # 397 | Тема: Construct Classic от Scirra VS Game Maker
почти ветеран
Сейчас нет на сайте


Конструкторы Construct Classic &&. GM 8.1 созданы для быстрого обучения создания игр , а не для скорости.
Для создания не большой казуальной игры они оба хорошо подходят, для создания МММОРПГ - они оба не подходят.

А вот если игра средней сложности , тогда неплохо провести объективные тесты между ними - сколько спрайтов могут отрисовать , сколько частиц , какая скорость обработки вычислений и тп
Составить табличку со сравнительными характеристиками , добавить дополнительную информацию (стоимость , размер , дополнительные библиотеки...ну и исходники тестов , чтоб любой желающий сам мог потестировать)
Пользователь посмотрит таблицу и выберет то что ему объективно нужно.

А в итоге только обсуждается "сферический конь в ваккуме"
QvantДата: Воскресенье, 15 Июля 2012, 21:29 | Сообщение # 398 | Тема: Ни чем не примечательный проект...
почти ветеран
Сейчас нет на сайте
Новое обновление идеи в шапке

Клавиши управления в бою
1 - переключение камеры на космосамолёт , с его панелью (если он есть)
2 - переключение камеры на турель
3- переключение камеры на мышку ( дополнительно появиться окно перемещени на глобальной карте )
M- включение глобальной карты (выключение любая клавиша 1, 2 или 3)
Планируется бой космических флотов - игрок сможет брать непосредственное управление любой единицей при желании.

Зачатки редактора
F2 вход в редактор
Все объекты "замораживаются" на экране и готовы к редактированию.
зажатая клавиша alt - перетаскивание объекта
зажатая клавиша Ctrl и клик ЛКМ - добавление объекта (если он выбран на панеле справа)
del и клик ЛКМ - удаление объекта
ПКМ на объекте открывает окно свойств объекта (самих свойства на панеле пока нет , их буду "вбивать" как разработаю ГУИ )
Планируется сохранение/загрузка координат объектов и их свойств в dat файле.
В будующем dat файл с картой можно будит передавать на сервер , от туда его может получить другие игроки. Почти как в ММО tongue

Пробел - перезапускать комнату

PS. Сейчас буду заниматься долгим и нудным ГУИ, надеюсь он получиться.
QvantДата: Воскресенье, 15 Июля 2012, 20:32 | Сообщение # 399 | Тема: Construct Classic от Scirra VS Game Maker
почти ветеран
Сейчас нет на сайте
Quote (allxumuk)
Теперь гамачники стали этим мазаться

Чем мазаться стали ?

До нового года ГМ ШТМЛ5 - представлял собой кусок ошибок (было бета тестирование) и сейчас если неошибаюсь идёт бета тестирование , но уже там много доработали и порезали баги ... а первые версии были в сентябре , а констракт 2 уже к тому времени был.
Даже одно время пытались побороться с крякерами , но крякеры победили - в этом плюс ГМ biggrin

Не важно какой инструмент круче - важно подходит он или нет под конкретные задачи.
QvantДата: Воскресенье, 15 Июля 2012, 19:39 | Сообщение # 400 | Тема: Construct Classic от Scirra VS Game Maker
почти ветеран
Сейчас нет на сайте
Quote (Gavolot)
Разве картинка от спрайта гм

К спрайту прилагается кроме изображения ещё и секретные данные - координаты центра спрайта и название ... happy

Quote (allxumuk)
Кстати игры из Констракта лучше запускаются в мобильных браузерах.

ГМШТМЛ5 пос же вышел (а может и ещё невышел в релиз) чем констракт2.
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг