Массовый мультиплеер XCode (не то, что вы, вероятно, думаете)

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

Например:

Предположим, у меня есть игроки Боб, Мэри и Роб. Предположим, что Боб - это уровень 4, Мэри - это уровень 6, а Роб - также уровень 4. Кстати, они будут показаны в таблицах лидеров. Я хотел бы, чтобы Боб, Роб и все, кто находится на уровне 4 и в настоящее время играли, видели друг друга в наборе спрайтов. Я бы хотел, чтобы Мэри уехала с другими 6 уровнями.

Я понятия не имею, с чего начать. Итак, мои вопросы:

  1. Должен ли я даже использовать XCode или мне лучше использовать Unity?
  2. Есть ли у GameCenter возможности для этого, или мне нужно использовать Parse или что-то в этом роде?
  3. А также, не могли бы вы указать мне правильное направление, насколько концепции это будет работать?

Если вы можете ответить на любой из этих вопросов, это было бы УДИВИТЕЛЬНО!!!!! Если нет, то это тоже круто! Заранее спасибо!

1 ответ

  1. Xcode - это IDE, а Unity - игровой движок.

Если вам нужно создать свою собственную игру с самого начала, вы должны использовать IDE. Но это действительно ДОЛГО и иногда сложно. С помощью Game-Engime большая часть игры уже запрограммирована (физика, 3D-анимация...), поэтому вы можете сосредоточить свое время на программировании своей игры.

  1. Game Center предназначен для обмена игрой или счетом. Не играл в онлайн.

Чтобы играть в онлайн, вы должны создать свой собственный сервер.

  1. Вы знаете, как программировать? Вы хороши в 2D/3D?

Для создания MMO-игры у вас должна быть логика.

  • Во-первых, вы должны создать клиента.

    • Клиент игры

    • Он содержит звуки, графику, сценарии...

  • Во-вторых, вы должны создать сервер.

    • Сервер подключен ко всем клиентам.

    • Он содержит базы данных (аккаунты, персонажи, HP, золото...)

Так с чего началось?

Когда персонаж перемещается (от клиента A), он отправляет свою новую позицию на сервер. Сервер отправляет эту позицию всем клиентам. Таким образом, клиент B знает, где находится символ клиента A, и может нарисовать набор плиток (в вашем примере вы можете нарисовать набор плиток, только если логическое значение sameLevel равно true).

Посмотрите на розетки:

http://www.linuxhowtos.org/C_C++/socket.htm

http://www.nullterminator.net/winsock.html

https://stackru.com/questions/tagged/sockets%20c%2B%2B

https://stackru.com/questions/tagged/sockets+c

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

Другие вопросы по тегам