Вторник, 26 Ноября 2024, 12:19

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Игры для контакта
evgen_tulaДата: Вторник, 30 Октября 2012, 21:36 | Сообщение # 1
был не раз
Сейчас нет на сайте
Всем привет. Подскажите как реализовать своевременное отображение соперника в игре? Пример такой игры "СтритРейсеры". Игрок постоянно видит где находится его соперник - обгоняет или отстает. Т.е. надо как-то обмениваться данными между игроками. Объяснить можно "на пальцах" php немного знаю - попробую написать сам:)
HSDimaДата: Вторник, 30 Октября 2012, 23:48 | Сообщение # 2
был не раз
Сейчас нет на сайте
На сколько я знаю то в контакте все игры на Flash. То-есть надо знать ActionScript не..?


cougraAccДата: Среда, 31 Октября 2012, 08:02 | Сообщение # 3
Яркая личность GD
Сейчас нет на сайте
Зачем php-то?
Данными обмениваться можно так:
Клиент - Сервер - Клиент.
Здесь описан пример взаимодействия сервера и клиентов: link
evgen_tulaДата: Среда, 31 Октября 2012, 10:52 | Сообщение # 4
был не раз
Сейчас нет на сайте
cougraAcc, насколько я понял из твоей стать, то сервер может быть на чем угодно написан, так? Я думаю писать на php. Есть разница для сервера через какой сокет обращаются к нему от флеша (имеется ввиду создание сокета через XMLSocket или Socket) ? Из описания я понял, что XMLSocket немного побыстрее работает и передает только текстовую информацию.

HSDima понятное дело что через as. Тут идет речь о связи типа as + php + MySQL.


Сообщение отредактировал evgen_tula - Среда, 31 Октября 2012, 10:59
anton-garДата: Среда, 31 Октября 2012, 11:42 | Сообщение # 5
WEBmaster
Сейчас нет на сайте
Quote (evgen_tula)
cougraAcc, насколько я понял из твоей стать, то сервер может быть на чем угодно написан, так?

Да.
Quote (evgen_tula)
Я думаю писать на php.

Не лучшая идея.
Quote (evgen_tula)
XMLSocket немного побыстрее работает и передает только текстовую информацию.

В принципе - да.
Quote (evgen_tula)
о связи типа as + php + MySQL.

Вот ссыль на мои уроки.


cougraAccДата: Среда, 31 Октября 2012, 12:44 | Сообщение # 6
Яркая личность GD
Сейчас нет на сайте
Quote (evgen_tula)
HSDima понятное дело что через as. Тут идет речь о связи типа as + php + MySQL.

Глупая идея.
evgen_tulaДата: Среда, 31 Октября 2012, 13:18 | Сообщение # 7
был не раз
Сейчас нет на сайте
anton-gar, почему сервер на php не лучшая идея? Просто по сути будет обычная пересылка данных. С этим прекрасно справится php.
cougraAcc, в чем именно глупость идеи?Привязать флеш к бд? Или именно сделать эту привязку через php?
Вообще у меня есть уже практически готовый сервер на C++ с WinAPI... остался с давних времен:)


Сообщение отредактировал evgen_tula - Среда, 31 Октября 2012, 13:27
cougraAccДата: Среда, 31 Октября 2012, 13:58 | Сообщение # 8
Яркая личность GD
Сейчас нет на сайте
Quote (evgen_tula)
cougraAcc, в чем именно глупость идеи?Привязать флеш к бд? Или именно сделать эту привязку через php?

2-е. Привязать бд можно и к Python'y.
хХ_Сибирь_ХхДата: Среда, 31 Октября 2012, 19:16 | Сообщение # 9
частый гость
Сейчас нет на сайте
Пишите сервер сокетный на Python или Java


evgen_tulaДата: Среда, 31 Октября 2012, 19:29 | Сообщение # 10
был не раз
Сейчас нет на сайте
К сожалению ни питона ни джаву я не знаю:)
хХ_Сибирь_ХхДата: Среда, 31 Октября 2012, 19:29 | Сообщение # 11
частый гость
Сейчас нет на сайте
evgen_tula, ну так узнай, в чем проблема?


TreinDSMДата: Среда, 31 Октября 2012, 20:37 | Сообщение # 12
почетный гость
Сейчас нет на сайте
PHP сервер работает по запросной системе, что чревато ощутимыми задержками, ибо открытие канала самая затратная процедура при сетевом взаимодействии. Для какого-нибудь пасьянса - этого вполне достаточно, но для мультиплеерной игры, где важна своевременность информации лучше подходят сокет-сервера. Мы юзаем сокет-сервера на Java и C++.
Еще ощутимое отличие сокетных подключений от запросов - сервер может оповестить клиента без предварительного запроса самого клиента.
Другим немаловажным преимуществом сокетных подключений является возможность передавать данные в бинарном виде, а не в виде упорядоченной строки, что позволяет обходиться существенно более маленькими пакетами.
evgen_tulaДата: Среда, 31 Октября 2012, 20:46 | Сообщение # 13
был не раз
Сейчас нет на сайте
TreinDSM, больше спасибо. Если возникнут вопросы еще помучаю л.с. - не ругайтесь happy

Сообщение отредактировал evgen_tula - Среда, 31 Октября 2012, 20:52
TreinDSMДата: Среда, 31 Октября 2012, 21:03 | Сообщение # 14
почетный гость
Сейчас нет на сайте
Ну чем смогу... wink
evgen_tulaДата: Пятница, 02 Ноября 2012, 09:12 | Сообщение # 15
был не раз
Сейчас нет на сайте
Отправляю данные с сервера (координаты курсора).
При получении данных клиентом выводится что-то типа:
ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌ ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌ457;8
P.S.: полезная информация 457;8 happy
Код клиента:
Code

var sock:XMLSocket = new XMLSocket();
/*
адрес, порт, подключение...
бла бла бла
*/
sock.addEventListener(DataEvent.DATA, update_other_coords);
function update_other_coords(other_event:DataEvent):void {
  trace(other_event.data);
}

Хотелось бы не резать по символам, а получить в нормальной форме.
TreinDSMДата: Пятница, 02 Ноября 2012, 10:12 | Сообщение # 16
почетный гость
Сейчас нет на сайте
Накой черт использовать XMLSocket? Юзай обычный Socket. Если в пакете от полезной информации - 2-е координаты, то можно их так и передавать безо всякой XML обертки. Шли буффер данных такого плана:
2 байта - длина пакета, 1 - байт тип пакета (например, 1=передача координаты), 2 байта - x координата, 2 байта - y координата. Весь пакет получился 7 байт.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг