Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   вопрос! как осуществить передачу данных между 2-мя 3-мя и более пользователями? (http://www.flasher.ru/forum/showthread.php?t=67088)

K.A.T.A.F.A.L.K.E.R 25.07.2005 19:43

Вы, верно, шутите? В самом названии я лично вижу слово "пошаговость"!!! Зачем усложнять себе жиснь сокетами??? Та элементарно запись в файл каким-нить серверным php и все тут, а каждые секунд 5-10 проверять обновления... Не умрет юзер если в крайнем случае лишние 5 сек. переждет :D

john 25.07.2005 21:28

я пишу на java.
сокет у меня уже давно готов, как бы не в нем сложность.
сложность написать логику преферанса.

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

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

john 25.07.2005 21:33

2K.A.T.A.F.A.L.K.E.R

во-первых трафик, http запрос тянет за собой, куки, хедеры и всякую дребедень. Нужно передать пару байтов, а запрос идет килобайтный.

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

в-третьих, нагрузка на сервер, если будут долбить сервер одновременно 1000-5000 клиентов - загнется все к чертовой матери.

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

K.A.T.A.F.A.L.K.E.R 26.07.2005 17:57

Цитата:

Сообщение от john
2K.A.T.A.F.A.L.K.E.R
использование сокета в многопользовательских играх - стандартная практика. без альтернатив.

Ну это ты зря! Альтернативы есть везде. Обрати внимание на БК - сам никогда не играл, но видел как происходит. Если я не ошибаюсь, никакими сокетами там и не пахнет! 1000-5000 человек??? К БК это не относится. Умножь эдак на 100 - тогда будет правда. Кроме того, там ведь тоже штрафы за простой... Хотя нет, не штрафы. Поражение! И никто еще не умер, никто еще не жаловался, и никто не нагружал себя сокетами. Почему? Да скорее всего потому что айПи (на 100% не уверен) у сервера один, а количество портов (читать: подключений) не резиновое! Или я в этом не прав??? А что касается хэдеров - их можно урезать посредством флеша, и поверь мне: если умно сделать, никто разницы даже не заметит. А сокеты... Как минимум не факт что они на серваке поддерживаются. Это ведь опция - хочу - открываю, не хочу - не открываю.

john 26.07.2005 18:04

создание многопользовательских игр - моя работа.
не вижу смысла даже спорить.
"http vs socket" обсуждайте пожалуйста на каком нибудь PHP форуме.

john 26.07.2005 18:14

Цитата:

Сообщение от K.A.T.A.F.A.L.K.E.R
Почему? Да скорее всего потому что айПи (на 100% не уверен) у сервера один, а количество портов (читать: подключений) не резиновое! Или я в этом не прав???

ну что "не резинововое" - прав, конечно :) но вполне достаточное,
например на win 2003 server можно повесить чуть больше 64 000 соединений (два байта). В линуксе не помню.

а порты и соединение - не одно и тоже.

по поводу разрешения открытия сокета на сервере, явно проявляется ваш опыт использования фри-хостинга. нормальный игровой сервер ставится либо на своей площадке либо на колокейшен.

K.A.T.A.F.A.L.K.E.R 26.07.2005 18:21

Цитата:

Сообщение от john
по поводу разрешения открытия сокета на сервере, явно проявляется ваш опыт использования фри-хостинга. нормальный игровой сервер ставится либо на своей площадке либо на колокейшен.

Не угадал. Здесь проявляется мое нежелание как положено настроить PHP на компе :) А насчет своей площадки... Не думаю, что у человека создавшего сию тему она имеется...

Viktor_UA 29.07.2005 18:23

Цитата:

по поводу разрешения открытия сокета на сервере, явно проявляется ваш опыт использования фри-хостинга. нормальный игровой сервер ставится либо на своей площадке либо на колокейшен.
Для написания игры необходимо n-раз её тестить! А значит необходимо на своей машине создать "оболочку", "атмосферу" для теста игрушки?! Тоесть поставить апачи и открыть порт? Каким образом его открывать? Подскажите плиз, как протестить, скажем, чат на флэше который использует Сокет-Коннекшын?
Я пользуюсь фри-хостингом на холм.ру. А каким ты пользуешься хостингом?

john 29.07.2005 18:58

да создавайте "атмосферу" сколько угодно :)
на локальной машине тестируется через localhost порт любой, к примеру 1234

по поводу сервера -
есть готовые бесплатные сервера,

http://www.oregano-server.org/
http://www.openamf.org/
http://www.rawfish-software.com/ (это совсем новый, помоему не free, но много возможностей)

можно изменить если не устраивает - код открытый, это на java,
качайте редактор кода - ту же Idea (http://www.jetbrains.com/idea/download/) смотрите код, читайте доки.

DeadMorozz 29.07.2005 19:00

Для перла и пхп у меня на машинке стоит локальный сервер с дистрибутива Денвер Дмитрия Котерова.
Вполне рабочий вариант, если нет шелла на внешнем сервере, например.


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

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