Сверните свою собственную многопользовательскую настройку iPhone? - PullRequest
1 голос
/ 12 января 2012

Я изучал различные варианты реализации многопользовательской (интернет) игры для iPhone. Game Center, OpenFeint и т. Д., Очевидно, очень хорошие, стабильные и многофункциональные. Но я не могу не думать, что мои потребности намного проще, чем они обеспечивают.

Если бы я хотел собрать простую 2d игру с танком, не мог бы я просто ...

  • настройка сервера mysql в сети с некоторыми сценариями get / set php для «веб-служб» actas.

  • когда вы открываете игру, серверу звонят, чтобы сообщить, что вы «доступны».

  • при выборе «Воспроизведение» выполняется вызов для получения списка «доступных» IP-адресов.

  • вы выбираете оппонента, удаленный IP хранится локально.

  • начинается игра, UDP обрабатывает данные между вашим IP и IP вашего противника.

.. или это никогда не сработает? извиняюсь, я очень увлекаюсь разработкой игр / сетей!

спасибо заранее!

Ответы [ 2 ]

2 голосов
/ 12 января 2012

В дополнение к сложностям, на которые указывает dtuckernet , есть еще несколько вещей, которые следует учитывать:

  • Вам необходимо подумать о стоимости работы и поддержки веб-сервера.,Можете ли вы поддерживать такое же или лучшее время работы, чем у Apple и OpenFeint?
  • GameCentre продвигает игры, которые его поддерживают.В App Store добавлен значок, а в самом Game Center перечислены игры, которые принадлежат вашим друзьям.Не стоит недооценивать эффект бесплатной рекламы!
  • Даже если код легок (что я подозреваю, что это неправда), зачем рисковать разработкой своего собственного, когда есть хорошо протестированный код, доступный бесплатно?

Кстати, в зависимости от ваших требований, вы можете использовать гибридный подход.Например, в Game Center может быть не более четырех игроков на игру, когда Apple ее проводит.Вы можете найти игроков с помощью GC, а затем сами запустить игры на своем собственном сервере.

0 голосов
/ 12 января 2012

Это, безусловно, сработает, но реализовать это может быть немного сложнее, чем кажется на первый взгляд.Вы должны обрабатывать такие вещи, как обход NAT / Firewall, и если вы используете UDP, вам нужно реализовать какой-то тип пульса, чтобы вы знали, когда устройства отключились (и обрабатывать это соответственно).

В большинстве случаев вам лучше работать с решением, которое уже решило эти проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...