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

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

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

Регистрация: May 2013
Сообщений: 15
По умолчанию Реализация поиска созданных игр в локальной сети

Захотел реализовать многопользовательскую игру в локальной сети на AIR. Почитал немного о сетевом программировании, уяснил как я буду передавать данные. Решил, что буду использовать UDP, так как хочу сделать игру в реальном времени. Дошёл до осмысления вопроса: как бы я сделал поиск созданных игр в меню. Приложение может как создавать игры в локальной сети, так подсоединяться к ним.

Предположим, что игрок создал игру на своём компьютере в локальной сети. Как можно донести пакет о поиске игр до этого компьютера клиенту в этой же сети? Так как компьютер-клиент изначально не знает, кто в его сети хостит игру на определённом порту. Куда и каким образом слать пакеты о желании подключиться так, чтобы сервер поймал эти пакеты и отправил обратно свой адрес клиенту для установления контакта? Я подумал, что надо слать на широковещательный адрес, который я нашёл в документации к классу InterfaceAdress (свойство broadcast).

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

И каким образом это реализовать? Можно ли вообще достойно реализовать игру в локальной сети средствами AIR?

Добавлено через 45 часов 0 минут
Понял свою ошибку. Через TCP не посылаются широковещательные пакеты. Только UDP.


Последний раз редактировалось timm; 22.02.2014 в 03:20.
Создать новую тему Ответ Часовой пояс GMT +4, время: 12:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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

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


 


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


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