Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.12.2009, 11:32
Wecoyote вне форума Посмотреть профиль Отправить личное сообщение для Wecoyote Найти все сообщения от Wecoyote
  № 1  
Ответить с цитированием
Wecoyote

Регистрация: Dec 2009
Сообщений: 7
Question Прошу помощи. Клиент-серверное взаимодействие.

Общий привет. Давно читаю форум, зарегистрировался, чтобы спросить совет.

С Flash и ActionScript 2.0 работаю несколько лет, но возможности сетевого взаимодействия не использовал ни разу, кроме того, общее представление о сетях, серверах, клиентах и т.д. имею весьма поверхностное.

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

Суть приблизительно в следующем:
Игрок регистрирует аккаунт, данные сохраняются на сервере.
Далее - выбирая из предложенных деталей (двигатель | корпус | орудие) игрок собирает танк.
Далее - из блоков игрок визуально составляет алгоритм действий танка.
Далее - запускается непосредственно битва танков двух пользователей.

Проблема, которая меня тревожит в следующем:
Для того, чтобы ход и результат битвы был одинаков для обоих игроков необходимо ход боя просчитывать на сервере.
Клиентский ролик должен с частотой 25-30 раз в секунду запрашивать и получать данные о текущем расположении танков / снарядов, повреждении танков. И прорисовывать соответствующий кадр.

Как вы думаете возможно ли обеспечить плавность действий на стороне пользователя, возможно ли это, если на сервере запущено 100-200 битв, и если необходим запуск какого-то скрипта на сервере, позволит ли хостинг запустить этот скрипт?

Если что-либо из вышеперечисленного невозможно, то может это стоит попробовать реализовать не на Flash + AS, а, скажем на asp.net или silverlight? С последними двумя технологиями не знаком, но думаю освоить их смогу, т.к. есть приличный опыт программирования на c#.

Еще хочу добавить, что вопрос не в том - как реализовать все вышеописанное, а только в том - на чем все это возможно реализовать и как обустроить процесс просчета и отправки клиенту данных о расположении юнитов до 30 раз в секунду.

Если я где-то заблуждаюсь - любая критика приветствуется.
Заранее спасибо.

Старый 26.12.2009, 13:10
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Уж очень сложный вопрос вы подняли. Думаю, что при реализации вашей игры, вы сталкнетесь с кучей проблем, о которых и не предполагаете сейчас.

Танки уже реализованиы - http://tankionline.com, по крайней мере их плавное движение.

Относительно синхронизации игры для всех игроков - я над этим думал, из спортивного интереса, ссылка.

...на чем все это возможно реализовать и как обустроить процесс просчета и отправки клиенту данных о расположении юнитов до 30 раз в секунду - это возможно реализовать во флэше с клиентской стороны, относительно серверной - не знаю. Почитайте http://alternativaplatform.com/ru/.

Надеюсь, вам пожет. Было бы очень интересно посмотреть на ваши результаты.
__________________
hauts.ru

Старый 26.12.2009, 13:19
Wecoyote вне форума Посмотреть профиль Отправить личное сообщение для Wecoyote Найти все сообщения от Wecoyote
  № 3  
Ответить с цитированием
Wecoyote

Регистрация: Dec 2009
Сообщений: 7
Спасибо за ссылку на топик с синхронизацией, интересная тема.

Буквально пару минут назад получил подходящий совет:
Так как игрок не управляет танком непосредственно, а только смотрит за действиями танка, то можно просчитать ход всего боя на сервере и отправить клиенту полный лог действий танка. Это на мой взгляд очень хорошее решение.

Остается вопрос непосредственно о отправке, просчете и получении данных.
Если не трудно, опишите, как можно, скажем отправить на сервер число, серверный скрипт, скажем умножает его на 5 и возвращает значение вызвавшему ролику.

Добавлено:
Все, проблема полностью решена. Нашел интересную статью о интеграции ActionScript и веб сервиса на c#:
http://hostinfo.ru/articles/812/

Спасибо.


Последний раз редактировалось Wecoyote; 26.12.2009 в 14:16.
Старый 26.12.2009, 14:18
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 4  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Насчет обмена - http://blog.alternativaplatform.com/...om-i-klientom/

Думаю, вам важнее знать, не как отправлять, изменять и получать обратно какое-либо значение, а как это сделеть наиболее правильнее для сетевой игры, то есть, в общем случае, быстро. А это, в свою очередь, зависит от протокола. А протокол, в свою очередь, уже от самой игры. Так что вам следует хорошенько подумать над тем, что вы хотите сделать, а уже потом все это структурировать и реализовывать. В этом плане лично мне ваша задумка с танками не кажется одной из лучших тем, которые можно придумать и реализовать.

Относительно создания своей конфигурации игрока (в вашем случае танка) — мне кажется намного интереснее программировать поведение, чем составлять комбинацию из заранее созданных элементов. Вот ссылка про подобную сетевую игру, почитайте.
__________________
hauts.ru


Последний раз редактировалось Hauts; 26.12.2009 в 14:30.
Старый 26.12.2009, 14:56
Wecoyote вне форума Посмотреть профиль Отправить личное сообщение для Wecoyote Найти все сообщения от Wecoyote
  № 5  
Ответить с цитированием
Wecoyote

Регистрация: Dec 2009
Сообщений: 7
Комбинируются только элементы самого танка как то корпус, орудие, двигатель. А код можно составить вполне полноценный, только из визуальных блоков, как то блок IF, блок FOR, плюс блоки непосредственно команд действия, как то ЕхатьВперед, повернуть влево на 15 градусов и т.д.

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
Браузерная игра , клиент , сервер
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:13.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.