forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Уроки (http://forum.boolean.name/forumdisplay.php?f=145)
-   -   Работа с PlayerIO (Создаем ММО) (http://forum.boolean.name/showthread.php?t=18008)

Okay 20.03.2013 12:08

Работа с PlayerIO (Создаем ММО)
 
И так. Я все-таки решился на это.
Это мой первый урок по Unity. Сразу скажу, что пишу уроки первый раз.

Не судите строго)

Поехали.
PlayerIO - это сервис, который позволяет создавать онлайн игры в Unity3D.
На нем вы сможете создать игру любого жанра, будь то Браузерная игра, будь то клиентская игра. Поддерживает платформы .Net, Flash, Unity3D. Рассчитан для комнатных игр. Но никто не запрещает создавать на нем глобальные ММО =)

Официальный сайт - http://playerio.com
Скачать пример можно на официальном сайте

Начнем с API PlayerIO
В PlayerIO имеется:
  • Авторизация через FaceBook. Называется QuickConnect(Об этом возможно расскажу позже)
  • Возможность создавать игры ММО для IOS / Android, если уж игра делается на Unity3D
  • Возможность использовать стандартную систему покупок. Все наверное знают, что такое "Донат".

Клиент
На клиенте, как вы знаете находятся все основное. Такое как 3D модели, текстуры и т.д.

Как вы знаете в стандартном мультиплеере Unity3D для синхронизации было "RPC"!
В PlayerIO используются "Messages". То есть создать сообщение, читать сообщение, отправить сообщение серверу, получить сообщение от сервера.


Сервер
PlayerIO дает возможность держать сервер на своем хостинге. То есть вам не нужно покупать для этого VDS. Хотя, если вас не устраивает это, то вы в любое время сможете поставить сервер на свою VDS-ку.

Максимальное количество игроков в комнате - 45.
Максимальное количество игроков на одном сервере - 500 (В бесплатном аккаунте).

Общее
PlayerIO подготовил для нас с вами очень интересную штуку. На сайте, в панели администратора вы сможете смотреть за статистикой сервера. То есть сколько игроков в комнате, сколько использовано трафика и т.д.

Так же есть база данных в панели администратора. Очень удобная и не нужно подключать Mysql. Для этого есть стандартные методы в библиотеке PlayerIO.
Присутствует возможность хранить файлы на сервере. Сам не храню там.
Так что рассказать подробно по этому поводу ничего не могу.


Пример простого подключения к серверу
Код:

using PlayerIOClient; // Используем библиотеку PlayerIO
public class connect : MonoBehaviour
{
    void Start ()
    {
        PlayerIOClient.PlayerIO.UnityInit(this);
        PlayerIOClient.PlayerIO.Connect("GAME ID", "public", "username", "Auth", "Partner ID", SuccessCallBack, ErrorCallBack);
   
    }
}

Как вы видите ничего сложного нету. Разберем функции и параметры
Код:

PlayerIOClient.PlayerIO.UnityInit(this);
Код интегрирует скрипты PlayerIO и Unity3D

Код:

PlayerIOClient.PlayerIO.Connect
Подключение к серверу

Параметры:
    GAME ID - ID Игры. Выдается автоматические индивидуально на сайте
    public - Говорит о том, что игра будет не по локальной сети
    username - ID игрока. Можете использовать как хотите.
    Auth - не знаю. Не разбирал этот параметр
    Partner ID - ID партнерки playerio. Используется для системы покупок
    SuccessCallBack - При успешном подключении к серверу
    ErrorCallBack - При неудачном подключении к серверу

Тема будет дополнятся по мере моих возможностей.


По скриптам: Если вы хотите использовать игру с комнатами, то вам нужно будет создать подключение к комнате.
Если же вам нужно будет глобальное ММО, то подключение к комнате не нужно.

pax 20.03.2013 12:13

Ответ: Работа с PlayerIO (Создаем ММО)
 
Первый вопрос: по изучал документацию я этой системы и я не понимаю что ты имеешь ввиду глобальное ММО? Серверный код можно писать только для комнат.

Okay 20.03.2013 12:29

Ответ: Работа с PlayerIO (Создаем ММО)
 
Цитата:

Сообщение от pax (Сообщение 255340)
Первый вопрос: по изучал документацию я этой системы и я не понимаю что ты имеешь ввиду глобальное ММО? Серверный код можно писать только для комнат.

