Пятница, 26 Апреля 2024, 05:37

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » KamiRonin [1057]
Результаты поиска
KamiRoninДата: Суббота, 09 Января 2016, 21:01 | Сообщение # 21 | Тема: Сокет-сервер для realtime-игры
почти ветеран
Сейчас нет на сайте
Цитата Nitro ()
пакетики шифровать надо хорошенько, а то человек со снифером плохая штука)
если задержки, то могу предложить пакеты движения в один канал, другие пакеты в другой и тд.

да конечно лучше шифровать, кто ж спорит!?
на стадии формирования в пакет байтов ставим.. само шифрование как таковое тема отдельная.. поэтому тут как бы немного рановато была бы.
Цитата Nitro ()
и задержка какая? нагрузка на сеть или парсинг пакетов?

да выразился так, мол "задержка" я позже объяснил - просто частота обмена данными между клиентом и сервером - для разных видов игр свои потребности в этом смысле.. поэтому и сказал - что это определяет разработку - какие пакеты и каким способом потом кидать.


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Вторник, 05 Января 2016, 14:24 | Сообщение # 22 | Тема: Какой плохой Unity5
почти ветеран
Сейчас нет на сайте
Цитата FlyOfFly ()
я 10ку пробовал и пока 8ка и хрюня самые лучшие ос

ну вот и пиши от своего имени, под видом цитаты от меня не надо это выдавать! чего ты не понял то?? исправь, убери ссылку на мой ник над своими словами...


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Вторник, 05 Января 2016, 14:26
KamiRoninДата: Вторник, 05 Января 2016, 08:49 | Сообщение # 23 | Тема: Какой плохой Unity5
почти ветеран
Сейчас нет на сайте
Цитата FlyOfFly ()
Исправил

если исправил - то исправь у себя, зачем делать "цитату" исправляя за меня! для меня Win7 x64 лучшая Windows из всех мной попробованных (Win98, WinME, Vista, 2000, XP, 7, 8.x) - 10ку еще не пробовал.

так что исправь пост, нефиг мне приписывать твою фигню! :-/ двойное отрицание можно трактовать двояко, поэтому "то на то" НЕ получается!


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Вторник, 05 Января 2016, 08:51
KamiRoninДата: Вторник, 05 Января 2016, 08:44 | Сообщение # 24 | Тема: Сокет-сервер для realtime-игры
почти ветеран
Сейчас нет на сайте
Цитата maker-rus ()
Я так понял он имеет ввиду, высокий ping :)

При планировании клиент-сервера нужно иметь в виду с какой частотой требуется отправлять данные - для пошаговой стратегии высокая скорость не требуется, для FPS - наоборот нужно отправлять очень много данных почти на каждое движение перса. Об этом вопрос и был. Какие минимальные временные рамки для отправки пакетов.
Цитата Ghost_in_the_shell ()
если к примеру игрок направил персонажа в точку X:Y, как это отослать?

Отправляется просто новая координата. Сервер рассылает ид клиента и его новую координату остальным. Клиентская часть интерпретирует это как смещение персонажа и визуализирует это у тебя на экране перемещая аватара чужого перса по местности в нужную точку (при разработке клиента нужно продумать сглаживание перемещения между двумя последними позициями аватара).

Цитата Ghost_in_the_shell ()
в каком виде отправлять не понимаю

хоть свой формат изобрети "число", "число", "строка" = 1 пакет, где первое число = код пакета (для обозначения его назначения например), второе - ИД клиента, третий стринг - строковое описание какого нибудь сложного типа - вектора, кватерниона и тп и тд. Перед отправкой формируется строковое представление нужных данных (сам решаешь как структурировать описание) и потом отправляешь переведя весь пакет в байты. Нужно стремиться сделать пакет как можно короче, а формат решаешь сам. На стороне сервера можно не парсить, а передавать как есть всем остальным клиентам, или можно парсить и формировать другой пакет и тп.

Цитата wernher ()
Я, например, использую обычный текст в кодировке utf с символом | в качестве разделителя. Парсер получается элементарный и быстро все работает.

Да, обычная практика. только нужно учитывать что UTF немного по разному обрабатывается в шарпе и Qt например. Учесть это при разработке и все будет ок.


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Среда, 30 Декабря 2015, 22:46 | Сообщение # 25 | Тема: Саморазвивающийся мир (не название)
почти ветеран
Сейчас нет на сайте
smile Вечные типажи, бессмертные вездесущие клоны способов поведения на форуме:
- полуидея-сказитель -- романтик, широко открытые глаза и нарочитое самобичивание - мол, "во идея!! хотя скорее всего бред!" :)
- самолюбователь -- развесит, разложит кучу постов, присыпет в постах ссылки в никуда или в ниочем , с доводами о нем несогласен, стоит на своем, при любом удобном случае - провозгласит всех противников "шушерой" и гордо вскинув продолжит свой флуд.
- конкретик прогматик -- легко и далеко видящий технические возможности, но быстро закапывающийся в деталях.. дай ему прокачаться и будет мастер, вот только чаще всего не достигает уровня Тони Старка..
- лирический сказитель -- выражает всегда один набор опасений - если речь про ИИ - то "а потом он разовьется и всех человеков поубивает!", если речь про женщин то "а она была так прекрасна, пока не вылезли клыки и она не оказалась безжалостным вампиром" и тп и тд..

Эти типажи бы в "саморазвивающийся мир" воплотить - и можно было бы оставить так - все равно не отличишь! smile Хмм... а вдруг мы уже в этой игре, и по ходу кто то уже воплотил эти типажи.. вечно постящиеся оставляя все и так.. без результата. biggrin


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Среда, 30 Декабря 2015, 22:47
KamiRoninДата: Пятница, 18 Декабря 2015, 18:08 | Сообщение # 26 | Тема: Создание игрового ИИ в игровой игре от комунити
почти ветеран
Сейчас нет на сайте
Цитата JackNazaryan ()
ИИ сделать на основе причинно-следственных связей. На основе последствий выбирает действие, при чем рекурсивно смотрит, к чему это приведёт.

Если опустить пресловутую глубоко обучаемую нейронную сеть, то по алгоритму для реализации данной формы ИИ потребуется анализ ситуации, выявление контекстов, построение контекстнозависимых связей, выявление приоритетных сигналов, адаптивная технология, технология запоминания причинно-следственных цепочек и еще где то около 20 механик минимум! )
Если свести все к синтетическому миру и некоторым условным правилам и активаторам событий/информации в рамках этого мира - то даже такая модель потребует создать мутабельный код, который будет содержать все ту же нейронную сеть или ее заменитель.
Т.ч. нужно пробовать! Иногда добивается успеха тот кто не знал, что это очень сложно! smile


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Пятница, 18 Декабря 2015, 11:31 | Сообщение # 27 | Тема: Создание игрового ИИ в игровой игре от комунити
почти ветеран
Сейчас нет на сайте
Цитата Ordan ()
Характер, статы, умения и еще кое какие плюшки.

то ли ты конструируешь саму модель перса - его характер, статы, умения и еще кое какие..
то ли радактор для всего этого..
то ли все вместе!
но удачи!!
если понадобится какая помощь - дай знать! )


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Пятница, 18 Декабря 2015, 11:04 | Сообщение # 28 | Тема: Создание игрового ИИ в игровой игре от комунити
почти ветеран
Сейчас нет на сайте
Цитата Ordan ()
нечто связанное с ИИ)

Цитата Ordan ()
Где будет возможность, всем желающим создать персонажа

