![]() |
|
Модераторы: gambit |
![]()
|
|
| Kero |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 173 Регистрация: 10.5.2006 Где: Винница,Украина | | Реал Репутация: нет Всего: 1 |
Привет!
Хочу поиграться в сервер онлайн игры. Задумка такая: есть АСП.НЕТ сервис который логинит юзеров и принимает от них запросы. Необходимо создать статический поток, который работает либо всегда, либо будиться с некоторой периодичностью чтобы обработать состояние мира исходя из запросов пользователей. Например взорвать фабрику в 18.00. Есть ли соображения по поводу универсального таскера, либо статически "вечного" потока? |
|||
|
||||
| Vasay |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: нет Всего: 73 |
Kero,
ИМХО: Если игра "реал тайм" - то эта задача не для asp.net, так как нужно поддерживать постоянное соединение, а asp.net для этого не предназначен. Если игра пошаговая - то никаких "вечных потоков" не надо - обработчиков событий будет достаточно (например пользователь делает ход - посылается запрос на сервер, на сервере происходит обработка хода, осуществляется проверка - все ли игроки сходили, если все - запускается обработчик конца хода. Если по сюжету настало время для взрыва фабрики - она взрывается). Это сообщение отредактировал(а) Vasay - 21.2.2010, 18:25 -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
| Kero |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 173 Регистрация: 10.5.2006 Где: Винница,Украина | | Реал Репутация: нет Всего: 1 |
Vasay, скажи а какие .НЕТ технологии наиболее подойдут для реалтайм игры? Желательно чтобы была поддержка WCF так как хочу сделать уровень презентации на сильверлайте.
|
|||
|
||||
| Vasay |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: нет Всего: 73 |
Kero,
В случае разработки реал тайм игры тебе нужно разрабатывать 2 независимые части: клиентскую и серверную. При этом, технологии для создания клиента и сервера могут быть абсолютно разными - можно использовать сильверлайт на клиенте, а на стороне сервера могут быть .NET, JavaSE, нативное приложение. Требования у технологии для сервера - работа с многопоточностью и сокетами. Добавлено через 11 минут и 22 секунды Кстати, есть неофициальный сервер для lineage 2 написанный на Java можешь скачать ( http://www.l2jserver.com/ ) посмотреть как он реализован (если знаешь C#, думаю, не будет проблем в понимании кода). -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
| Kero |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 173 Регистрация: 10.5.2006 Где: Винница,Украина | | Реал Репутация: нет Всего: 1 |
Внимательно перечитал ваши ответы. Лаконично и обьективно=) Прояснили мою мутную голову)))
Я себя питал иллюзиями что уже есть технологии для поддержания открытых соединений и их взаимодействий с неким "мастер" потоком, и всё это может гдето хоститься. Оказываеться просто пишеться приложение которое обслуживает и поддерживает соединения. |
|||
|
||||
| Vasay |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: нет Всего: 73 |
Kero,
Вполне возможно существуют какие-то фрэймворки, облегчающие создание сетевых реалтайм игр. Погуглите в этом направлении - точно что-нибудь найдете. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
| Любитель |
|
|||
|
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 5 Всего: 92 |
Ну, если коммуникации предполагается делать через WCF, то разумнее всего просто хостить WCF сервис внутри вин-сервиса или же консольного приложения. В нём же параллельно будет крутиться поток, меняющий игровой мир. WCF-ный сервис также будет общаться с этим потоком. Т. е. с точки зрения взаимодействия все не сложно.. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка под ASP.NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |