Найти тему
IT

Будни разработчика Я.Игр. Девлог, часть 1: идея и старт проета

Приветствую вас в серии статей на тему создания игр для платформы Я.Игры. В этой серии я буду раз в неделю выкладывать свои успехи и неудачи за неделю. В качестве технологий я специально выбираю те технологии, которые не являются основными для меня, но при это на языке JavaScript.

Начал я с того, что захотел написать платформер, я уже делал платформер для хакатона в команде с еще одним крутым разработчиком, но тогда у нас были ограничены сроки и мы делали игру за 2 недели, но Яндекс.Игры удалили ее за маленькую активность. Это был простой платформер. На тот момент мы только знакомились с геймдевом и как итог, мы писали всю физику и управление сами с полного нуля и подключали какие-то неизвестные нам плагины. Короче все по заветам хакатона "тял-ляп и в продакшен".

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

Еще немного по игравшись с физикой получилось дойти до вот такого решения:

-2

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

-3

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

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

-5

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

-6

Далее я причесал код, сделал репозитория для проекта и свой первый коммит. К сожаления за неделю я не успел применить асеты для мира полностью, но время уже подошло к концу.

Итоги недели:

  • костяк для проекта, где можно рисовать карту через UI;
  • базовая физика;
  • управление персонажа через кнопки на компьютере;
  • платформы, которые передвигаются по горизонтали;
  • платформы на которые можно прыгнуть снизу;
  • фоновое изображение;
  • камера, которая следит за персонажем;
  • асеты для персонажа.

Подписывайтесь, через неделю будет следующий статус по проекту, впереди еще очень много планов :)