редактор параметров характера типа?


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Четверг, 17 Декабря 2015, 11:52 | Сообщение # 29 | Тема: Какой плохой Unity5
почти ветеран
Сейчас нет на сайте
в 5.1 и 5.2... - были превью WebGL
в 5.3 - релиз!
билдится дольше конечно чем во многих специально заточенных под HTML5 конструкторах и движках, но достаточно быстро!! и теперь весит не много (если не ставить девелопер буилд!)!!
так что странно ты сделал конечно - не попробовал релиз, а тему выкатил!


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Четверг, 17 Декабря 2015, 11:18 | Сообщение # 30 | Тема: Какой плохой Unity5
почти ветеран
Сейчас нет на сайте
Цитата andarky ()
а Win8 - мне кажется это можно отнести к сортам уродства типа Millenium или Vista

единственное с чем согласен из всей темы! :)
Win7 x64 рулит по любому! )
Цитата andarky ()
то что выводит сейчас унити на HTML5 - это просто ужас.

вот что это заа... ммм.. непонятная х.. ммм.. высказывание!?
чем именно - "ужас"?! WebGL в 5.3 полностью рабочий!!

Цитата andarky ()
Это не идёт на XP. Согласен что про это уже не говорят, но всё достаточно много народу на ней сидит.

HTML5 для WindowsXP и еще мегакуча ссылок об этом в сети..


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Вторник, 15 Декабря 2015, 22:54 | Сообщение # 31 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
Цитата JOKFEN ()
В теории unity и QT должны тупо на выходе преобразовывать эти пакеты на противоположный и всё будет норм.

не, не "должны". автоматом не станет работать, только своим кодом преобразовывать.
например, Qt строку из потока сокета считывает в порядке: размер (UInt32), и цепочка символов (каждый UInt16 или ushort).
шарп автоматом формирует пакет немного иначе - размер Int32, символы (char или short) причем в BigEndian;
поэтому и нужно привести к Qt виду перед отправкой - для чего пишется небольшая функция (или делать это на сервере при получении).

в той статье которую ты нашел - как рза и показаны функции такого преобразования.

в общем - для связи Qt и шарпа эта тема и есть самая муторная - ее один раз нужно пройти, написать свой набор служебных функций и дальше уже все делать через них.
на самом деле там их всего около 4-5 и они все небольшие.
вот тут про порядок следования байт было.. здесь пример реализации.. и тп
поиск по словам "порядок байт TCP" - я когда разбирался просто сделал простейшие клиента и сервера - отправлял данные и смотрел порядок байт через отладчик и в шарпе и в Qt. очень быстро стало ясно кто как формирует пакеты в своих классах.

сразу скажу - все упирается в выбранный формат обмена - т.е. тебе нужно определиться с логикой, пакетов чтобы и на сервере и на клиенте иметь ожидаемые части.
передаем Vector3, Quaternion, int, float, string + каждый пакет может быть разного значения. тут каждый выбирает сам как организовать работу с этим "форматом" - кто то унифицирует пакеты (строгая одинаковая структура) - но это может привести к излишкам передаваемой информации; кто-то считает что нужно все свести к минимуму трафика любой ценой (почти всегда хорошо). большинство готовых решений просто серилизуют пакет информации во что то свое (передается в любом случае последовательность байт - но вот структура этой последовательности как раз и важна), передают, а на другом конце, после десериализации уже выстраивается линия поведения с полученными данными исходя из их содержания.


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Вторник, 15 Декабря 2015, 23:10
KamiRoninДата: Вторник, 15 Декабря 2015, 18:36 | Сообщение # 32 | Тема: [2D]General Frost[Gamiron 11]
почти ветеран
Сейчас нет на сайте
Цитата Alfe ()
а как же кратенькое описание для меня?

Предлагаем варианты, не стесняемся!!
Мой: "Ад разверзся с подачи яйцеголовых! В ужасе разбежались герои! Тебе предстоит провести бомжа Михалыча через адское пламя к припотевшей поллитре! Отморозь демонам все!! Напои Михалыча! Спаси мир!!" smile


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Вторник, 15 Декабря 2015, 08:42 | Сообщение # 33 | Тема: Unity как сделать цепь???
почти ветеран
Сейчас нет на сайте
Цитата Stiv ()
вроде делаю дочерним и в итоге просто кандалы эти весят в том же положении (рук) когда перс стоял в Т - позе.

