Как сделать игру в приложении скретч
Расскажем, как в визуальном редакторе Скретч создать клона популярной у детей игры Among Us.
IT-сфера становится неотъемлемой частью жизни детей, и уже в раннем возрасте ребята учатся кодить и создавать игры. В этом им помогают визуальные среды программирования. Одна из самых популярных сред — Scratch, созданная Массачусетским технологическим институтом специально для детей и начинающих программистов.
Скретч — это онлайн-среда, поэтому детям не нужно устанавливать приложения на компьютер, достаточно зарегистрироваться на сайте. На этой же платформе свою игру можно опубликовать, чтобы в нее сыграли пользователи со всего мира.
Подробнее об устройстве Скретч и других сред программирования для детей мы рассказывали в этой статье.
Красочный дизайн вдохновляет ребят делать свои проекты, а возможность делиться игрой на сайте и получать комментарии мотивирует искать новые идеи. Мы подумали, что лучше всего вовлечь детей в программирование через их любимые игры. Несмотря на внешнюю простоту программы, на Scratch можно создать игру любого жанра: шутеры, платформеры, симуляторы, аркады и др. А еще сделать клоны популярных игр: Among Us, Brawl Stars, Friday Night at Freddy’s и т. д.
Мы решили воссоздать часть игры Among Us и делимся с вами подробными инструкциями. Если вы хотите посмотреть весь урок в видеоформате, листайте ниже.
Для начала нужно заготовить материалы для игры: в основном это спрайты (картинки). Нам понадобятся изображения главного героя — командира экипажа — и фоновые заставки: объявление о запуске игры, карта, по которой будет перемещаться персонаж, а также фон для задания. Вы можете скачать наши материалы или нарисовать собственные в графическом редакторе внутри Скретч.
Мы запрограммируем появление фонов, движения персонажа и выполнение одного задания — нашему командиру предстоит починить проводку в коридоре у управления.
Запустим новый проект на Скретч и добавим все спрайты через кнопку «Загрузить спрайт». Растянем изображения, чтобы заполнить игровую сцену. Карту увеличим до максимальных размеров (у нас 731) и нарисуем желтый кружок — в этом месте персонаж будет приступать к заданию. Также изменим размер члена экипажа, чтобы он был пропорционален карте (25). Каждому фону даем название, чтобы было проще между ними ориентироваться: заставка, задание и т. д.
Если ваш ребенок любит компьютерные игры, познакомьте его со Scratch! Это визуальный язык программирования, на котором можно создавать любые игры: нужно просто добавить свои картинки и составить для них программу. Создавать игры на Scratch можно уже с 8 лет: в этой среде программа строится из блоков, напоминающих Lego.
Мы уже делились пошаговыми уроками по освоению Scratch для самых начинающих. Теперь мы окунемся в творчество и сделаем оригинальные проекты: воплотим популярную игру Among Us, создадим игру по мотивам "Звездных войн" и Minecraft и многое другое.
1. Охота за привидениями
Приступим к первой игре! В этом проекте игроку предстоит стрелять по привидениям и набирать баллы. Мы создадим фон, выберем спрайты и напишем для них программу.
2. Гонки на двоих
Гонки — классика игр! Мы создадим трассу, на которой будут соревноваться две машины. Кто окажется первым на финише? Давайте создадим программу и узнаем!
3. "Звездные войны"
С этой игрой дети проникнутся атмосферой "Звездных войн"! Мы запрограммируем космический корабль так, чтобы он стрелял во вражеские корабли. За каждого подбитого врага нам будут начисляться очки, за каждое поражение — отниматься жизни.
4. Головоломка Minecraft
Скретч интересен тем, что здесь можно воссоздавать свои любимые игры. Например, сделать мини-вселенную Minecraft. В этой игре нужно за наименьшее количество шагов добраться до сундука. Если игрок совершает ошибку, то снимаются жизни.
5. Among Us. Часть 1
Наверняка вы слышали от своих детей про игру Among Us (Амонг Ас), ведь за последний год она захватила всех! В ней члены экипажа должны вычислить самозванца среди своих и выполнить задания. Что может быть увлекательнее для ребенка, чем создать свою любимую игру? В 1-й части мы сделаем карту, запрограммируем героя и добавим ему задание с проводами.
6. Among Us. Часть 2
Во 2-й части мы усовершенствуем карту, добавим звуковые эффекты и создадим еще одно задание — на этот раз члену экипажа предстоит сбить астероиды.
7. Раннер
Раннер — еще один классический жанр игр. В нашем проекте герою нужно пробежать как можно дольше, не наткнувшись на призрака. При соприкосновении с призраком герой падает и у него отнимается жизнь. В конце можно посмотреть, какое время вы пробежали и попытаться побить свой рекорд.
8. Paint3D
С этим проектом мы протестируем возможности Скретч: соберем программу, которая будет создавать трехмерные фигуры. Будьте внимательны: мы зададим несколько переменных и добавим много условий. Будет интересно!
9. Мультиплеерная игра
Как сделать так, чтобы при перемещении игрока в одном браузере он двигался и в другом? Мы поможем ответить на этот вопрос, создав сетевую игру. А еще расскажем вам про облачные переменные и как их задавать в Скретч.
10. Игра Brawl Stars (Бравл Старс)
Как насчет того, чтобы создать популярную игру "Бравл Старс"? Да, даже такую непростую игру можно сделать на Скретч всего за 45 минут.
11. Как сделать игровое меню на Скретч
На Скретч игру или проект можно запускать разными способами. Самый распространенный — просто при нажатии на зеленый флажок. Но возможности Скретч настолько велики, что можно сделать полноценное игровое меню (лобби). Тогда в начале игры вы сможете выбирать, за какого персонажа играть.
12. Как сделать игру в Скретч за 15 минут
На этот раз мы сделаем игру в жанре платформер. Наш котик будет проходить препятствия, прыгать на батуте и ускоряться. Всего мы добавим в игру 6 уровней.
Как сделать Flappy Bird на Scratch
Любите забавную игру-платформер с птичкой? Мы покажем, как создать ее на Scratch! Наша птичка должна летать между препятствиями, не задевая их. За каждую пройденную преграду нам будут начисляться очки. Давайте полетаем?
Плейлисты с видеоуроками продолжают пополняться, подписывайтесь на наш YouTube-канал , чтобы следить за выходом новых видео и открывать для себя мир IT-технологий!
Если же вам нужен наставник, загляните в Школу программирования для детей “Пиксель”: запишитесь на полный курс по программированию в Scratch .
В основе Scratch лежит графический язык программирования. Для того чтобы создать скрипт (программу для каждого объекта) нужно просто совместить графические блоки вместе, перетаскивая готовые блоки из левого поля в поле создания скрипта (программы).
Блоки разбиты на несколько типов:
- Движение (синий) – содержит команды перемещения объектов;
- Внешность (фиолетовый) – команды изменения внешнего вида объекта;
- Звук (малиновый) – команды управления звуком;
- Перо (темно-зеленый) – команды рисования на экране;
- События (желтый) – команды управления, контролирующие операторы;
- Управление (оранжевый) - условные операторы и операторы циклов;
- Сенсоры (голубой) – датчики, команды управления мышью, определяющие расстояние и координаты;, числа (ярко-зеленый) — операции с числами, логические операторы, вычисления, команды сравнения;
- Операторы (ярко-зеленый) – операторы для переменных.
Блок «Перо» в новой версии надо добавлять из меню «дополнительные блоки».
На уроках информатики учащиеся постепенно знакомятся с командами различных блоков и их использованием. Это позволяет на одном из уроков перейти к реализации проекта по созданию мини-игры.
Во многих компьютерных играх игровое поле представляет собой площадку, разбитую на квадраты (как шахматная доска), и требуется собрать какие-либо предметы – это могут быть яблоки, монеты, звезды или что-то другое. Для краткости будем называть эту игру «Собери» (презентация).
Для создания игры нам необходимо проделать несколько этапов:
- Создание фона – игрового поля,
- Расстановка различных предметов (объектов) на игровом поле;
- Программирование главного героя;
- Программирование собираемых объектов;
- Программирование препятствий;
- Программирование финиша (финишной кнопки).
1 этап. Создание игрового поля
Для создания игрового поля мы должны войти в меню «Сцена», вкладка «Фоны» и с помощью инструментов для рисования «прямоугольник» и «линия» создать поле 8х8 клеток. (рис. 1). Такого размера вполне достаточно для создания первой игры. При желании можно добавить какой-либо текст (кнопка Т).
Рис. 1. Создание игрового поля.
2 этап. Расстановка игровых объектов
На втором этапе мы расставляем объекты разных видов (рис. 2 и 3). Для этого используем добавление спрайтов из библиотеки. Объекты в нашей игре будут двух видов – те, которые по условию надо собрать (например, яблоки), и те, которые будут являться препятствиями. Количество объектов можно задавать самостоятельно. Рекомендую размер объектов уменьшить до 50.
Рис. 2. Добавление объектов на игровое поле.
Рис. 3. Добавление объектов-препятствий на игровое поле.
3 этап. Программирование «героя»
В качестве героя можно оставить исходного спрайта-котенка под именем «Спрайт1». При желании можно выбрать (назначить) «героем» любого другого. Имя спрайта также можно изменить.
В начале игры наш герой должен встать в исходную точку, которую мы определяем с помощью координат. Поэтому команда должна выглядеть так:
Рис. 4. Задание начальной координаты для спрайта.
При необходимости можно задать и начальное направление – например, «повернуться в направлении 90».
Далее для того, чтобы наш спрайт ходил сразу по клеткам, мы должны запрограммировать кнопки управления его передвижением (стрелки вверх, влево, вправо, вниз), которые удобно расположены на клавиатуре.
Команды для кнопок должны выглядеть следующим образом:
Рис. 5. Программирование управляющих кнопок (стрéлок).
Таких команд должно быть четыре. Направление задается следующим образом: вверх – 0; вправо – 90; вниз – 180; влево – -90 . Длина шага определяется размером клеток на игровом поле. При размере поля 8х8 клеток шаг получается – примерно 50. Далее можно проверить, как ходит герой и подредактировать длину шага.
Этап 4. Программирование собираемых объектов
Для того, чтобы любой объект реагировал на прохождение «героя» и мог менять свою форму или исчезать, необходимо, чтобы он совершал небольшое движение. Это можно задать двумя способами:
1) небольшое движение «фишки» (например, «идти 1 шаг», «ждать 1 секунду», «идти -1 шаг» либо
2) «изменить размер на 5%», «ждать 1 секунду», «изменить размер на -5%».
Реакция на прохождение героя задается через ветвление «Если – то» с условием «касается Спрайт1» - команда «Спрятаться». Все команды запускаются по команде «Когда флажок нажат» и через цикл «Повторять всегда», так как мы не знаем, в какой момент игры наш герой коснется именно этой фишки.
Рис. 6. Команда для собираемых объектов.
Чтобы объекты можно было «восстановить» в начале игры задаем дополнительную команду:
Рис.7. Команда для «восстановления» объектов.
Эти команды надо задать для каждого собираемого объекта (яблока, монеты или звезды).
Этап 5. Программирование препятствий
На игровом поле должны также присутствовать объекты, которые будут усложнять игру, т.е. являться препятствиями. Чтобы они могли взаимодействовать с героем, когда он попадает на соответствующую клетку, необходимо им также задать небольшое движение (аналогично собираемым объектам).
Рис. 8, 9. Программирование препятствий.
Этап 6. Программирование кнопки финиш
По желанию можно создать кнопку «Финиш» и поместить ее в конце игрового поля. Кнопка «Финиш» программируется аналогично предыдущим объектам. Отличие будет в тех командах, которые будут выполняться при реакции на прохождение Спрайта. Например, можно задать «Говорить «Ты победил!» или «Переходи на второй уровень» и при этом кнопка может менять цвет или мигать и т.д. Здесь дети могут использовать свою фантазию и желание.
Рис. 10. Изменение кнопки «Финиш».
Рис. 11. Программа для кнопки «Финиш».
Заключение
Подобную игру можно создать за 1 урок или одно занятие. Практика показывает, что подобные задания дети выполняют с удовольствием и могут проявить фантазию или использовать более сложный набор команд для создания подобной игровой ситуации. При этом ученики не замечают, как знакомятся с программированием и таким важным моментом, как отладка программы, которая требует усидчивости, терпения и умения видеть и исправлять ошибки в своей программе.
Scratch действительно относится к группе мультимедийных развивающих сред программирования.
Пришла мне идея сделать для не компьютерной настольной игры «Битва Големов» приложение для Android смартфона. Иногда и такое в голову приходит. Захотелось сделать программу, которая бы заменяла для бесплатной Print&Play версии игры 20 карт Удачи и счетчик раундов, генерируя для двух игроков текущую Бонус карту (или ее отсутствие) и показывая номер раунда. Это экономило бы для тех, кто печатает игру, два листа А4 формата.
Но на чем делать? Хотелось чего то быстрого и не затратного в изучении. Из простых решений приходил только AppInventor, который я уже использовал для создания управления робота из металлического конструктора. Но потом решил — почему бы не попробовать что-то другое?
Поиск показал, что оказывается можно создавать приложения (увы не standalone, но сейчас с интернетом проблем почти нету) на… Scratch. Да, именно в этой «детской» среде программирования, которую я хорошо знал, разрабатывая до этого для нее роботов и методику.
Поэтому я решил сделать приложение для смартфона на… Scratch.
Первым делом надо было создать само приложение. Вы можете посмотреть его по ссылке.
Оно достаточно простое — две кнопки, которые по нажатию сбрасывают все или генерируют данные для следующего раунда, спрайты карт Удачи и генератор случайных чисел, который их выдает. Просто посмотрите код — я использовал несколько переменных и передачу сигналов. Все программирование заняло не больше часа. Самое главное (а это я понял увы не сразу) — вся графика в проекте должна быть растровой!
А теперь… МАГИЯ! Мне нужно превратить проект Scratch в apk файл для смартфона. И сделаю я это за два шага:
1 шаг — генерируем онлайн-приложение, вставив ссылку на проект в строку ввода на сайте проекта Phosphorus.
Вставляем ссылку на проект и нажимаем Package.
Для этого просто нажимаем Create Now и выбираем тип Website. Далее вставляем ссылку на сгенерированный онлайн-проект с вашим приложением, придумываем имя для приложения и добавляем дополнительную информацию — описание и иконку. Нажимаем Create и (вот тут вас могут попросить зарегистрироваться) магия работает — вам остается только открыть предложенную ссылку на смартфоне и подождать генерации и закачки на него apk-файла, который вы можете установить и дать попробовать другим. На самом деле в Appsgeyser можно делать более сложные вещи, но думаю тут вы сами разберетесь.
Читайте также: