Содержание · 6 разделов
«Если шаги можно накрутить, что останется от вашей игры?» В игре, связанной с ходьбой, действия человека за пределами экрана влияют на происходящее внутри приложения. Если эти действия можно подделать, вопрос касается и соревнований, и расходов компании.
Я разделяю две задачи: разобраться в происхождении шагов и понять последствия ошибочного зачёта. Даже хорошая проверка может пропустить нарушение или заподозрить в нарушении человека, который действительно много ходил. Я хотел бы знать, какие данные приняли, за что выдали награду и получится ли исправить ошибку. С такими вопросами я подошёл бы и к чужому проекту, если бы рассматривал вложение в него.
Почему игроку важна достоверность чужого результата
Когда я начинал делать игру из ходьбы, мне хотелось, чтобы игровое продвижение было связано с действием в обычной жизни. Человек выходит на прогулку, а игра поощряет его пройти ещё немного. Если тот же результат доступен без прогулки через подделку данных, эта связь нарушается.
Мне нетрудно представить ситуацию: участник команды прошёл свой маршрут, вернулся домой и увидел в таблице результат, который кажется ему невероятным. Сам по себе необычный результат ещё ничего не доказывает. Но если у человека нет понятного объяснения правил и возможности сообщить о проблеме, спор о цифре превращается в спор о справедливости соревнования.
В Diaverse ходьба связана с развитием питомцев и персонажей, есть командные соревнования. За что человек платит в такой игре, я разбирал в статье о причинах покупки. Здесь мне важно понять, сможет ли он доверять соревнованию, в котором участвует: покупка игрового предмета этого вопроса не снимает.
При этом я не ставлю знак равенства между подозрением и нарушением. Телефоны могут показывать разные результаты; передача данных может задерживаться. Для оценки защиты мне нужен разбор конкретного случая: откуда взялась спорная цифра, почему её приняли и что произошло после обращения человека.
Проверка приложения не доказывает каждый пройденный шаг
У крупных платформ есть средства проверки приложения и устройства. В документации Google Play Integrity описаны сигналы, которые помогают определить, пришёл ли запрос из подлинного приложения на устройстве, прошедшем проверку Google. Там же Google рекомендует использовать их вместе с другими средствами защиты.
Для меня это полезное, но ограниченное доказательство. Проверить происхождение запроса и подтвердить, что человек физически прошёл весь указанный путь, — разные задачи. Из фразы «мы используем проверку Google» я не делаю вывода, что любое число шагов стало достоверным.
Я начал бы с объяснения, откуда приложение получает шаги и как их засчитывает. Например, приложение может отправить один и тот же накопленный итог несколько раз после восстановления связи. Вопрос к системе здесь простой: как она отличает повтор уже полученных данных от новой прогулки? Такой случай можно повторить при проверке и показать, засчитались ли уже полученные шаги ещё раз.
Я не стал бы публиковать подробности, которые помогут обойти защиту. Инвестору можно показать обезличенный разбор и результат испытания. По ним должно быть понятно, что именно проверили, какой результат ожидали получить и что произошло фактически.
Игровые награды и деньги компании считаются отдельно
Поддельный игровой результат не всегда означает прямую потерю денег. Виртуальный предмет не обязательно приходится покупать у внешнего поставщика. Зато сотрудникам может потребоваться время, чтобы разобрать спор, пересчитать результаты или исправить ошибочно выданные награды. Этот труд компания оплачивает. Я хочу понимать каждый из этих расходов отдельно.
Для расчёта возьму вымышленную игру. Все величины в этом примере условные и к показателям Diaverse не относятся. В вымышленной игре за месяц обнаружили 200 спорных начислений. Разбор одного случая занимает 12 минут. Получается 2 400 минут, или 40 часов. Если условная полная стоимость часа специалиста составляет $15, только разбор обойдётся компании в $600.
Теперь допустим, что после изменения проверки число таких случаев снизилось до 80, а время одного разбора осталось прежним. Это 960 минут, 16 часов и $240. Разница — $360 за месяц. Она ещё ничего не говорит об окупаемости изменения: разработка и обслуживание проверки тоже стоят денег, и эти расходы нужно сопоставить за выбранный период.
Я не добавляю к этой сумме предполагаемые потери продаж. Для них понадобилось бы отдельное основание. Нельзя взять жалобу на нечестный результат, назначить ей произвольную цену и объявить полученное число убытком бизнеса. В этом примере посчитана только работа со спорными начислениями, если разбор занимает указанное время и час работы стоит указанную сумму.
Такой расчёт помогает обсуждать очередность задач. Если спорный результат затрагивает приз с реальной закупочной стоимостью, появится ещё одна статья расходов. Если речь только о месте в таблице, последствия будут другими. Я сначала выясняю, что именно компания отдаёт и какую работу выполняет, а затем считаю деньги.
Слишком жёсткая проверка тоже создаёт расходы
Мне не близок ответ «будем блокировать всё подозрительное». Представим человека, который долго был без связи, а потом передал накопленные данные. Если система приняла это за нарушение, теперь команде нужно объяснить решение и, возможно, восстановить результат. Чем труднее разобраться в причине, тем дороже обойдётся исправление.
Google в той же документации советует сначала изучать сигналы на своей аудитории, а уже затем выбирать ограничения. Я внедрял бы такую проверку осторожно: сначала разобрался бы, какие случаи возникают у людей, оценил последствия выбранного правила и только после этого вводил ограничения для участников.
Мне нужен и случай, в котором проверка ошибочно сочла обычную прогулку нарушением. Что увидит обычный человек? Сохранится ли его обращение? Можно ли восстановить результат, если ограничение оказалось неверным? Демонстрация, в которой система отвергла очевидную подделку, отвечает лишь на часть вопроса. Мне нужен ещё и пример исправления собственной ошибки.
Отменить ошибочную блокировку может оказаться проще, чем восстановить уже завершённое соревнование. При испытании нового правила можно сначала посмотреть, как оно работает без наказания участников. Это даёт возможность обнаружить неучтённый случай до того, как он испортит кому-то соревнование. Конкретный порядок зависит от устройства игры и не заменяется общим обещанием «у нас строгая защита».
Что имеет смысл показать инвестору
Я предпочёл бы короткий разбор нескольких разных случаев длинному перечню названий защитных средств. Шаги обычной прогулки должны засчитаться в игре. Затем можно повторно передать те же данные и посмотреть, изменился ли итог. При спорном результате мне нужно объяснение принятого решения. По каждому должно быть понятно, что ожидали увидеть и что получили фактически.
Для меня такой разбор имеет смысл вместе с версией приложения и условиями испытания. Результат проверки на одном устройстве нельзя автоматически переносить на другие. Обезличенные результаты помогают обсуждать границы проверки, не собирая в презентации чужие маршруты, имена и сведения об аккаунтах. Для разговора о риске такие личные подробности обычно не нужны.
В рассказе о перестройке Diaverse я писал о сложных периодах с разработкой, экономикой и ежедневной работой компании. Поэтому я смотрел бы и на сопровождение защиты после запуска. Какая работа потребуется и кто сможет разбирать исключения? Если защиту трудно сопровождать, она сама станет постоянной задачей команды, которую нужно учитывать при обсуждении раунда.
Обещание «обходов больше не будет» мне мало помогает. При спорном результате команде всё равно придётся принять решение, объяснить его человеку и при необходимости исправить ошибку.
Как этот вопрос связан с раундом Diaverse
Diaverse операционно прибыльна: основная деятельность приносит прибыль. Мы впервые привлекаем внешние инвестиции. Это раунд на $300K для ускорения развития и выхода на новые рынки. При обсуждении роста я включаю в разговор работу, которая нужна самому продукту: увеличение числа участников может потребовать больше внимания к спорным результатам и понятности правил.
Это не означает, что весь раунд предназначен для одной проверки. Мне важно оценить расходы на спорные результаты и на улучшение проверки, чтобы сравнить эту работу с другими задачами компании. Подробности устройства защиты и условия вложения я обсуждаю лично; общее обещание полной неуязвимости здесь ничем не поможет.
Я делаю Diaverse ради того, чтобы у человека появлялся повод выйти из дома и пройтись. Когда игровое соревнование связано с реальными усилиями, понятные правила зачёта становятся частью этой задачи. Оставьте заявку в листе ожидания — на встрече обсудим продукт, риски и условия нашего раунда.
DIAVERSE 


