как сделать игру в приложении скретч
Как мы создали игру Among Us на Scratch. Уроки Scratch для детей
Расскажем, как в визуальном редакторе Скретч создать клона популярной у детей игры Among Us.
IT-сфера становится неотъемлемой частью жизни детей, и уже в раннем возрасте ребята учатся кодить и создавать игры. В этом им помогают визуальные среды программирования. Одна из самых популярных сред — Scratch, созданная Массачусетским технологическим институтом специально для детей и начинающих программистов.
Программирование в среде Scratch доступно детям уже с 8-9 лет. В Скретч процесс программирования напоминает конструктор LEGO: команды представляют собой блоки, которые перемещаются и примагничиваются друг к другу. С помощью блочного кода дети могут управлять анимированными персонажами, добавлять звуковые эффекты, передавать сообщения и др. Скретч знакомит ребят с азами программирования: помогает изучить, что такое переменные, условия, циклы, ветвления и др. А также развивает логическое мышление и учит ставить задачи и находить решения.
Скретч — это онлайн-среда, поэтому детям не нужно устанавливать приложения на компьютер, достаточно зарегистрироваться на сайте. На этой же платформе свою игру можно опубликовать, чтобы в нее сыграли пользователи со всего мира.
Подробнее об устройстве Скретч и других сред программирования для детей мы рассказывали в этой статье.
Красочный дизайн вдохновляет ребят делать свои проекты, а возможность делиться игрой на сайте и получать комментарии мотивирует искать новые идеи. Мы подумали, что лучше всего вовлечь детей в программирование через их любимые игры. Несмотря на внешнюю простоту программы, на Scratch можно создать игру любого жанра: шутеры, платформеры, симуляторы, аркады и др. А еще сделать клоны популярных игр: Among Us, Brawl Stars, Friday Night at Freddy’s и т. д.
Мы решили воссоздать часть игры Among Us и делимся с вами подробными инструкциями. Если вы хотите посмотреть весь урок в видеоформате, листайте ниже.
Для начала нужно заготовить материалы для игры: в основном это спрайты (картинки). Нам понадобятся изображения главного героя — командира экипажа — и фоновые заставки: объявление о запуске игры, карта, по которой будет перемещаться персонаж, а также фон для задания. Вы можете скачать наши материалы или нарисовать собственные в графическом редакторе внутри Скретч.
Мы запрограммируем появление фонов, движения персонажа и выполнение одного задания — нашему командиру предстоит починить проводку в коридоре у управления.
Запустим новый проект на Скретч и добавим все спрайты через кнопку «Загрузить спрайт». Растянем изображения, чтобы заполнить игровую сцену. Карту увеличим до максимальных размеров (у нас 731) и нарисуем желтый кружок — в этом месте персонаж будет приступать к заданию. Также изменим размер члена экипажа, чтобы он был пропорционален карте (25). Каждому фону даем название, чтобы было проще между ними ориентироваться: заставка, задание и т. д.
Делаем «взрослое» приложение под Android с помощью «детской» среды программирования Scratch
UPD. Для Scratch версии 3.0 и старше используйте https://forkphorus.github.io/ или https://turbowarp.org/
Пришла мне идея сделать для не компьютерной настольной игры «Битва Големов» приложение для Android смартфона. Иногда и такое в голову приходит. Захотелось сделать программу, которая бы заменяла для бесплатной Print&Play версии игры 20 карт Удачи и счетчик раундов, генерируя для двух игроков текущую Бонус карту (или ее отсутствие) и показывая номер раунда. Это экономило бы для тех, кто печатает игру, два листа А4 формата.
Но на чем делать? Хотелось чего то быстрого и не затратного в изучении. Из простых решений приходил только AppInventor, который я уже использовал для создания управления робота из металлического конструктора. Но потом решил — почему бы не попробовать что-то другое?
Поиск показал, что оказывается можно создавать приложения (увы не standalone, но сейчас с интернетом проблем почти нету) на… Scratch. Да, именно в этой «детской» среде программирования, которую я хорошо знал, разрабатывая до этого для нее роботов и методику.
Поэтому я решил сделать приложение для смартфона на… Scratch.
Первым делом надо было создать само приложение. Вы можете посмотреть его по ссылке.
Оно достаточно простое — две кнопки, которые по нажатию сбрасывают все или генерируют данные для следующего раунда, спрайты карт Удачи и генератор случайных чисел, который их выдает. Просто посмотрите код — я использовал несколько переменных и передачу сигналов. Все программирование заняло не больше часа. Самое главное (а это я понял увы не сразу) — вся графика в проекте должна быть растровой!
А теперь… МАГИЯ! Мне нужно превратить проект Scratch в apk файл для смартфона. И сделаю я это за два шага:
1 шаг — генерируем онлайн-приложение, вставив ссылку на проект в строку ввода на сайте проекта Phosphorus.
Вставляем ссылку на проект и нажимаем Package.
2 шаг — полученную ссылку с приложением я превратил в apk на другом сайте — appsgeyser.com
Для этого просто нажимаем Create Now и выбираем тип Website. Далее вставляем ссылку на сгенерированный онлайн-проект с вашим приложением, придумываем имя для приложения и добавляем дополнительную информацию — описание и иконку. Нажимаем Create и (вот тут вас могут попросить зарегистрироваться) магия работает — вам остается только открыть предложенную ссылку на смартфоне и подождать генерации и закачки на него apk-файла, который вы можете установить и дать попробовать другим. На самом деле в Appsgeyser можно делать более сложные вещи, но думаю тут вы сами разберетесь.
Скачать и протестировать готовое приложение (apk) для Print&Play версии настольной игры Битвы Големов вы можете по этой ссылке.
Учимся создавать игру Among Us в Scratch. Программирование для детей
Хотите научиться создавать клон одной из самых популярных среди детей игр Among Us в среде программирования Скретч? Следуйте нашим подробным инструкциям.
IT-сфера превратилась в неотъемлемую составляющую жизни подрастающего поколения. Дети активно осваивают навыки программирования, создания игр. Чтобы упростить им задачу, создаются визуальные среды программирования. Наибольшую популярность в последнее время приобрела Scratch, разработанная специалистами Массачусетского технологического института для тех, кто еще только учится кодить и мечтает в будущем стать программистом.
Скретч — язык программирования, изучать который дети могут с самого раннего возраста (8-9 лет). Принцип создания программ в Скретч аналогичен конструктору LEGO. Основой программ являются специальные блоки (команды), их можно перемещать и соединять между собой. Блочный код обеспечивает ребятам возможность управления анимированными персонажами, передачи сообщений, добавления звуковых эффектов и пр.
Scratch позволяет детям изучить азы программирования, с его помощью они начинают понимать, что такое циклы, условия, ветвления, переменные и т.д. Также он способствует развитию логического мышления, обретению навыков постановки задач и нахождения решений.
Так как Скретч является онлайн-средой, то для работы с ним не требуется скачивать и устанавливать специальное приложение. Достаточно пройти регистрацию на сайте. Здесь же на платформе можно опубликовать свою игру, чтобы и другие пользователи поиграли в нее.
Яркий, увлекательный дизайн вдохновляет детей на создание собственных проектов. А то, что игру можно продемонстрировать игрокам практически со всего мира, стимулирует к поиску новых интересных идей. С нашей точки зрения, проще всего приобщить ребят к программированию, научив их делать любимые игры. Хотя Скретч и кажется простым, с помощью этой платформы можно разрабатывать игры самых разнообразных жанров: симуляторы, шутеры, аркады, платформеры и т. п. А также создавать клоны пользующихся огромной популярностью игр, в том числе Among Us, Brawl Stars, Friday Night at Freddy’s.
Далее мы пошагово представим создание части игры Among Us. Если вы хотите ознакомиться с подробной видео-инструкцией, демонстрирующей, как создать игру в Скретч, листайте ниже.
Первое, что следует сделать, — это собрать материалы для игры. Речь по большей части идет о спрайтах (изображениях). У нас должна быть картинка командира экипажа (то есть главного героя) и несколько фоновых заставок: сообщение о начале игры, карта, на которой отображается перемещение главного героя и иных персонажей (при их наличии), а также фоновое изображение для заданий. При желании вы можете воспользоваться заготовленными нами материалами или создать свои с помощью графического редактора в Scratch.
Нами будут запрограммированы движения персонажа, смена фонов, а также выполнено одно задание — герой должен устранить неполадки с проводкой в коридоре.
Начнем с запуска нового проекта на Скретч и добавления спрайтов (для этого предназначена кнопка «Загрузить спрайт»). Увеличим размер картинок, чтобы вся игровая сцена была заполнена. Выведем карту на максимальный размер (в нашем случае 731) и добавим кружок желтого цвета – это точка, с которой стартует наш герой. Затем подкорректируем размеры персонажа под параметры карты, чтобы обеспечить их пропорциональность (25). Придумываем название для каждого фона (задание, заставка и пр.), так будет легче ориентироваться.
А сейчас займемся непосредственно программированием.
Программирование мини-игры в программе Скретч
На свете существуют множество языков программирования, но программирование для детей проще начинать с программ, которые предполагают создание игровой ситуации с героями или объектами, которые двигаются, меняются или взаимодействуют. К таким программам относятся ПервоЛого и ЛогоМиры, а также программа Скретч (Scratch), бесплатно распространяемая для любой операционной системы. Сайт находится по адресу http://scratch.mit.edu. С января 2019 года разработчики выпустили новую версию 2.0. Она немного отличается от предыдущих версий.
В основе Scratch лежит графический язык программирования. Для того чтобы создать скрипт (программу для каждого объекта) нужно просто совместить графические блоки вместе, перетаскивая готовые блоки из левого поля в поле создания скрипта (программы).
Блоки разбиты на несколько типов:
Блок «Перо» в новой версии надо добавлять из меню «дополнительные блоки».
На уроках информатики учащиеся постепенно знакомятся с командами различных блоков и их использованием. Это позволяет на одном из уроков перейти к реализации проекта по созданию мини-игры.
Во многих компьютерных играх игровое поле представляет собой площадку, разбитую на квадраты (как шахматная доска), и требуется собрать какие-либо предметы – это могут быть яблоки, монеты, звезды или что-то другое. Для краткости будем называть эту игру «Собери» (презентация).
Для создания игры нам необходимо проделать несколько этапов:
1 этап. Создание игрового поля
Для создания игрового поля мы должны войти в меню «Сцена», вкладка «Фоны» и с помощью инструментов для рисования «прямоугольник» и «линия» создать поле 8х8 клеток. (рис. 1). Такого размера вполне достаточно для создания первой игры. При желании можно добавить какой-либо текст (кнопка Т).
Рис. 1. Создание игрового поля.
2 этап. Расстановка игровых объектов
На втором этапе мы расставляем объекты разных видов (рис. 2 и 3). Для этого используем добавление спрайтов из библиотеки. Объекты в нашей игре будут двух видов – те, которые по условию надо собрать (например, яблоки), и те, которые будут являться препятствиями. Количество объектов можно задавать самостоятельно. Рекомендую размер объектов уменьшить до 50.
Рис. 2. Добавление объектов на игровое поле.
Рис. 3. Добавление объектов-препятствий на игровое поле.
3 этап. Программирование «героя»
В качестве героя можно оставить исходного спрайта-котенка под именем «Спрайт1». При желании можно выбрать (назначить) «героем» любого другого. Имя спрайта также можно изменить.
В начале игры наш герой должен встать в исходную точку, которую мы определяем с помощью координат. Поэтому команда должна выглядеть так:
Рис. 4. Задание начальной координаты для спрайта.
При необходимости можно задать и начальное направление – например, «повернуться в направлении 90».
Далее для того, чтобы наш спрайт ходил сразу по клеткам, мы должны запрограммировать кнопки управления его передвижением (стрелки вверх, влево, вправо, вниз), которые удобно расположены на клавиатуре.
Команды для кнопок должны выглядеть следующим образом:
Рис. 5. Программирование управляющих кнопок (стрéлок).
Этап 4. Программирование собираемых объектов
Для того, чтобы любой объект реагировал на прохождение «героя» и мог менять свою форму или исчезать, необходимо, чтобы он совершал небольшое движение. Это можно задать двумя способами:
Рис. 6. Команда для собираемых объектов.
Чтобы объекты можно было «восстановить» в начале игры задаем дополнительную команду:
Рис.7. Команда для «восстановления» объектов.
Эти команды надо задать для каждого собираемого объекта (яблока, монеты или звезды).
Этап 5. Программирование препятствий
На игровом поле должны также присутствовать объекты, которые будут усложнять игру, т.е. являться препятствиями. Чтобы они могли взаимодействовать с героем, когда он попадает на соответствующую клетку, необходимо им также задать небольшое движение (аналогично собираемым объектам).
Взаимодействие с героем можно задавать по-разному: препятствие может «взрываться», «переворачиваться» (т.е. изменить свой костюм), выдавать сообщение «Ты проиграл» или «Здесь ходить нельзя» и т.д. Можно задать команду, которая будет перемещать героя в начало игры, т.е. в исходную точку. Варианты могут придумать сами дети. В начале игры также надо вернуть этим объектам исходный костюм.
Рис. 8, 9. Программирование препятствий.
Этап 6. Программирование кнопки финиш
По желанию можно создать кнопку «Финиш» и поместить ее в конце игрового поля. Кнопка «Финиш» программируется аналогично предыдущим объектам. Отличие будет в тех командах, которые будут выполняться при реакции на прохождение Спрайта. Например, можно задать «Говорить «Ты победил!» или «Переходи на второй уровень» и при этом кнопка может менять цвет или мигать и т.д. Здесь дети могут использовать свою фантазию и желание.
Рис. 10. Изменение кнопки «Финиш».
Рис. 11. Программа для кнопки «Финиш».
Заключение
Подобную игру можно создать за 1 урок или одно занятие. Практика показывает, что подобные задания дети выполняют с удовольствием и могут проявить фантазию или использовать более сложный набор команд для создания подобной игровой ситуации. При этом ученики не замечают, как знакомятся с программированием и таким важным моментом, как отладка программы, которая требует усидчивости, терпения и умения видеть и исправлять ошибки в своей программе.
Scratch действительно относится к группе мультимедийных развивающих сред программирования.
Как сделать крутую игру в Scratch (Скрэтч) за 10 минут
Думаешь, что на создание игр уходит очень много времени? А может, для этого нужно быть профессиональным программистом? Сегодня школа “Пиксель” докажет обратное и создаст вместе с тобой крутую игру всего за 10 минут!
ФОН ИГРЫ
Мы покажем вам, как в Скрэтч можно сделать игру-пазл. Для начала нарисуем фон будущей игры, например, в виде сцены. Нам необходимо нарисовать два прямоугольника и закрасить их с помощью заливки. Есть два способа нарисовать ровные прямоугольники:
СПРАЙТЫ ДЛЯ ИГРЫ В СКРЭТЧ
Теперь надо создать спрайты, которые будут участвовать в игре. Мы подготовили для вас пак готовых спрайтов, там находятся фрукты и их тени, их можно скачать по ссылке. Мы загружаем все свои спрайты и меняем их размеры, так как одновременно на игровом поле должно находиться 6 объектов: 3 вида фруктов и 3 тени. Для фруктов зададим значение 25%, а для их теней —40%.
Теперь давайте создадим табличку, которая будет информировать нас о победе. Для этого из галереи спрайтов мы вытаскиваем серую кнопку и подарок. Затем выделяем все элементы на подарке, копируем его с помощью клавиш Ctrl+C и вставляем, используя Ctrl+V, на спрайт таблички.
Снова выделяем его и подгоняем по размеру. Меняем цвета кнопки, делая ее более живой и радостной.
Теперь соединим оба элемента и сгруппируем их вместе. Можно сделать так, чтобы в конце игры эта табличка появлялась и закрывала почти весь экран, поэтому мы перемещаем ее в центр и подбираем масштаб 530%. Отлично, мы создали все необходимые спрайты, приступаем к программированию.
ПРОГРАММИРОВАНИЕ ИГРЫ SCRATCH (СКРЭТЧ)
Так как все наши фрукты обладают одинаковыми свойствами, мы напишем скрипт только для одного яблока, потом продублируем его на остальные фрукты и внесем небольшие поправки.
Теперь давайте постепенно перетаскивать наши скрипты на спрайт банана.
Вы можете усовершенствовать эту игру и сделать несколько уровней, которые будут усложнятся, или сделать ограниченное количество попыток. Все в ваших руках!
Сегодня мы с вами создали весьма интересный пазл, в который можно играть как одному, так и с друзьями. Если вас заинтересовало использование платформы Скрэтч, и вы бы хотели придумать и воплотить в жизнь свой личный проект, добро пожаловать в онлайн-школу программирования “Пиксель”.