Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Реализация действий


Автор: Хрипа 20.3.2007, 02:41
Как лучше всего реализовать поле боя в Изометрии ?
1. Бой идёт полностью на JavaScript после окончания боя Данные кто куда ходил в кого на сколько попал чем стрелял и тп. Отсылаются на сервер и пишутся в БД.
2. Каждый ход отсылается на сервер кто куда ходил куда стрелял и тп.
----------------------------------------------------------------------------------------
Вопрос
1.1 если бой полностью на JavaScript то прийдётся посылать запросы через определённое время на проверку может кто вмешался в бой.(Если бой полностью на JS могут ли быть тормаза если в бою больше 100 человек.. Тормаза такие как подвисание браузера, при потери связи с пользывателем он не сможет отослать данные куда ходил и что делал в бою для сохраниния логов, событие onUnload не всегда работает)
2.1 Как я понел Это лишная нагрузка на сервер так как надо и ещё через определённый промижуток времени делать проверку может кто вмешался в бой.
----------
Как же реализовать систему с найболие меньшим затратом ресурсов и найболие меньшим количеством глюков.
Прошу дать оптимальный ответ. smile 

Автор: dstorm81 20.3.2007, 11:59
сразу оговорюсь что не знаю что такое Изометрия (игра многопользовательская?)

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

испльзуя аякс или перегрузку страницы отправить на сервер, на сервере проверить корректность данных (ибо все приходящее от юзера - ЗЛО smile)
пока не придут данные от всех пользователей игру не ПРОДОЛЖАТЬ

использование скриптовых завязок, на локальную мясорубку использовать не рекомендую, ибо скрипты можно поддредактировать локально, способы есть

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)