Теория написания игрового он-лайн процесса

Руслан

Новичок
Теория написания игрового он-лайн процесса

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

Почему собственно возникла необходиомсть рассмотрения этой темы у меня? А всё потому, что спокойно не живётся мне и решил я в свободное от коммерческих трудов время написать какую нибудь игру для обретения душевного баланса и прочей нирваны =)).
Вобщем решил начать с простенького - карты, шахматы, шашки. На Action Script 3 написал игруху (играю с компьютером) и подумал, что было бы неплохо выложить в сеть и реализовать возможность играть с друзьями и знакомыми. И вот на этом этапе понял, что до конца не осознаю как это вобщем-то должно происходить и какие подводные камни меня на этом течении ожидают. Посему создал эту тему. Приветствую любые рассуждения на данную тему, как старые проверенные, так и инновационые, но интересные.



*********
С чего следует начать?
Опустим регистрацию, с ней вроде как всё понятно.. перейдем далее.
Я так полагаю, что начать нужно с построения так называемой панели, в которой отражается список потенциальных соперников с возможностью приглашения их в игру? То есть предположим человек заходит на сайт, вводит логин-пароль, авторизуется и видит список игроков? Откуда берется список?

Своим неопытным в этом вопросе взглядом я вижу такой подход - существует таблица, в которую записываются все вошедшие и удаляются все по какой либо причине вышедшие (добровольно, закрытие окна браузера, дисконект и т.д). При совершении авторизации пользователя - его данные записываются в таблицу присутствующих, а ему высылается массив с данными всех присутствующих пользователей кроме него. Этот массив обрабатывается Action Script'ом и выводится как список возможных оппонентов.

Кто что думает по такому подходу? Какие детали? Какие альтернативы? Реален ли такой подход?

P.S. Не судите если всё размыто - как раз пытаюсь навести резкость в этом вопросе.
 

dimagolov

Новичок
Как по мне, так это вопрос не о теории программирования, а о базовых принципах построения веб-приложения.

Сразу вопрос на засыпку: как собираешься определять "закрытие окна браузера, дисконект" хотя бы?
 

Руслан

Новичок
dimagolov
Первое что приходит в голову - это посылать ASом какой нибудь флаг каждые предположим 10 секунд и соответственно проверять не обновился ли список - те пользователи флаг, которых в базе просрочен предположим на 15 секунд удаляются.. Возможно вычурное решение - можно обсудить минусы.

-~{}~ 05.05.08 06:21:

Тему скинули в оффтопик, который никто не просматривает. Замечательно. А где тогда обсудить подход к реализации игрвого процесса, админы? В оффтопике точно никто не будет об этом писать. Да и тема не оффтоп - всё же это не болтовня на отвлченные темы, а обсуждение алгоритма построения игрового процесса. Как всегда всё усложнили.
 

zerkms

TDD infected
Команда форума
Руслан
не важно где тема, да хоть в корзине... если в "новых" она есть, то её будут читать и обсуждать
а своим последним постом ты как раз и сводишь её в разряд оффтопных
 

Руслан

Новичок
Спасибо, zerkms, что пояснил.

Итак что вы думаете как можно реализовать процесс отслеживания человека на сайте, что бы его имя или логин отображались в списке активных? Есть ли какие нибудь стандартные методы и что думаете по тому варианту, который я предложил и который собираюсь начать писать. Кстати думаю что было бы интересно - я буду параллельно писать и показывать что получается.
 

zerkms

TDD infected
Команда форума
С той точностью, которая нужна тебе - у тебя вполне нормальное решение. Шли с клиента постоянно сигналы и на сервере их принимай... что тут обсуждать-то...
 

prog90

Новичок
У меня в чате используется таблица users_online. Структура таблицы - id, login, nick. А список пользователей онлайн высылается как xml-документ на регулярный опрос ajax, а на стороне пользователя, с помощью jquery, я разбираю этот документ и каждую секунду обновляю список посетителей в колонке в div.
 
Сверху