Как сделать пинг понг в стиме

Добавил пользователь Дмитрий К.
Обновлено: 05.10.2024

Создаем новый 2D проект Unity. Нам потребуется пара спрайтов, квадрат и круг, любых цветов. Из квадрата делаем, так сказать платформу, небольшую, которой надо отбивать шарик, назовем объект - Player, цепляем Box Collider 2D и размещаем с левого или правого края экрана. Затем дублируем объект, переименуем в Computer и размещаем на против, соответственно. Займемся спрайтом шарика, на него цепляем Circle Collider 2D и Rigidbody 2D, параметр Gravity Scale = 0, чтобы выключить гравитацию. Кстати говоря, в любой папке проекта, правый клик > Create > Physics2D Material со значениями Friction = 0, а Bounciness = 1, чтобы шарик отскакивал от объектов, не теряя скорости движения. Добавляем этот материал к Circle Collider 2D шарика.

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

Игрушка Ping Pong за пять минут

Для вывода текущего счета игрока и машины, добавим пару GameObject > UI > Text с именами PlayerScore и ComputerScore, разместите их в любом удобном месте экрана. Теперь напишем пару скриптов.

Скрипт PingPong, повесить можно например на камеру:

Итак. При клике ЛКМ мы запускаем шарик в одну из сторону и под углом, сторона и угол выбираются рандомно. ПКМ - функция сброса, здесь мы передаем значение типа float, но об этом позже. Переменная playerLimitY определяется опытным путем, всё зависит от размеров объекта. Поскольку для компутера не составит труда подстроится под любую скорость и всегда побеждать, мы его немного ограничиваем. Во-первых, реагировать он будет только когда шарик окажется на правой стороне экрана, если у вас он на левой стороне, то:

Кроме того, ограничиваем скорость второго игрока, то есть компьютера.

Скрипт Ball, вешается на шарик:

После того как шарик улетает за приделы экрана, мы обращаемся к функции Reset и отправляем текущее значение по X, если шарик был справа, то значение будет больше нуля, если слева, то меньше. Таким образом, мы определяем кому засчитать балл. Просто и не нужны дополнительные триггеры.

Lofi Ping Pong привлекает внимание уже тем, что это ритм-игра, ведь они давно куда-то ушли за пределы ПК-гейминга. А иногда так хочется понажимать кнопки клавиатуры в такт музыке. И наконец-то эта возможность предоставляется.

Lofi Ping Pong - медитация на горячем стуле — Игровые обзоры — DevTribe: инди-игры, разработка, сообщество

Сам процесс игры заключается в нажатии трёх кнопок в ритм музыке - нужная кнопка зависит от того, куда противник отбил мячик (это пинг-понг, не забыли?). Сверху экрана показывается наш прогресс - сколько отбитий мячика осталось до конца текущего трека. Пока что мне встречались не долгие уровни - не более полутора минут. Но этого хватает чтобы подогреть стул - игра не прощает ошибок. Вообще. Один промах - и весь прогресс текущего уровня сбрасывается. Это слишком сурово по отношению к игроку, который запустил медитативную игру. Всё же тут напрашиваются классические три жизни - прошёл уровень не потратив ни одну из них - получил больше очков/больший ранг.

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

Результаты уровня — Lofi Ping Pong - медитация на горячем стуле — Игровые обзоры — DevTribe: инди-игры, разработка, сообщество

Результаты уровня

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

Удивительно для игры такого жанра, но тут присутствует и сюжет. Подан он с стиле Hotline Miami - маски зверей что-то говорят и ничего не понятно. Впрочем, я ещё не прошёл игру до конца, и вникнуть в весь смысл происходящего пока не смог. Но выглядит всё это забавно и интересно.

Так же порадовала поддержка Дуалшока, с ним играть стало гораздо проще (так вот почему ритм-игры с ПК перебрались на приставки!) Работает даже вибрация и световая панель, что было очень приятно и неожиданно. А так как игра поддерживает режим сплитскрина, то не придётся ютится вдвоём за одной клавиатурой.

Lofi Ping Pong - медитация на горячем стуле — Игровые обзоры — DevTribe: инди-игры, разработка, сообщество

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

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

