Оглавление:

Видеоигра "Система безопасности": 15 шагов
Видеоигра "Система безопасности": 15 шагов

Видео: Видеоигра "Система безопасности": 15 шагов

Видео: Видеоигра
Видео: Сталкерша ПРОБРАЛАСЬ в дом и СЛЫШИТ НАС через микрофон 2024, Ноябрь
Anonim
Изображение
Изображение

Вот как создать простой платформер в flowlab.io. В игру, используемую в качестве примера в этом руководстве, можно играть, а ее программы просматривать и редактировать (но не сохранять) по этой ссылке: https://flowlab.io/game/play / 1130006

Шаг 1: Шаг первый: создание главного игрока

Шаг первый: создание главного игрока
Шаг первый: создание главного игрока
Шаг первый: создание главного игрока
Шаг первый: создание главного игрока
Шаг первый: создание главного игрока
Шаг первый: создание главного игрока
Шаг первый: создание главного игрока
Шаг первый: создание главного игрока

Используйте редактор спрайтов, чтобы создать дизайн вашего плеера. Отсюда добавьте поведение в движении, поведение связки здоровья и, при желании, поведение при стрельбе снарядами. В наборе здоровья добавьте поведения, которые позволяют игроку получать урон от врагов и объектов. Ко всем этим действиям можно привязать анимацию.

^ Пример окончательного поведения персонажа игрока. Базовое движение поставляется в настраиваемом предварительно упакованном пакете, клавишам можно назначать анимацию и / или снаряды, здоровье сложное, поэтому оно хранится в отдельном пакете для целей организации. Это программирование выглядит сложным, но большая часть сложности здесь связана с использованием логических вентилей для определения того, что имеет приоритет при нажатии клавиш и возникновении анимации / действий.

^ Часть поведения этого игрового персонажа в отношении здоровья. Когда объект «вредит» персонажу игрока, поведение не запрограммировано на врага / объект, а на персонажа, где взаимодействие с врагом / объектом убирает часть «здоровья» игрока, а когда здоровье достигает нуля, поведение такое как пауза, так и окончание игры могут применяться.

^ Внешний вид объектов можно редактировать с помощью редактора пиксельной графики flowlab.io или загружая собственные изображения в редактор пиксельной графики flowlab.

^ В том же редакторе могут быть созданы анимации для использования этим объектом, например цикл ходьбы выше.

Шаг 2: Шаг второй: создание врагов | A: Ошибки

Шаг второй: создание врагов | A: Ошибки
Шаг второй: создание врагов | A: Ошибки
Шаг второй: создание врагов | A: Ошибки
Шаг второй: создание врагов | A: Ошибки
Шаг второй: создание врагов | A: Ошибки
Шаг второй: создание врагов | A: Ошибки

Используйте редактор спрайтов, чтобы создать дизайн вашего врага, в данном случае это ошибка. Отсюда добавьте поведения, чтобы заставить врага двигаться. Для этого врага мы создали набор поведения при непрерывном движении и поведения, которые позволяют снарядам и столкновениям над головой уничтожить его.

^ Отредактируйте поведение объекта после его создания, щелкнув объект и нажав «поведения»

^ Анимация и поведение, которые позволяют игроку стрелять или прыгать по жучку, чтобы уничтожить его.

^ Анимация, которая заставляет жука ходить взад и вперед. На самом деле он запрограммирован на непрерывное движение вперед и просто меняет направление на таймере. Посередине вы увидите «RayCast». Это программирование заставляет ошибку разворачиваться, если невидимый луч, который она проецирует, обнаруживает, что она вот-вот упадет со скалы.

Шаг 3: Шаг второй: создание врагов | B: Черви

Шаг второй: создание врагов | B: Черви
Шаг второй: создание врагов | B: Черви

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

^ Разница между этим врагом и ошибкой заключается в том, что мы создали набор здоровья врага, который вычитает фиксированное количество из значения, которое мы назначаем червю (здесь 3), когда он касается снарядов и столкновения над головой, удаляя червя, когда это значение достигает ноль, тем самым дав червю 3 здоровья. Два поведения в нижнем левом углу создают неосязаемую «-1», генерируемую под случайным углом вокруг червя при попадании в него: это позволяет игроку знать, что они наносят урон червю.

Шаг 4: Шаг второй: создание врагов | C: Вирусы

Шаг второй: создание врагов | C: Вирусы
Шаг второй: создание врагов | C: Вирусы

Используйте редактор спрайтов, чтобы создать дизайн своего вражеского вируса. Добавьте уже сделанный вами набор здоровья врага, который позволяет вирусу получать урон от снарядов и столкновений над головой, увеличивая количество здоровья, которое у него есть, до 4, чтобы сделать его более опасным. Вместо того, чтобы снова добавлять набор непрерывного движения, мы создали новый набор для другого типа движения.

^ В этот набор движений мы добавили поведения, которые заставляют вирус преследовать игрока, когда он находится на уровне с ним. Мы сделали это, используя «Raycast», то же самое, что не позволяет врагам убегать со скал в непрерывном движении. В этом случае, если невидимый луч, посланный вирусом, обнаружит игрока, вирус будет двигаться в этом направлении.

Шаг 5: Шаг второй: создание врагов | D: Боссы системы безопасности

Шаг второй: создание врагов | D: Боссы системы безопасности
Шаг второй: создание врагов | D: Боссы системы безопасности
Шаг второй: создание врагов | D: Боссы системы безопасности
Шаг второй: создание врагов | D: Боссы системы безопасности
Шаг второй: создание врагов | D: Боссы системы безопасности
Шаг второй: создание врагов | D: Боссы системы безопасности

Используйте редактор спрайтов, чтобы создать дизайн босса вашей системы безопасности. Отсюда добавьте набор здоровья врага, который позволяет боссу получать урон от снарядов, давая ему 35 единиц здоровья, поскольку он является основным врагом. В том же наборе добавьте поведение уничтожения, которое позволяет боссу отбрасывать ключевой объект бэкдора при уничтожении (подробнее о ключе будет рассказано позже). Затем добавьте поведение движения на основе raycast, как у вируса, чтобы босс двигался к игроку. Теперь мы хотим, чтобы босс появлялся несколько раз, но с каждым разом сложность увеличивалась. Вместо того, чтобы создавать несколько разных объектов, которые выглядят как босс, но с немного измененным поведением, мы будем каждый раз использовать один и тот же объект босса и включать поведения, которые увеличивают сложность босса, которые активируются позже. Мы делаем это с помощью функций «сообщение» и «почтовый ящик».

^ Мы хотим, чтобы на определенных уровнях активировалось определенное поведение, поэтому сначала мы создаем новый объект за кадром для каждого уровня. Вверху находится объект 3 уровня.

^ Добавьте поведения, чтобы каждый раз при запуске этого уровня только что созданный объект отправлял сообщение всем объектам, в которых вы хотите активировать поведение, зависящее от уровня, в данном случае боссу. Объект уровня 3 отправляет сообщение с меткой «lvl 3». Не имеет значения, что говорится в сообщении, просто то, что почтовый ящик на принимающем объекте совпадает с ним.

^ Это часть программирования босса. Когда почтовый ящик получает «lvl1» от объекта уровня 1, он активирует поведение, которое заставляет босса атаковать игрока ударами, которые выпускают короткие слабые ударные волны, пока он находится на уровне 1.

^ Когда почтовый ящик получает «lvl2» от объекта уровня 2, он активирует поведение, которое заставляет босса начать стрелять снарядами, пока он находится на уровне 2, чего он не делал на уровне 1, в то время как поведение уровня 1 остается неактивным..

^ Когда почтовый ящик получает «lvl 3» от объекта уровня 3, он активирует поведение, которое заставляет босса стрелять более крупными, более опасными снарядами, пока он находится на уровне 3.

Поскольку вам нужно создавать новый объект на каждом уровне, чтобы это работало, сначала может показаться, что объем работы такой же, как и при воссоздании босса каждый раз, но гораздо проще запрограммировать объект для отправки другого сообщения, чем он заключается в том, чтобы каждый раз копировать базовое программирование босса. Что еще более важно, объекты уровня, которые вы создаете, могут отправлять сообщения нескольким объектам, поэтому вы можете использовать их для создания зависимого от уровня поведения для любого объекта, который вы хотите.

Шаг 6: Шаг третий: создание факторов окружающей среды | A: шипы

Шаг третий: создание факторов окружающей среды | A: шипы
Шаг третий: создание факторов окружающей среды | A: шипы

Используйте редактор спрайтов, чтобы создать дизайн своего шипа. Отсюда снимите флажки с подвижных и разрешите вращение в меню редактора.

^ Сам шип не имеет поведения. Поведение шипа для повреждения или удаления игрока находится в наборе здоровья игрока.

Шаг 7: Шаг третий: создание факторов окружающей среды | B: Логические бомбы

Шаг третий: создание факторов окружающей среды | B: Логические бомбы
Шаг третий: создание факторов окружающей среды | B: Логические бомбы
Шаг третий: создание факторов окружающей среды | B: Логические бомбы
Шаг третий: создание факторов окружающей среды | B: Логические бомбы

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

^ Если игрок попадает в определенное расстояние от бомбы или стреляет в нее снарядом, воспроизводится анимация (которая действует как задержка для бегства игрока), тогда бомба извлекает свои собственные координаты x и y, удаляется и в этих координатах (с некоторыми значениями, добавленными нами, чтобы немного сместить местоположения) появляются три других объекта, которые выглядят как взрывы, а затем удаляются.

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

Шаг 8: Шаг третий: создание факторов окружающей среды | D: +2 здоровья

Шаг третий: создание факторов окружающей среды | D: +2 здоровья
Шаг третий: создание факторов окружающей среды | D: +2 здоровья

Используйте редактор спрайтов, чтобы создать дизайн своего +2 здоровья. Отсюда снимите щелчок на подвижных полях и включите вращение и добавьте поведение уничтожения, которое удалит объект из игры, как только игрок столкнется с ним.

