Roblox GuidebookБаза знаний
Русский ⌄

Studio / ROBLOX

Почему первая награда осталась незамеченной: история прототипа Roblox

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

Первая награда: что увидит игрок?Открыть изображение крупнее ↗
Авторская схема вымышленной мастерской.
Обновлено:

Мастерская, в которой не прозвучало «готово» #

Это вымышленная учебная история. Причал, прототип «Фонарная мастерская», разработчица Мира и игрок Лина придуманы для разбора интерфейса. Рассказ не является реальным отзывом, биографией или отчётом об испытаниях. Мы не меняли пять игр автора сайта ради этой сцены. Все решения ниже — предложения для такого маленького прототипа.

На причале покачивается лодка. В мастерской погас настольный фонарь, и смотритель просит принести батарею. За первое поручение обещан синий гаечный ключ для следующей работы. Задание небольшое: взять батарею, передать смотрителю, получить ключ. Путь Лина уже понимает. Проблема начинается там, где путь заканчивается: как узнать, что её работа принята?

1. Батарея исчезла, вопрос остался #

Лина ставит батарею на стол. Фонарь загорается, предмет пропадает из рук, а смотритель поворачивается к лодке. В углу всё ещё висит «Принести батарею». На панели видны монеты, но число не меняется: награда ведь не монеты. Лина смотрит на лампу, затем на пустую руку. «Мне уже дали ключ или нужно нажать ещё раз?»

Мира знает, что в замысле ключ должен оказаться среди инструментов. Лина этой связи не знает. Исчезновение батареи можно прочитать как передачу, потерю или сбой. Исправлять маршрут здесь бессмысленно: игрок дошёл. Не хватает видимого ответа на завершённое действие, а не ещё одной стрелки до мастерской. В записной книжке Миры появляется вопрос: что именно игрок должен суметь назвать после передачи?

2. Праздничная вспышка не ответила на вопрос #

Первое предложение Миры — добавить искры над столом. В следующем варианте сцены фонарь окружает красивое свечение. Оно приятно, но сообщает только, что что-то произошло. Что выдали? Где это лежит? Нужно ли повторять передачу? Эти вопросы остаются. Более громкий звук также не назовёт предмет, особенно если звук выключен.

Мира оставляет короткий световой акцент как украшение, но перестаёт считать его всей системой подтверждения. Она рисует три пустых места на бумаге: завершённое поручение, полученный предмет, доступный следующий шаг. Если одно место невозможно заполнить простыми словами, анимация не исправляет смысл. Это полезное ограничение прототипа: сначала определить ответ, потом выбирать эффект, который его поддержит.

3. Договор о награде занимает одну строку #

До оформления Мира записывает правило: «Первое поручение с батареей выдаёт один синий гаечный ключ в инструменты». Ключ остаётся у персонажа; повторная попытка завершить это же первое поручение не добавляет второй. Это правило вымышленного прототипа, не общее правило наград Roblox. Для повторяемого задания потребовались бы другие условия.

Теперь понятно, какой показатель нужен: не общий счётчик денег, а запись ключа в инвентаре и состояние первого поручения. Мира отдельно отмечает, что значит «завершено», когда разрешён следующий ремонт и какие данные должны пережить новый вход. Такая строка связывает интерфейс с игровым замыслом. Она ещё не доказывает корректность реализации, зато делает ошибку заметной: два ключа за одну первую передачу противоречат правилу.

4. Сообщение следует за подтверждённым действием #

Мира предлагает сообщение «Батарея передана. Получен синий ключ» рядом с областью текущей задачи. Оно должно появляться после проверки завершения и выдачи в состоянии игры, а не просто после нажатия кнопки. Во время ожидания нужен другой ответ: «Проверяем передачу». Тогда игрок различает запрос и результат.

Под текстом появляется «Открыть инструменты». Короткий звук и световой акцент могут сопровождать сообщение, но не заменяют его. Задача в журнале меняется на завершённую только в соответствующем состоянии. У текста есть конкретный предмет и действие, а не неопределённое «Успех!». Мира проверит ещё и место сообщения: оно не должно закрывать управление на телефоне или исчезать прежде, чем игрок переведёт взгляд.

5. Награду можно найти после исчезновения сообщения #

Воображаемая Лина открывает инструменты. В новой версии карточка подписана «Синий ключ», а её значок совпадает со значком в сообщении. Краткий акцент выделяет именно эту карточку. Рядом записано, для чего предмет нужен: «Для следующего ремонта». Не требуется угадывать по незнакомой картинке, какой из предметов только что добавился.

После закрытия уведомления инвентарь остаётся способом проверить результат. Мира не подсвечивает сразу магазин, коллекцию, настройки и все будущие задания. Сейчас важна связь между одним поручением и одним инструментом. Если игрок вернётся к этой записи позже, названия должны оставаться одинаковыми. Это предложение для собственного инвентаря прототипа: речь не о покупке предмета аватара или автоматической выдаче вещи платформы Roblox.

6. Состояние задания и состояние сохранения различаются #

Мира раскладывает карточки: поручение ещё активно; передача проверяется; награда получена; результат сохранён для следующего входа. Последняя карточка не возникает автоматически от появления предмета на экране. На уровне интерфейса можно сказать «Ключ получен. Сохраняем…», если выдача уже подтверждена, а сохранение ещё ожидается. Надпись «Сохранено» требует своего основания.

Разработчику нужны более точные внутренние состояния, игроку — понятный ответ. Сообщение ожидания не должно одновременно выглядеть как ошибка и как завершение. Если сейчас известен только запрос передачи, нельзя показывать ключ как уже принадлежащий игроку. Если выдача известна, но запись не подтверждена, нельзя выдавать текущую сессию за обещание следующей. Схема ниже помогает обсудить эти различия до кода.

