Сохранение очков и рекордов. Облачные Данные Scratch - Творческое программирование для всех
Игровые механики, заготовки, шаблоны

Нас спрашивают, можно ли сохранять очки на сайте Scratch. Отвечаем: да, это возможно  с использование облачных переменных.

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

Войди внутрь проекта, изучи код и почитай комментарии.

Изучаем документацию

Чтобы помочь ещё лучше разобраться в данной теме, мы перевели на русский язык часть документации Scratch, где даны ответы на вопросы о том, что такое облачные переменные, как их создавать и пр. Сделали также несколько иллюстраций и дополнительных уточнений для лучшего понимания.

Что такое облачные переменные?

Облачные переменные позволяют сохранять данные из проекта и предоставлять к ним доступ другим пользователям сообщества Scratch. Вы можете использовать облачные переменные для проведения исследований (опросов) и других проектов, где другие члены сообщества могут со временем получать доступ к данным и изменять их.

Примечание: «облачные» — значит те, которые хранятся на сервере Scratch, в глобальной сети Интернет. Именно поэтому все могут иметь доступ к этим данным.

Кто может видеть данные, сохранённые в облачных переменных?

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

Какого типа данные могут храниться в облачных переменных?

В облачных переменных могут храниться только  числа.

Если я вижу, что кто-то публикует нежелательный контент с использованием облачных переменных, как мне сообщить об этом?

Нажмите кнопку «Report (Пожаловаться)» красного цвета (на странице проекта под его описанием это третья по счёту кнопка после «Добавить в студию» и “Copy link”, см. картинку ниже), чтобы сообщить о неприемлемом контенте в облачных переменных. Не забудьте указать «облачные переменные» при вводе причины в отчете.

Кнопка «Пожаловаться»
Кнопка «Пожаловаться»

 

Можно ли создавать чаты с облачными переменными?

На сайте Scratch чаты с облачными переменными не разрешены, хотя технически это возможно.

Как создать облачную переменную?

Перейдите в раздел «Переменные» палитры блоков (группу команд «Переменные»), выберите «Создать переменную» и установите флажок слева от надписи «Облачная переменная (хранится на сервере)» (см. картинку ниже). Данные, связанные с вашей облачной переменной, будут храниться на сервере, сохраняться с течением времени и доступны для всех, кто открывает проект.

Как создать облачную переменную?
Как создать облачную переменную?

Примечание: замечено, что иногда чтобы значение облачной переменной сохранилось и по завершении сеанса игры, при создании переменной необходимо выбрать тип «Только для этого спрайта». Но должно работать и без этого (возможно, в процессе подготовки материала на сайте Scratch был какой-то сбой).

Кто может изменить информацию в облачной переменной?

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

Я вошел в систему, но не могу использовать проекты с облачными переменными. Что происходит?

Если вы являетесь «Новым скретчером» (новичком) на сайте, вы не сможете использовать проекты с облачными переменными. Чтобы получить доступ к облачным переменным, вам нужно стать Скретчером (получить статус Scratcher).

Сразу после создания аккаунта каждый пользователь помечается как «Новый Скретчер». Чтобы получить статус «Скретчер», нужно делиться своими проектами, комментировать проекты других Скретчеров и терпеливо подождать! После того как вы будете соответствовать требованиям, в профиле появится ссылка, приглашающая стать Скретчером, и вы получите некоторые дополнительные возможности на сайте Scratch. (Примечание: по запросу получить статус «Скретчер» новичкам невозможно).

Возможно ли создавать многопользовательские игры с помощью облачных переменных?

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

Как узнать, используются ли облачные переменные в проекте?

В новой версии Scratch 3.0 можно быстро узнать, используются ли в проекте облачные переменные, на странице с описанием проекта. Под окном проигрывателя проекта, сразу под значками «лайк» (иконка сердечка)  и  «избранное» (звёздочка) отображается поле на светло-синем фоне с надписью Облачные Данные и иконкой облака (см. картинку).

Облачные Данные
Облачные Данные

Под этой надписью есть также ссылка See Data -> . Если кликнуть по ней, откроется окно сайта Scratch «История облачных данных», в котором можно увидеть сохранённые облачные данные, отсортированные по времени от самых свежих (последних) до более старых (см. пример ниже).

История облачных данных
История облачных данных

Примечание: замечено, что если проект был создан в Scratch 2.0 и после обновления Scratch до версии 3.0 его никто не запускал и не сохранял данные, на странице «История облачных данных» будет сообщение о том, что сохранённых данных нет:

There seems to be no Cloud Data activity on this project…

There seems to be no Cloud Data activity on this project…

Аналогично, если новый проект не запустить и не использовать облачные переменные, получим такое же сообщение.

Примеры проектов с использованием облачных переменных

  • https://scratch.mit.edu/projects/303373707/ — Сколько лет Scratcher-ам с вычислением среднего возраста пользователей, выполнивших проект, и подсчётом их количества.
  • http://scratch.aelit.net/igra-google-dino/ —  GOOGLE Dino.
  • https://scratch.mit.edu/projects/118210723/ — 3д платформер с таблицей рекордов. Здесь используется шифрование (кодирование) символьных данных (имён пользователей) для их сохранения. Таблица рекордов выглядит следующим образом:
    Таблица рекордов
    Таблица рекордов в виде списка Scratch

    Как это сделать, частично можно узнать из Скретч ВИКИ в разделе «Облачный список» (см. по ссылке ниже).

Дополнительные источники

Ещё об использовании облачных переменных в Scratch можно почитать на страницах русскоязычной Скретч ВИКИ:

  • Облачная переменная.
  • Облачный список – здесь рассматривается задача кодирования (шифрования) символьных данных (букв, из которых состоят слова), если требуется с помощью облачной переменной сохранить строковые данные. В результате, каждая буква получает в соответствие некоторое число. И слово, записанное в виде последовательности букв, сохраняется как число (последовательность цифр).

 

Ольга Елисеева

15 комментариев к “Сохранение очков и рекордов. Облачные Данные Scratch

  1. Я получил статус скретчера но мои облачные переменные не передаються другим пользавателям к примеру пытался сделать тенис онлайн но когда я изменял переменную у моего друга она остовалась та же и не менялась как можно это исправить?

    1. Пока не знаю, что ответить, так как не пользовалась облачными переменными давно, и за это время Scratch очень сильно изменился… Возможно, можно попробовать обновлять страницу сайта, но это не точно 😉

  2. Я когда нажимаю «новая переменная» у меня не показывается надпись «облачная переменная», только название и для каких спрайтов. Как сделать так чтобы эта надпись появилась?

    1. С облачными переменными могут работать те, кого признали скретчером. Это в профиле обычно написано. Чтобы стать скретчером, надо подтвердить свой емэйл и делиться своими проектами. Через какое-то время придет письмо с поздравлением.

  3. Добрый день!

    У меня возникла такая проблема, что очки в облачной переменной не сохраняются другими пользователями (ссылка на проект в строке «веб-сайт»). Это происходит уже не в первом проекте. так вот сам вопрос — как это пофиксить?

    Заранее спасибо!

    1. Точно затрудняюсь ответить. Возможно, не хватает статуса Скретчера, который присваивается со временем и за активность на сайте Scratch. Надо немного подождать, если ты недавно зарегистрировался на сайте.

      1. Спасибо за ответ, но я уже как 7 месяцев на скретче. Также я думаю, что срок прибывания на скретче не может запрещать изменять другим людям облако.

        1. Михаил, да, тогда статус скретчера уже должен был быть присвоен… Странно…
          …ваш email же подтверждён, и проектами своими делиться получается?

    1. Мирослав, к сожалению, я затрудняюсь ответить на этот вопрос. Надо пробовать тестировать. Думаю, эта величина не постоянная и зависит от нескольких факторов, включая скорость доступа к интернету.

  4. Это заготовка платформера? Есть возможность просто просматривать конструкцию платформы в разных ракурсах. Сам перс (зеленый параллелепипед) не управляем.

    1. Наталия, нет, это не платформер. Надо двигать мышку влево-вправо и с помощью зеленой плашки ловить падающие яблоки. Больше ничего 🙂
      Благодарю за вопрос! Дописала инструкцию.

  5. Есть ли конкретный список действий, которые ускорят процесс получения «облачной переменной»?

    1. Евгения, на одном из форумов написали, что чтобы стать Скретчером (и в этом статусе иметь возможность использовать облачные переменные), необходимо опубликовать (поделиться) на сайте Scratch хотя бы 3 своих проекта и написать несколько комментариев к проектам других разработчиков. Рекомендуют также написать что-нибудь на форуме. По опыту, статус Скретчера присваивают примерно через 3 месяца (но сейчас, надеюсь, и раньше), при условии (повторю) активности на сайте.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *