Какой сервер?
| |
JOKFEN | Дата: Среда, 09 Декабря 2015, 20:14 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Доброе время суток. В общем есть проект, по замыслу игроки вступают в комнату и играют, принцип виден в таких играх как world of tanks, panzar. То есть игрок нажимает на кнопку, сервер набирает игроков в комнату ну и пошло поехало... Так вот в чём собственно и вопрос: "Какой сервер выбрать для реализации на юнити"?.
Photon - мощная штука, но мол читеров... Smartfox - мол платный и есть баги с синхронизацией. player.io или gamesnet.yahoo.net - вообще не понял, что за зверь... Unity server - по отзывам прогать замучаешься... API и прочее прочее...
Хотел бы услышать адекватный ответ, в данный момент реализованы "сами битвы". Теперь упирается всё в сервер, то есть в механизм подбора игроков в комнаты, ведение статистики, выдача бонусов за победы(поражения)...
|
|
| |
King | Дата: Среда, 09 Декабря 2015, 22:41 | Сообщение # 2 |
участник
Сейчас нет на сайте
| JOKFEN, с твоего позволения хотел бы присоседиться к твоему вопросу, дабы не плодить темы. Хотелось бы узнать у народа, какой по их мнению сервер лучше всего подошел бы под нужды игры по типу WoW, LA2 etc. Парни, если у кого есть мнение на этот счет, поделитесь. Спасибо.
Nothing is true, everything is permitted. Shadows Games
|
|
| |
YellowAfterlife | Дата: Четверг, 10 Декабря 2015, 00:35 | Сообщение # 3 |
Сейчас нет на сайте
| Недавно добавленные встроенные функции для сетевой синхронизации довольно похожи на Photon. Оба рассчитаны на разбиваемые на комнаты игры. Для всяких ММОРПГ скорее всего придется делать что-то более специфичное (для передачи координат объектов лишь в зоне видимости и прочего). От читерства никакая серверная архитектура сама по себе не спасет - если можно отправлять данные, то можно эти отправляемые данные и подделать.
|
|
| |
JOKFEN | Дата: Четверг, 10 Декабря 2015, 20:20 | Сообщение # 4 |
был не раз
Сейчас нет на сайте
| Цитата YellowAfterlife ( ) Недавно добавленные встроенные функции для сетевой синхронизации довольно похожи на Photon. Оба рассчитаны на разбиваемые на комнаты игры. Для всяких ММОРПГ скорее всего придется делать что-то более специфичное (для передачи координат объектов лишь в зоне видимости и прочего). От читерства никакая серверная архитектура сама по себе не спасет - если можно отправлять данные, то можно эти отправляемые данные и подделать.
А другие сервера?Добавлено (10 декабря 2015, 20:20) --------------------------------------------- В общем после долгих мучений мой взор упал на gamesnet.yahoo.net во первых, сервис бесплатен если игроков меньше 5000, если больше то нужно будет платить % от дохода, все нагрузки ложатся на плечи сервиса. Лёгкий API. По моему идеальный вариант для начальных разработчиков, а после можно и своё что-то пилить)
Сообщение отредактировал JOKFEN - Четверг, 10 Декабря 2015, 08:55 |
|
| |
KamiRonin | Дата: Четверг, 10 Декабря 2015, 22:27 | Сообщение # 5 |
почти ветеран
Сейчас нет на сайте
| на портале уже давно проходят темы с этим вопросом! пользуемся поиском и читаем посты с 12 года по сей день. вкратце нововведения Unity Network с каждым релизом становятся все лучше и лучше. на Портале обсуждались и фотон (наиболее часто), и smartfox (второе место), и player.io (наиболее редко).
Цитата JOKFEN ( ) а после можно и своё что-то пилить) это лучший вариант, имхо ) тем более, что в шарпе возможностей на эту тему море..
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
|
|
| |
allods | Дата: Пятница, 11 Декабря 2015, 04:50 | Сообщение # 6 |
почти ветеран
Сейчас нет на сайте
| Как по мне встроеный в Unity 5 network очень даже норм
|
|
| |
xMoonGuarDx | Дата: Пятница, 11 Декабря 2015, 05:52 | Сообщение # 7 |
участник
Сейчас нет на сайте
| Цитата KamiRonin ( ) это лучший вариант, имхо ) тем более, что в шарпе возможностей на эту тему море.. нет смысла писать свой велосипед, когда есть готовые нормальные решение, удовлетворяющие ТСа. Не стоит забывать, что разработка сервера дело не быстрое и не легкое, требует времени, а значит и средств. Так же его поддержание будет занимать время. Конечно, если вы просто учитесь, то возможно или если был проведен анализ, входе которого было выявлено, что экономически свой сервер написать и поддерживать будет выгоднее, чем использовать чужие варианты.
|
|
| |
KamiRonin | Дата: Пятница, 11 Декабря 2015, 07:35 | Сообщение # 8 |
почти ветеран
Сейчас нет на сайте
| Цитата xMoonGuarDx ( ) нет смысла писать свой велосипед, когда есть готовые нормальные решение, :) если бы не было смысла - то во всем мире пользовались бы одним - который уже был бы к любому моменту. Почему то их больше чем один и будет еще больше.Не стоит забывать что разработка сервера дело от 15 минут (node.js например держит до миллиона одновременных подключений и пишется на черновую за 15 минут) до 2х дней до альфа-запуска. Те разработчики, кто в наше время почти полной вседоступности информации и огромного количество опенсурса все еще пугается сервера писать - просто РЕАЛЬНО НЕ В КУРСЕ дел и только зря пугают всех таких же новичков как они сами, до которых могут дотянуться -- с помощью своей неосведомленности!!! На Qt сервер/клиент по уроку пишется за 2 часа включая установку Qt! :) На С# сервер/клиент по уроку пишется за 15 мин и около еще 2х часов на адаптацию под игровые нужды.
Просто нужно знать средненько программирование и будет все в шоколаде! ) А берешь эти фотоны с лисами и только выучил их логику построения, написал-подстроился под их АПИ (ууфффф) - они обновление выпустили, и все - сиди переписывай! ) Ну или пользуйся старой версией.. если их службы это поддерживают!! )
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
|
|
| |
seaman | Дата: Пятница, 11 Декабря 2015, 07:51 | Сообщение # 9 |
старожил
Сейчас нет на сайте
| Цитата пишется на черновую за 15 минут Ну да. Но перед этим js нужно полгода учить. Плюс АПИ Node.js какое то время.
Цитата На С# сервер/клиент по уроку пишется за 15 мин А потом год-другой оптимизируешь...
|
|
| |
JOKFEN | Дата: Пятница, 11 Декабря 2015, 07:55 | Сообщение # 10 |
был не раз
Сейчас нет на сайте
| Цитата KamiRonin ( ) На Qt сервер/клиент по уроку пишется за 2 часа включая установку Qt! :)
А вот с этого момента можно поподробнее? Я не плохо знаю C++, с QT знаком.
|
|
| |
KamiRonin | Дата: Пятница, 11 Декабря 2015, 08:12 | Сообщение # 11 |
почти ветеран
Сейчас нет на сайте
| Цитата seaman ( ) Но перед этим js нужно полгода учить об этом уже написал:
Цитата KamiRonin ( ) Просто нужно знать средненько программирование
Цитата seaman ( ) Плюс АПИ Node.js какое то время. ага, а АПИ фотона/лиса прям учить не надо!??? )) юнити-нетворк прям сам все за нас напишет - прям никакого апи!! :D
Цитата JOKFEN ( ) А вот с этого момента можно поподробнее? Я не плохо знаю C++, с QT знаком. я там ссылку дал.. плюс полный инэт примеров...
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Пятница, 11 Декабря 2015, 08:13 |
|
| |
JOKFEN | Дата: Пятница, 11 Декабря 2015, 08:45 | Сообщение # 12 |
был не раз
Сейчас нет на сайте
| Цитата KamiRonin ( ) я там ссылку дал.. плюс полный инэт примеров...
Клиент сервер я реализовал на QT, но вот с Unity проблема, не понимают они друг друга.
|
|
| |
KamiRonin | Дата: Пятница, 11 Декабря 2015, 09:42 | Сообщение # 13 |
почти ветеран
Сейчас нет на сайте
| Цитата JOKFEN ( ) Клиент сервер я реализовал на QT ) хм.. может только сервер? )
Цитата JOKFEN ( ) но вот с Unity проблема, не понимают они друг друга. нуууу это уже детали!! :) (просто у них порядок байт при передаче пакета разные! на стороне сервера нужно написать пару функций конвертирования и забыть об этом.. Qt использует BigEndian по умолчанию, а шарп - LittleEndian) ссыль 1, ссыль 2, ссыль 3 (таких много)
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Пятница, 11 Декабря 2015, 09:44 |
|
| |
JOKFEN | Дата: Пятница, 11 Декабря 2015, 10:40 | Сообщение # 14 |
был не раз
Сейчас нет на сайте
| Цитата KamiRonin ( ) нуууу это уже детали!! :) (просто у них порядок байт при передаче пакета разные! на стороне сервера нужно написать пару функций конвертирования и забыть об этом.. Qt использует BigEndian по умолчанию, а шарп - LittleEndian) ссыль 1, ссыль 2, ссыль 3 (таких много)
Не, я делал на QT Клиент-Сервер-Клиент. (Игра два питона, ещё в студенческие годы). На последнем курсе делал игру "Маги". Но там уже сервер сам создавал "мини комнаты" и подключал 2 игроков. QList тема... А вот с unity тема не работала. Сделал обычный серв на сокетах и пробовал тупо приконектится, нехера не получалось. Спасибо за ссылочки, почитаю. А вообще не знаете где про эту тему почитать "QT server for unity3d"? Гугл не очень помогает Может даже в открытом доступе существуют наработки по данной теме, хотя бы просто коннект
Сообщение отредактировал JOKFEN - Пятница, 11 Декабря 2015, 10:46 |
|
| |
KamiRonin | Дата: Пятница, 11 Декабря 2015, 12:02 | Сообщение # 15 |
почти ветеран
Сейчас нет на сайте
| Цитата JOKFEN ( ) Может даже в открытом доступе существуют наработки по данной теме, хотя бы просто коннект нужно искать по связке "клиент C# к Qt сервер" - вот например, а тут парные экземплы и того и другого.
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
|
|
| |
JOKFEN | Дата: Пятница, 11 Декабря 2015, 12:53 | Сообщение # 16 |
был не раз
Сейчас нет на сайте
| Цитата KamiRonin ( ) нужно искать по связке "клиент C# к Qt сервер" - вот например, а тут парные экземплы и того и другого.
спасибо большое)
|
|
| |
Vinchensoo | Дата: Пятница, 11 Декабря 2015, 20:41 | Сообщение # 17 |
Злобный социопат с комплексом Бога
Сейчас нет на сайте
| KamiRonin, ты не прав. Путь написания своих кривых велосипедов на nodeJS - это путь человека, у которого много терпения, свободного времени и мало конкретно поставленных задач.
То, что пишется на ноде за 15 минут не имеет никакого отношения к реальному игровому серверу, с архитектурой и логикой.
|
|
| |
KamiRonin | Дата: Пятница, 11 Декабря 2015, 22:36 | Сообщение # 18 |
почти ветеран
Сейчас нет на сайте
| Цитата Vinchensoo ( ) Путь написания своих кривых велосипедов на nodeJS - это путь человека, у которого много терпения, свободного времени и мало конкретно поставленных задач. Да там особо и выкривить некуда - как поймешь базовый принцип деваться с этой подводной лодки уже особо пространства нету.. А когда есть конкретные задачи - то легче всего как раз свое и пишется! А вот если нету таких задач и целей - сидишь перебираешь чужие фреймворки с их примерами, в надежде - может осенит! ) Время затраченное на свой сервер зависит только от организованности и понимания принципов - нэтворка и программирования.. Было бы там что-то прям из "высшей математики" то понятно - а так прям сидят люди и "ооо, это наверное очень сложно!! много времени убьет!!" и тп. А алгоритм игрового многопоточного сервера в одном предложении умещается (tcp) "получи строго сформулированный пакет, определи его сигнатуру (что он собой представляет - команду, данные, сообщение), проверь разрешения, транслируй это другим подключенным клиентам / выполни команду (если пришла команда) / запиши данные (если пришли данные)". Где тут тяжко трудно сложно невозможно нереально экстремально и тп??!?! Нужны комнаты? Еще одна структура и один шаг в поведении сервера. Что еще???? Логи, емейл оповещения, самозащита, автозапуск?!?! Ни одной сложной задачи если не делать коммерческий продукт на выдачу миллионам разномастных пользователей! Для себя же пишешь - знаешь что, откуда и куда.. Я написал в постах что от 15 мин до 2 дней.. Что за пафосная категоричность в Цитата Vinchensoo ( ) не имеет никакого отношения к реальному игровому серверу, с архитектурой и логикой. Пишется, имеет, практикуется и доводится ровно настолько насколько нужно!.. А если требуется универсальное решение - так и фотоны с лисами не с одного раза были написаны! Где проблема то!?? :-/
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Пятница, 11 Декабря 2015, 22:37 |
|
| |
seaman | Дата: Суббота, 12 Декабря 2015, 11:19 | Сообщение # 19 |
старожил
Сейчас нет на сайте
| Проблема в Вашей категоричности. Ну не правы Вы...
|
|
| |
KamiRonin | Дата: Суббота, 12 Декабря 2015, 11:53 | Сообщение # 20 |
почти ветеран
Сейчас нет на сайте
| Цитата seaman ( ) Проблема в Вашей категоричности. Ну не правы Вы... :) ну ладно.. хорошо.. а как все читающие должны понять что я не прав?! доводы видать на почте крадут!! ) до форума только заявления доходят! и у Vinchensoo и у seaman... я в каждом посте кинул ссылку и не одну - как это реализовывают за короткое время без крупных усилий.. эти ссылки - мои доводы (помимо собственного опыта).
хотя ладно.. кто читает - пусть сам посмотрит что ему подойдет! ) мой главный посыл - НЕ НУЖНО БОЯТЬСЯ ПИСАТЬ сервера самостоятельно, ничего особо сложного там нет! (если идти по шагам, по этапам)!! а ваш!?? "пользуйтесь только чужими готовыми решениями и подстраивайтесь под них!! это ваша судьба!" ???! ))
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Суббота, 12 Декабря 2015, 11:54 |
|
| |
|