Использование только RTMFP для случайного сопоставления (Adobe Cirrus)

Я пытаюсь придумать лучший способ поиска случайных совпадений в простой игре.

Экспериментируя с netStreams с помощью Adobe Cirrus, я могу легко настроить прямые соединения, отправлять данные, текст, видео и звук с помощью Cirrus, и это здорово. Я считаю, что установить простое P2P-соединение довольно легко, и оно работает именно так, как мне нужно.

Но я действительно хочу реализовать функцию случайного подбора партнеров, используя ТОЛЬКО cirrus, чтобы все было через p2p...

Как мне захватить случайного пира в той же группе... это не имеет прямой связи с кто-то уже?

некоторые идеи:

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

- Я также подумал о том, чтобы просто отправить сообщение в группу, содержащую NearID, и другие пиры смогут получить сообщение... а те, кто не в игре, попытаются напрямую подключиться обратно. Затем эта сторона соединится с ними. так что тогда они оба будут в прямой связи друг с другом. Но тогда я чувствую, что если потенциально сотни людей, которые «доступны»… получат сообщение… тогда все они попытаются подключиться к одному человеку, тогда это может вызвать проблемы.

-Кроме того, я думал просто сделать sendToNearest... но разве это не был бы лучший способ сопоставить людей... потому что у вас может быть только так много соседей, я думаю... если бы в группе было 1000 человек .Вы сможете подключиться только к нескольким пирам, которые на самом деле считаются вашими соседями, верно? Тогда в основном вы можете просто совпасть с теми же 5-10 людьми или, тем не менее, технически считаться соседом.

8
задан brybam 8 March 2012 в 22:14
поделиться