Где-то видел писалось: "Игры можно создавать комнатные, а можно ММО". Поэтому и написал так.
Ах да. Если уж на то пошло, то количество слотов в комнате можно изменять =) Поэтому и глобальное ММО

pax 20.03.2013 13:05

Ответ: Работа с PlayerIO (Создаем ММО)
 
Изменять можно с премиум планом на выделенных серверах за неизвестно сколько бабок)

Okay 20.03.2013 13:28

Ответ: Работа с PlayerIO (Создаем ММО)
 
Цитата:

Сообщение от pax (Сообщение 255345)
Изменять можно с премиум планом на выделенных серверах за неизвестно сколько бабок)

Все же 1 тысячу рублей в месяц можно найти...

pax 20.03.2013 14:07

Ответ: Работа с PlayerIO (Создаем ММО)
 
пару тысяч баксов ты хотел сказать?

http://playerio.com/forum/multiplaye...n-a-room-t2076

Цитата:

The limit is set to 45 for rooms running on our public shared servers. The reason is that it is a good compromise number to make sure that resources can be fairly distributed and that room instances can be distributed across multiple physical servers as load increases.

We do offer dedicated servers. On these, you can set the limit to whatever you want and completely disable the code scan (yay, no whitelist!) and remove the runtime limits. However, it's your own responsibility to make sure that everything works correctly if you do.
из планов видно, что Dedicated Servers доступны начиная с Pro, что минимум $500 в месяц

Okay 20.03.2013 14:24

Ответ: Работа с PlayerIO (Создаем ММО)
 
Цитата:

Сообщение от pax (Сообщение 255348)
пару тысяч баксов ты хотел сказать?

http://playerio.com/forum/multiplaye...n-a-room-t2076



из планов видно, что Dedicated Servers доступны начиная с Pro, что минимум $500 в месяц

ммм.. а для кого исходники серверного кода в папке с примером?

pax 20.03.2013 14:36

Ответ: Работа с PlayerIO (Создаем ММО)
 
В папке с примером исходники примера комнаты по сбору грибов.

Okay 20.03.2013 15:23

Ответ: Работа с PlayerIO (Создаем ММО)
 

pax 20.03.2013 15:27

Ответ: Работа с PlayerIO (Создаем ММО)
 
Где тут исходники? Это библиотеки нужные для создания своей dll и запуска на локальной машине как на девелопмент сервере. Этот "сервер" регистрируется у них на сайте. Его врядли можно использовать для чего-то кроме как тестирования.

UPD: http://www.ant-karlov.ru/kak-sozdat-...gru-anons.html неплохой курс статей по Player.IO

Okay 20.03.2013 15:56

Ответ: Работа с PlayerIO (Создаем ММО)
 
Цитата:

Сообщение от pax (Сообщение 255361)
Где тут исходники? Это библиотеки нужные для создания своей dll и запуска на локальной машине как на девелопмент сервере. Этот "сервер" регистрируется у них на сайте. Его врядли можно использовать для чего-то кроме как тестирования.

UPD: http://www.ant-karlov.ru/kak-sozdat-...gru-anons.html неплохой курс статей по Player.IO

ok. Твоя взяла. Но согласись, что глобальное ММО можно создать. Бесплатный сыр только в мышеловке =)

pax 20.03.2013 16:01

Ответ: Работа с PlayerIO (Создаем ММО)
 
Ну если сравнивать например с фотоном, то на нем дешевле чем на Player.IO - купил инди лицензию за $100 (на три сервера за $250) и поставил на свой сервер. Тут еще надо с ними связываться и не известно сколько попросят.

Okay 20.03.2013 16:11

Ответ: Работа с PlayerIO (Создаем ММО)
 
Цитата:

Сообщение от pax (Сообщение 255366)
Ну если сравнивать например с фотоном, то на нем дешевле чем на Player.IO - купил инди лицензию за $100 (на три сервера за $250) и поставил на свой сервер. Тут еще надо с ними связываться и не известно сколько попросят.

photon сложнее в освоении. Для начинающих в мультиплеере этот вариант в самый раз.

pax 20.03.2013 16:16

Ответ: Работа с PlayerIO (Создаем ММО)
 
Для тех кто хочет написать ММО - сложности не помеха ;)

Okay 20.03.2013 16:22

Ответ: Работа с PlayerIO (Создаем ММО)
 
Цитата:

Сообщение от pax (Сообщение 255369)
Для тех кто хочет написать ММО - сложности не помеха ;)

Я хочу и пишу ММО. Бывают возникают сложности, что исправляешь ошибку днями.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot