Первый девлог стелс-игры

Введение

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

Мои цели в этой игре

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

Итак, у меня две основные цели:

  • Сделать 3D игру для портфолио
  • Показать все мои способности кода.

Во-первых, я хочу сделать 3D-игру для своего портфолио. Многие работодатели ищут кого-то с опытом работы в 3D-играх, поэтому важно иметь его в портфолио.

И вторая причина — показать все свои кодовые способности. В настоящее время в моем портфолио есть три общедоступных исходных кода (вы можете посмотреть их здесь). Первый был сделан на Unity (игровой движок); Второй с Python (язык программирования); И третий с Javascript (тоже язык программирования).

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

Проекты Python и Javascript хороши (за исключением нескольких структурных проблем в игре Python). Основная проблема с ними в том, что это простые игры, не требующие слишком много кода. Я закодировал основную логику игры на питоне на своем мобильном телефоне, чтобы вы поняли.

Поэтому мне нужна игра, чтобы показать мои истинные способности программиста игр, демонстрирующие все мои навыки рефакторинга и структурирования кода. И эта игра — игра-хамелеон, у которой средний срок (около 2–3 месяцев на прохождение), что позволяет мне показать свои способности.

Как я понял идею

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

  • Получить около 5 игровых тем
  • Проведите мозговой штурм по каждой теме в формате ментальной карты.
  • Обсудите идеи между двумя или более темами в формате ментальной карты.
  • Выбирайте лучшие идеи
  • Выберите одну из этих лучших идей для работы, а остальные заархивируйте.

Чтобы сделать карту разума, я использовал сайт Coggle.

Пример темы (реальный пример) был «Выбери путь»:

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

В результате получилось 17 полезных идей. Тот, который, как я думал, будет лучшим для этого проекта, был:

«Стелс-игра, в которой игрок является хамелеоном и должен маскироваться в зависимости от цвета окружающей среды, имея возможность выбирать цвета из палитры. В зависимости от выбранного цвета сложность врага меняется. В игре есть несколько уровней, на которых игрок переходит из точки А в точку Б, не будучи замеченным, и ему нужно выбрать правильный момент, чтобы изменить цвет и перейти в другое место».

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

Выбрав идею, я начал планировать игру.

Планирование

Первое, что я сделал, это поискал активы. У меня нет опыта 3D-моделирования, поэтому я искал модель-хамелеон и активы окружения (я выбрал Simple Forest Pack). К сожалению, я не нашел ни одной модели хамелеона, подходящей для моей игры. Итак, мне пришлось сделать свой собственный (не зная, как делать 3D-модели).

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

Несколько моментов, которые я хотел бы осветить, — это механика усиления и враги:

Начиная с бонусов. Я провел исследование и обнаружил, что хамелеоны едят насекомых. Поэтому я решил сделать насекомых, которые дадут игроку некоторое ускорение (например, увеличение скорости), как только игрок их съест.

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

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

Ну вот и все по плану. После этого я написал несколько задач по игровой механике (моя первая веха) и начал кодировать игру.

Кодирование

Первой механикой игрока, которую я закодировал, было движение. После этого я настроил камеру (используя Unity Cinemachine), затем я провел атаку и после этого запустил механику смены цвета.

Модель хамелеон

Как я уже говорил, я не знал, как делать 3D-модели. Итак, мне нужно было изучить хотя бы основы. И я сделал это с некоторыми видеороликами на YouTube и практиковался (пока я пытался сделать модель хамелеона). У меня было около 7 попыток, пока я не получил 3D-модель, которая достаточно хороша для использования:

Это точно не финальная версия, я еще буду ее улучшать. Это похоже на лучший заполнитель для использования (по сравнению с параллелепипедом, который я использовал в Unity).

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

Заключение

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

Это моя первая статья, поэтому, если у вас есть какие-либо советы или предложения, также не стесняйтесь делиться ими.

В любом случае, до свидания!👋

Изображения для этой статьи взяты с сайта Pixabay