Меню
Код
Код
#статьи
  • 26814

Как создать первую игру, не бросив дело на полпути

Если кто и знает толк в том, как бросать проекты, то это я. И в этой статье я расскажу, как не повторить мои ошибки.

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

Я начал создавать игры в 12–14 лет, когда изучал PHP. И сейчас, оглядываясь назад, я могу подтвердить правдивость этой поговорки.

Мои первые игры

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

Итак, моя первая игра была браузерной RPG (что ещё это могло быть, если я изучал PHP?). Сейчас от неё не осталось и следа, но, если постараться, в Google до сих пор можно найти картинки, которые я использовал в игре.

Евгений Кучерявый

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


Тогда, естественно, я считал, что игра просто обречена на успех. Ну вы сами подумайте:

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

Я даже сам рисовал некоторые спрайты в MS Paint — классика. Всё свободное время я тратил на эту игру и был очень воодушевлён. Я даже задавал вопросы о вероятностях и пропорциях на форумах. Мне говорили, что я ещё слишком молод для таких вопросов, но я не сдавался.

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

Спустя несколько недель, полных безуспешных попыток всё исправить, я опустил руки.

Ещё через несколько месяцев я вернулся к коду игры и ужаснулся. Мне стало настолько стыдно, что я удалил всё и на какое-то время оставил попытки создать эту игру.

Впрочем, ничто не могло удержать меня от попыток создать ещё что-нибудь. Теперь я точно был уверен, что закончу проект. Он был почти таким же, но отличался сеттингом: на этот раз я отказался от мечей и магии, выбрав космос.

Надо ли говорить, что и тут меня ждал провал?

Со временем я понял, что моя ошибка была в выборе PHP (ну а в чём же ещё?). Все серьёзные игры делаются на C++, значит, я тоже должен использовать его.

Строгая типизация, одинарные и двойные кавычки, библиотеки, объекты и, конечно же, чёртова консоль выводили меня из себя. Неужели язык должен быть таким сложным?

Попытки создавать графические интерфейсы ни к чему не привели, потому что Visual Studio сначала еле скачался, а потом еле работал. В итоге C++ я тоже, само собой, забросил.

Следующим в моём списке языков был JavaScript, с которым у меня сложилась точно такая же история.

То же самое было и со следующими моими играми.

В чём были мои ошибки

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

Будь эти игры меньше, я бы просто доводил их до конца и не переживал, что мой старый код будет висеть там и портить весь проект. Каждый раз я начинал сначала и думал: «Вот теперь у меня будет чистый и логичный код». Надо ли говорить, что каждый раз я ошибался?

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

Посмотрев на Super Meat Boy, можно подумать: «Вау, эти разработчики знают толк в играх!» Да, игра хорошая, но это не значит, что все игры от этих разработчиков были и будут хорошими. Например, Эдмунд МакМиллен, один из геймдизайнеров и художник этой игры, создал 44 игры, перед тем как у него получилось выпустить что-то действительно удачное.

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

Как избежать ошибок в начале пути геймдева

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

Например, в игре Baba is you нет продвинутой графики или большой свободы. Вы можете только ходить и двигать блоки. Даже изменение правил игры происходит с помощью перемещения слов (блоков). Это не помешало игре стать самой инновационной в 2019 году по версии Марка Брауна.

Многие более известные игры тоже сосредотачиваются на паре механик. К примеру, главной механикой игр о Марио является прыжок. Даже его прототипа из игры Donkey Kong звали Jumpman (прыгун).

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

Второй полезный совет — не отказывайтесь от готового контента. Вам не обязательно самостоятельно делать все модели, анимации, визуальные эффекты, писать музыку и так далее. Если вам интереснее писать код — пишите код. Если хотите заниматься моделями — делайте модели. Вероятность, что вы преуспеете во всём этом сразу, стремится к нулю.

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

Один из таких движков — Unity. Он предоставляет игрокам большие возможности для создания 2D- и 3D-игр, а также позволяет использовать для скриптов мощный и простой в изучении язык C#.

Освоить Unity вы сможете, например, на нашем курсе «Профессия Разработчик игр на Unity». В течение курса вы научитесь современным приёмам создания игр и даже выпустите первые проекты.

Курс

Профессия
Разработчик игр на Unity


Годичный учебный курс с полным погружением в профессию разработчика игр. Вы изучите основы геймдизайна, научитесь разрабатывать 2D-, 3D- и мобильные игры, освоите способы их монетизации и продвижения.

  • Первые полгода учёбы — без оплаты.
  • Неограниченный доступ к материалам курса.
  • Обучение на реальных задачах.
  • Карьерные консультации и помощь в трудоустройстве.

Понравилась статья?
Да