^ Единственное поведение объекта +2 здоровья заключается в том, что он удаляется после того, как игрок прикасается к нему (не показано). Так же, как объекты, которые наносят урон игроку, поведение, которое заставляет объект +2 влиять на здоровье игрока, находится в наборе здоровья игрока. Однако вместо того, чтобы столкновение с объектами вычиталось из значения здоровья игрока, столкновение с объектом +2 добавляет 2 здоровья игроку.

Шаг 9: Шаг третий: создание факторов окружающей среды | E: Платформы

Шаг третий: создание факторов окружающей среды | E: Платформы
Шаг третий: создание факторов окружающей среды | E: Платформы

Из-за эстетики, к которой мы стремились, мы не могли пойти обычным путем для платформ: создать дизайн из одного блока, который вы можете выстраивать или складывать столько раз, сколько необходимо для создания платформ разных форм и размеров.

^ Поэтому мы создали четыре разных объекта, которые были платформами разной длины (длинные, средние, короткие и самые короткие), состоящие из изображений текста, загруженных в редактор пикселей.

Шаг 10: Шаг третий: создание факторов окружающей среды | F: платформы-ловушки

Шаг третий: создание факторов окружающей среды | F: платформы-ловушки
Шаг третий: создание факторов окружающей среды | F: платформы-ловушки
Шаг третий: создание факторов окружающей среды | F: платформы-ловушки
Шаг третий: создание факторов окружающей среды | F: платформы-ловушки
Шаг третий: создание факторов окружающей среды | F: платформы-ловушки
Шаг третий: создание факторов окружающей среды | F: платформы-ловушки

Мы создали два типа ловушек.

^ Первый по внешнему виду идентичен самой короткой платформе и имеет очень простое программирование. Через определенное время после того, как игрок коснется ее, платформа удалит себя, выпуская игрока, если он все еще стоит на ней.

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

^ Активированная ловушка

Шаг 11: Шаг третий: создание факторов окружающей среды | G: Межсетевые экраны

Шаг третий: создание факторов окружающей среды | G: Межсетевые экраны
Шаг третий: создание факторов окружающей среды | G: Межсетевые экраны

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

^ Стена, созданная объектами межсетевого экрана.

Шаг 12: Шаг четвертый: создание целей | A: Уведомления об уровне

Шаг четвертый: создание целей | A: Уведомления об уровне
Шаг четвертый: создание целей | A: Уведомления об уровне
Шаг четвертый: создание целей | A: Уведомления об уровне
Шаг четвертый: создание целей | A: Уведомления об уровне

Уведомления - это хороший способ сообщить игроку некоторую информацию о том, что он делает, или дать ему технические инструкции. Здесь снова в игру вступают зависящие от уровня объекты, которые были созданы для отправки сообщений боссу. Чтобы создать уведомления, специфичные для уровня, попросите объект, специфичный для уровня, отправить сообщение объекту, который появляется на этом уровне (в данном случае текст, перед которым появляется игрок).

^ Когда этот объект получает сообщение для каждого уровня, поведение этого почтового ящика активируется, показывая разные уведомления в зависимости от уровня.

^ Уведомления, которые появляются на первом уровне, дают некоторую информацию о настройке («КОМАНДА ЗАПРОСИТЬ ОТКРЫТЬ» и «Начать взлом»), инструкции о том, как двигаться, и сообщают игроку, что существует несколько уровней, и они находятся на уровне 1.

Шаг 13: Шаг четвертый: Создайте цели | B: Бэкдор

Шаг четвертый: создание целей | B: Бэкдор
Шаг четвертый: создание целей | B: Бэкдор

Создайте объект и скопируйте внешний вид брандмауэра, но мы дадим ему другое поведение. Затем он размещается на уровне земли брандмауэра в конце уровня. Это объект, который отправит игрока на следующий уровень.

^ Для программирования бэкдора требуется переключатель. Переключатель установлен в положение «выключено». Это не позволяет игроку перейти на следующий уровень, просто пробежав мимо босса и коснувшись замаскированного бэкдора. Когда дверь получает сообщение от ключа (упомянутого ниже) для разблокировки, переключатель включается, и воспроизводится анимация, показывающая бэкдор. Теперь, когда игрок коснется двери, он будет отправлен на следующий уровень.

Шаг 14: Шаг четвертый: создание целей | C: ключ

Шаг четвертый: создание целей | C: ключ
Шаг четвертый: создание целей | C: ключ

Когда босс каждого уровня побежден, он удаляет себя и вместо него создает ключ.

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

Шаг 15: Шаг четвертый: создание целей | D: Победа

Шаг четвертый: создание целей | D: Победа
Шаг четвертый: создание целей | D: Победа

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

^ Появится объект с надписью «Безопасность отключена» с анимацией загрузки точек. Таймер останавливает анимацию по прошествии заданного времени, что запускает другую анимацию с надписью «Загрузка документов» с точками загрузки и одновременно запускает другой таймер. Когда этот таймер заканчивает работу, он останавливает анимацию, удаляет объект и порождает картинку, на которой изображена последняя часть головоломки, которую игрок должен решить для выхода из комнаты для побега.

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

Рекомендуемые: