Страница 1 из 1

Создание многопользовательского приложения

Добавлено: 23 ноя 2011, 13:49
Happy
У меня есть небольшой опыт создания Flash-приложений ВКонтакте. Хочу создать многопользовательское приложение, есть несколько вопросов.
Есть такое приложение "крокодил". Хочу создать что-то похожее. Объясните мне, как там происходят следующие процессы: подбор игроков, взаимодействие с базой данных.
Я понимаю, что для этого приложения нужен сервер. у меня он есть.
Заранее большое спасибо.

Re: Создание многопользовательского приложения

Добавлено: 23 ноя 2011, 14:59
a1exei
Стремление есть, но опыта еще не достаточно. Даже объяснив все вы вряд ли справитесь.

Но раз есть желание, можно сделать так:
На примере подбора игрока.
1) Пользователь заходит в комнату с определеным id
2) Обновление информации сервера раз в секунду. Возвращаются игроки которые в комнате с этим id.
3) Если пользователей нужное количество, то они попадают в режим рисования.
4) Если больше пользователей, то берутся псевдослучайные люди или зависящие от рейтинга и тп.
5) Если меньше, то ждем пока не станет нужное количество.
6) Если нужное количество не набралось за нужное время. То вывод, что недостаточно игроков.

Re: Создание многопользовательского приложения

Добавлено: 23 ноя 2011, 15:16
bodnar
a1exei писал(а):Обновление информации сервера раз в секунду
ой ей ей
упадет же все, бессмысленная нагрузка
тут нужно сокет-сервер писать например на java для серверной части

В таком случае выглядеть будет примерно так:
Подбор игроков
Соединяешься с сокет сервером
Игрок в приложении нажимает хочу играть
приложение отправляет сокет-серверу сообщение о том что игрок хочет играть
сокет-сервер его id заносит в очередь
если игрок не дожидается и уходит, сокет-серверу отправляется сообщение о том что пользователь больше не желает играть и его id вычеркивается из очереди


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


как то так)

Re: Создание многопользовательского приложения

Добавлено: 23 ноя 2011, 18:30
a1exei
Java я думаю еще рано в этом случаи.

Re: Создание многопользовательского приложения

Добавлено: 23 ноя 2011, 21:21
Happy
Спасибо a1exei. А еще меня интересует вопрос как выбирается id комнаты?