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

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Ответить
Happy
Сообщения: 20
Зарегистрирован: 19 ноя 2011, 23:14

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

Сообщение Happy »

У меня есть небольшой опыт создания Flash-приложений ВКонтакте. Хочу создать многопользовательское приложение, есть несколько вопросов.
Есть такое приложение "крокодил". Хочу создать что-то похожее. Объясните мне, как там происходят следующие процессы: подбор игроков, взаимодействие с базой данных.
Я понимаю, что для этого приложения нужен сервер. у меня он есть.
Заранее большое спасибо.
a1exei
МУЛЬТИАККАУНТ!
Сообщения: 20
Зарегистрирован: 27 фев 2010, 23:21

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

Сообщение a1exei »

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

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

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

Сообщение bodnar »

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

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


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


как то так)
a1exei
МУЛЬТИАККАУНТ!
Сообщения: 20
Зарегистрирован: 27 фев 2010, 23:21

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

Сообщение a1exei »

Java я думаю еще рано в этом случаи.
Happy
Сообщения: 20
Зарегистрирован: 19 ноя 2011, 23:14

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

Сообщение Happy »

Спасибо a1exei. А еще меня интересует вопрос как выбирается id комнаты?
Ответить