Выдача и сохранение — разные ответыОткрыть изображение крупнее ↗
Предлагаемые состояния; схема не реализует сохранение.

7. Второе нажатие — проверка правила, не новая награда #

Лина могла не увидеть ответ и нажать повторно. Мира предлагает временно менять кнопку на «Проверяем», чтобы экран не приглашал к бесконечным нажатиям. Но изменение кнопки само по себе не защищает выдачу: повторные запросы и проверка права на награду относятся к серверной логике, а не только к оформлению.

Для первого поручения нужно узнавать уже обработанное завершение и возвращать его актуальное состояние без второй выдачи. В технический план попадают повторный запрос, задержанный ответ и разрыв между изменением награды и записью данных. Мы не предлагаем здесь готовую транзакцию или обещание exactly-once. Задача автора — спроектировать согласованное правило для предмета и завершения, затем проверить его на отдельной тестовой версии.

8. Новый вход задаёт другой вопрос #

В истории Мира сначала хотела объявить победу, увидев карточку ключа. Затем замечает вторую страницу блокнота: «Что увидит Лина после выхода и возвращения?» Наличие ключа сейчас и восстановление ключа позже — разные проверки. Нужно согласовать предмет, запись первого поручения и возможность следующего ремонта, а не проверять одну красивую надпись.

Для ожидающей или неопределённой записи нужен честный статус, например «Проверяем сохранение», а не безусловное «Всё сохранено». При потере связи нельзя угадывать, что награда точно исчезла, и немедленно выдавать новую. В тестовом плане отдельно рассматривается восстановление состояния. Испытания сохранения проводят в отдельной версии: доступ Studio к рабочим данным может затронуть реальный прогресс, поэтому здесь не предлагается включать его на живой игре.

9. Таблица превращает сомнения в проверяемые предложения #

Мира больше не пишет «сделать награду понятнее». Она связывает каждую проблему с видимым изменением и вопросом проверки. Осталась старая задача? Нужен согласованный статус завершения. Неясно, что выдали? Нужны имя предмета и нужный инвентарь. Не видно после закрытия? Нужна постоянная запись, а не бесконечный повтор вспышки.

Первая таблица содержит предложения, а не результаты испытаний. Вторая — незаполненный план: устройство, версия и наблюдение ещё предстоит вписать. Клетка без результата полезнее придуманной галочки. Не просите участника повторить заранее сказанный ответ. Спросите, что произошло и где он проверит предмет, затем запишите его действия. Даже правильное число в данных ещё не означает, что сообщение было замечено.

До измененияПредложениеКак проверить
Батарея пропала без поясненияНазвать передачу и полученный ключ после подтвержденияМожет ли игрок сказать, что произошло?
Видны только монетыОткрыть нужный инвентарь инструментовНаходит ли игрок карточку ключа?
В журнале прежняя задачаСогласовать завершение и доступный следующий ремонтСовпадают ли журнал и состояние награды?
Повторное нажатие выглядит как новый запросПонятное ожидание; серверная обработка уже завершённого порученияМеняется ли количество ключей от повторки?
Предмет на экране принят за сохранённыйРазделить выдачу и статус записиВосстанавливаются ли предмет и задача после нового входа?

10. Перенесите метод на свою первую награду #

Выберите одно поручение своей игры. Напишите, что игрок отдаёт или завершает, что получает и где это можно увидеть потом. Назовите только связанный показатель: инструмент, запись коллекции, опыт или иной предусмотренный результат. Не заставляйте человека смотреть на монеты, когда награда лежит в другой системе.

Зафиксируйте ожидаемые состояния до действия, во время проверки, после выдачи и после подтверждённого сохранения, если оно предусмотрено. Затем подготовьте отдельные сценарии для повторки, нового входа, выключенного звука и небольшого экрана. Меняйте одну причину путаницы за раз и сохраняйте версию сравнения. Документация Creator Hub объясняет обратную связь как ответ на действие и советует выделять нужную сейчас информацию; конкретный ключ и вся сцена — наши собственные примеры.

СценарийЧто наблюдатьУстройство / версия / результат
Одна первая передачаСообщение, один ключ, завершение, следующий шаг—
Повторный запрос и задержка ответаОтсутствие второй выдачи; согласованность состояний—
Закрытие сообщения и выключенный звукМожно ли найти предмет и назвать результат без звука—
Небольшой экранЧитаемость текста и доступность управления—
Выход и новый вход после подтверждённой записиКлюч, состояние поручения, доступ к ремонту—
Прерванная или неопределённая записьЧестный статус и восстановление без догадки о повторной выдаче—

11. Теперь Лина знает, что лежит в её сумке #

В заключительной сцене вымышленного прототипа фонарь загорается без долгого салюта. Сообщение называет переданную батарею и полученный ключ. Лина открывает инструменты, видит ту же подпись и понимает предложение следующего ремонта. Она больше не пытается повторно отдать исчезнувшую батарею только ради проверки, произошло ли что-то вообще.

Это окончание рассказа, а не измеренный рост удержания. У Миры остался тестовый план, особенно на сохранение и повторные запросы. Но появилась законченная мысль для дизайна: первая награда должна не только существовать, но и иметь понятное место в истории действия. Читатель может взять правило, таблицы и вопросы, заменить батарею своим поручением и проверить собственную сцену без заимствования чужого кода или выдуманных отзывов.

Первоисточники

Roblox Creator Hub — Onboarding techniques
UI and UX design
Onboarding
Data stores
Securing the client-server boundary