Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Идентификация игрока на девайсе (http://www.flasher.ru/forum/showthread.php?t=213964)

faraday 08.03.2017 13:58

Идентификация игрока на девайсе
 
Не нашел более подходящего раздела, поэтому спрошу здесь. какой правильный подход к идентификации игрока на моб. устройстве? Нужен уникальный и постоянный id для конкретного пользователя.
Для моб. первым делом подумал про gameCenter, playCenter. Но игрок вполне может не иметь учетки, и установить игру напрямую из apk. Второй подход - генерировать id при первом запуске, или использовать что-то типа IMEI. Но тогда на новом устройстве прогресс начнется с нуля. отсюда вопросы:

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

Что все таки лучше использовать для идентификации игрока, как универсальное средство для всех устройств?

Если игрок имеет аккаунт в game center, прогресс между устройствами идет все равно через сохранение на мой сервер, или локальные файлы прогресса просто сохраняются в облако к ним, и передаются между устройствами?

undefined 08.03.2017 15:43

можно попробовать получить Google Advertising ID.
По крайней мере рекламщики его используют.Надо только подключить google play services

caseyryan 08.03.2017 15:47

Ты не смотришь как это сделано у других что ли?
Я обычно всегда досканально изучаю механизмы, которые используются у конкурентов. Незачем изобретать велосипед.
Самый универсальный способ - учетная запись гугл или айтюнс. Игроку предлагается войти в аккаунт, чтобы сохранять свои результаты на сервере и не потерять их в случае чего. Если он не хочет, результаты хранятся только на дейвайсе, но утеря данных это уже его проблемы.
Чтобы данные не "сломались" не делай таких кардинальных изменений, которые не смогут прочитаться текущей версией игры / приложения. Либо делай встроенный конвертер данных и проверяй версии базы

faraday 08.03.2017 17:15

а как предложить войти в аккаунт, через ANE?и по результату мне будет передан id учетки? В играх типа клешей данные хранятся локально? я думал что по обращению к серву поднимается и актуализируется аккаунт, и там уже, если не совпадают версии - предлагает обновиться. но если отказался от авторизации, получается прийдется сохранять все uid которые нагенерил клиент.

caseyryan 08.03.2017 17:57

Цитата:

а как предложить войти в аккаунт, через ANE?и по результату мне будет передан id учетки?
Да. Можно даже текстовые данных хранить в аккаунте, не поднимая собственный сервер. Допустим базу кодировать по base64 и заливать туда, либо вообще хранить ее в JSON, если никаких таблиц рекордов не предусмотрено, и пофиг что это можно легко хакнуть
Цитата:

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

Godwarlock 08.03.2017 18:02

Кроме id и логина от плейсервисов, можно получить доступ к email?

faraday 08.03.2017 18:07

Спасибо за развернутый ответ)
Если через ane - то оно само будет подтягивать нужные данные в аккаунт при появлении интернета? или все это надо отслеживать и отправлять вручную? И есть ли бесплатные экстеншны для авторизации? я нашел только на основе firebase платный https://goo.gl/RQNPMV , и как я понял он к gameCenter отношения не имеет.


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

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