тут как раз вопрос - как делаешь дочерними!? например при риге и скининге боевого персонажа создается специальная крепежная пустышка привязанная к костям и таким образом поворачивающаяся и двигающаяся вместе с руками - в нее "вкладывают" рукоять оружия при построении игры. эта пустышка жестко слинкована с костью, поэтому если ее нет - то может и можно выбрать саму кость запястья как объект привязки, но у нее и поворот и форма движения может отличаться от того, что тебе нужно...


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Вторник, 15 Декабря 2015, 08:44
KamiRoninДата: Понедельник, 14 Декабря 2015, 21:09 | Сообщение # 34 | Тема: Unity как сделать цепь???
почти ветеран
Сейчас нет на сайте
вот такое есть (платное)
самому сделать можно несколькими способами - основной с помощью Joint'ов (Configurable). тут 2D аналог - виден принцип!
и есть возможность сделать костями.


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Воскресенье, 13 Декабря 2015, 08:19 | Сообщение # 35 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
Цитата KamiRonin ()
для себя считаю полемику исчерпанной

уже было..


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Суббота, 12 Декабря 2015, 19:33 | Сообщение # 36 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
Ну обожай пассажи.. хто ж тебе мешает!! Тесты же нужны для того чтобы.. чтобы.. ни для чего по твоему видать! smile Дураки тесты придумали, и создали гребанную тучу инфраструктуры, чтобы их создавать! ) аха.. но даже это фигня - потому что я просто создал нагрузочное приложение - которое плодит подключения и коннектясь к серваку проводит прокачку ему игровых данных - обращения к базе скуля, посылки типовых пакетов без перерыва.. мне показал проект 5000 я сказал - стоп, если посещаемость будет по стату выше 1000 в час - буду решать о расширении аппаратной части и напишу микромодуль перенаправления коннекта... и не стал угорело рвать на себе волосы - мол, аааа а вдруг предут 10000 в секунду а у меня тут не прибрано!! smile :) пипец логика млин!! )) до такого уровня посещений в котором стоит вообще дергаться, не то, что с горящей задницей бегать млин -- не один год может пройти!
Цитата Vinchensoo ()
У вас игрок в консоли сервера играет или запросы ваершарком шлет

нет, обычный шарп клиент с отправкой координат позиции тела + экшн пакетов разного рода + чат. все равно интерполяции координат делаются на клиенте при получении изменения позиций аватаров у него..
Цитата Vinchensoo ()
К слову, я лично написал свой небольшой сетевой фреймворк на nodeJS,

ёёксель моксель - аж фреймворк млина! smile ну видать там и кластеризация и роуминг и интерполяция - все при нем!! :D
Цитата Vinchensoo ()
Ну и класс.

еще бы тебе не класс - сказал без доводов свое "веское" и видно пошел фреймворк допиливать!! biggrin а потом вернулся и еще "имхошек" накидал... самое то - когда аппанет видя, что тут все глухо - машет рукой - тебе раздолье сразу!! а то!! smile доводов от тебя кроме "это было 2 года назад" - мы так и не увидели! ) досужее все.. поэтому на твоих "позязя" я и хотел закончить "обсуждать сферический вакуум"! smile Но нееет, ты ж так просто не предашь свое имхо!? wink biggrin


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Суббота, 12 Декабря 2015, 19:35
KamiRoninДата: Суббота, 12 Декабря 2015, 18:42 | Сообщение # 37 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
сервер на node.js я выписывал по шарповской отладке, поэтому запустил, погонял, показалось неудобно и перевел на Qt весь функционал, чтобы максимизировать эффективность под линухом.. написал и оставил - сервак выполняет все нужные функции без каких либо заморочек с мороком по поводу разделения нагрузки и тп.. нет такой необходимости - на тестах он показал 5000 подключений вообще без напрягов - на ближайшее время хватит за глаза.. а кому нужно тот пусть и долбит кластеризации и прочие игровые комнаты (ничего в них сложного нет!!! как и в роутингах с кэшами!)

Цитата Vinchensoo ()
Ну позязя

ууу, нуу все.. позязя начались.. :-/
ок.. )) для себя считаю полемику исчерпанной, как вопрос интерполяции координат НА СЕРВАКЕ.. пфф.. )


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
KamiRoninДата: Суббота, 12 Декабря 2015, 11:53 | Сообщение # 38 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
Цитата seaman ()
Проблема в Вашей категоричности.
Ну не правы Вы...

:) ну ладно.. хорошо.. а как все читающие должны понять что я не прав?!
доводы видать на почте крадут!! ) до форума только заявления доходят! smile и у Vinchensoo и у seaman...
я в каждом посте кинул ссылку и не одну - как это реализовывают за короткое время без крупных усилий.. эти ссылки - мои доводы (помимо собственного опыта).

хотя ладно.. кто читает - пусть сам посмотрит что ему подойдет! ) мой главный посыл - НЕ НУЖНО БОЯТЬСЯ ПИСАТЬ сервера самостоятельно, ничего особо сложного там нет! (если идти по шагам, по этапам)!!
а ваш!?? "пользуйтесь только чужими готовыми решениями и подстраивайтесь под них!! это ваша судьба!" ???! ))


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Суббота, 12 Декабря 2015, 11:54
KamiRoninДата: Пятница, 11 Декабря 2015, 22:36 | Сообщение # 39 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
Цитата Vinchensoo ()
Путь написания своих кривых велосипедов на nodeJS - это путь человека, у которого много терпения, свободного времени и мало конкретно поставленных задач.

Да там особо и выкривить некуда - как поймешь базовый принцип деваться с этой подводной лодки уже особо пространства нету.. А когда есть конкретные задачи - то легче всего как раз свое и пишется! А вот если нету таких задач и целей - сидишь перебираешь чужие фреймворки с их примерами, в надежде - может осенит! )
Время затраченное на свой сервер зависит только от организованности и понимания принципов - нэтворка и программирования.. Было бы там что-то прям из "высшей математики" то понятно - а так прям сидят люди и "ооо, это наверное очень сложно!! много времени убьет!!" и тп.
А алгоритм игрового многопоточного сервера в одном предложении умещается (tcp) "получи строго сформулированный пакет, определи его сигнатуру (что он собой представляет - команду, данные, сообщение), проверь разрешения, транслируй это другим подключенным клиентам / выполни команду (если пришла команда) / запиши данные (если пришли данные)". Где тут тяжко трудно сложно невозможно нереально экстремально и тп??!?!
Нужны комнаты? Еще одна структура и один шаг в поведении сервера. Что еще???? Логи, емейл оповещения, самозащита, автозапуск?!?! Ни одной сложной задачи если не делать коммерческий продукт на выдачу миллионам разномастных пользователей! Для себя же пишешь - знаешь что, откуда и куда..
Я написал в постах что от 15 мин до 2 дней.. Что за пафосная категоричность в
Цитата Vinchensoo ()
не имеет никакого отношения к реальному игровому серверу, с архитектурой и логикой.

Пишется, имеет, практикуется и доводится ровно настолько насколько нужно!.. А если требуется универсальное решение - так и фотоны с лисами не с одного раза были написаны! Где проблема то!?? :-/


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.


Сообщение отредактировал KamiRonin - Пятница, 11 Декабря 2015, 22:37
KamiRoninДата: Пятница, 11 Декабря 2015, 12:02 | Сообщение # 40 | Тема: Какой сервер?
почти ветеран
Сейчас нет на сайте
Цитата JOKFEN ()
Может даже в открытом доступе существуют наработки по данной теме, хотя бы просто коннект

нужно искать по связке "клиент C# к Qt сервер" - вот например, а тут парные экземплы и того и другого.


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Форум игроделов » Записи участника » KamiRonin [1057]
Поиск:

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