Нарисуйте красивый фон. Можете выбрать фон из библиотеки фонов, но обязательно нарисуйте внизу тонкий красный прямоугольник



Создайте спрайт Доски. Это просто узкий желтый прямоугольник.



Первый скрипт запускает Шар в полет, а второй следит за касанием Доски и красного цвета. Если Шар коснется Доски, то он изменит направление полета, а если Шар коснется красного, то наступит конец игры. Обратите внимание! Нигде на Сцене больше не должно быть красного цвета, только внизу! Сделайте вот такой скрипт для Доски. Она будет управляться с клавиатуры


Эта статья расскажет как сделать простую игру Пинг-понг. Этот урок для тех кто впервые знакомится с clickteam fusion 2.5, по этому все будет объяснятся подробно. Здесь Я описал лишь начало создания игры до основного действия, это далеко не полное руководство и полезно оно будет лишь новичкам. Статья создана с целью дать понимание работы программы, а конкретно:

  • Как настроить кадр (сцену игры)
  • Как сделать события и действия
  • Как установить и настроить тип поведения объектов
  • Как сделать игру для 2-х игроков
  • Как добавить жизни в вашей игре

Для начала создайте новый проект и в настойка кадра установите черный задний фон.

Ping Pong background

Теперь добавляем на сцену (в кадр) объекты для игры из библиотеки. Выберете себе в игру какие-то платформы для игроков и мячик (подходящие объекты можно найти в библиотеки Games/Miscellaneous/Game objects 2).

Ping Pong объекты для игры

Что бы развернуть платформу вертикально кликните по ней что бы попасть в редактор объекта и в редакторе нажмите кнопку Rotate и затем кнопку Another object. И по этому событию втыкаем такое же действие отскока мячика — Bounce, по аналогии с предыдущем событием.

Теперь снова запустите игру. Теперь мячик должен отскакивать от платформ.

Далее. Создаем событие ‘гола’ и уменьшения жизней.

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

Ping Pong настройка жизней

Ping Pong настройка количества жизней

Далее создаем новое событие ухода мячика за сцену вправо и влево. По этому событию сначала возвращаем мячик в центр кадра — Position->Select Position-> устанавливаем пунктирный квадратик в центр кадра.

Далее разбираемся кто забил гол. Если у вас первый игрок справа, то значит он забил если мячик ушел влево за сцену и наоборот.

По этому создаем событие ухода мячика за сцену вправо и к этому событию ставим действие — отнять жизни у Player 2. На пересечении с объектом Player 2 нажимаем правую кнопку мыши и выбираем событие Subtract from Number of Lives — вычесть жизней->в след. окне ставим 1 (или сколько там жизней вы хотите отнимать за пропуск мячика)

Ping Pong отнять жизни

По аналогии делаем гол для Player 2.

Если жизни кончаются у кого то из игроков то заканчиваем игру. Создаете событие объекта player 1 — When number of lives reaches 0 (когда количество жизней достигает нуля).

Ping Pong когда жизней ноль

Такое же событие делаете и для объекта player 2. И по обоим этим событиям ставим действие завершение проекта, конечно, игра должна заканчиваться надписью Game Over или You Win, а не завершением проекта, но это всего лишь пример.

В общем весь код (если так его можно назвать) должен выглядеть так:

Ping Pong код игры

Ну вот в принципе и вся вводная в Clickteam Fusion 2.5 для новичков. Я надеюсь эта статья дала вам примерное представление о том как создаются игры на движке Clickteam Fusion 2.5. Спасибо.

Эта статья расскажет как сделать простую игру Пинг-понг. Этот урок для тех кто впервые знакомится с clickteam fusion 2.5, по этому все будет объяснятся подробно. Здесь Я описал лишь начало создания игры до основного действия, это далеко не полное руководство и полезно оно будет лишь новичкам. Статья создана с целью дать понимание работы программы, а конкретно: Как настроить кадр (сцену игры) Как сделать события и действия Как установить и настроить тип поведения объектов Как сделать игру для 2-х игроков Как добавить жизни в вашей игре Для начала создайте новый проект и в настойка кадра установите черный задний фон. Теперь добавляем…

Читайте также: