Создать игру с нуля без знаний и опыта. Краткое руководство.
Всем привет, на связи Henj.
Недавно увидел на форуме тему "я ничего не умею, с чего мне начать создавать игру". А ведь всего чуть больше, чем год назад я пришел на форум с тем же запросом. В статье коротко расскажу с чего начать, чтобы получить первый результат уже совсем скоро.
Кто я?
Коротко - я создаю сессионную PVP онлайн игру. Для создания активно использую нейросети и в данный момент игра находится в раннем доступе на нескольких площадках.
https://henjtv.itch.io/syntheticeclipse для компа
https://www.rustore.ru/catalog/app/com.HenjTV.SyntheticEclipse для телефона на андроиде.
Иногда участвую в джемах. Процесс разработки часто стримлю на Твиче
Канал по игре тут, можете чекнуть
Ну а теперь к главному
С чего начать?
С идеи. Идея - это основа Вашей игры. Она может быть плохой, хорошей, подсмотренной у кого-то, но главное - сформированной. Без сформированной идеи Вам просто не с чего будет начать.
Говоря о сформированной идее я имею ввиду, что Вы можете четко и ясно описать хотя-бы несколько основных, конкретных механик своей игры и USP (основная фишка игры). Например: "я хочу сделать крутую игру" - это крайне плохая формулировка. А "Я хочу сделать крестики нолики, но с анимацией взрыва поля после победы" - это уже вполне себе подходит для реализации
Вредный совет: начинайте изучение программирования. Если вы хотите стать программистом - совет ок. Но к Вашей игре он вас не приблизит.
Описание своей игры
Так, мы определились с игрой в уме. Самое время - зафиксировать наши идеи. Как это сделать? Да как угодно. Вот Вам несколько отличных способов:
1. Взять листик и написать, нарисовать все, что будет происходить в Вашей игре (если она небольшая). Вполне удобно для начала.
2. Excalidraw - удобная рисовалка с приятным интерфейсом
3. Гугл таблицы
Да хоть на холодильнике маркером рисуйте. Главная цель этого шага - чтобы Вы еще раз посмотрели на свою идею со стороны, подкорректировали, поняли с чего начать.
Вредный совет: напишите ГДД по шаблону. ГДД нужно только ГДД-фетишистам, возможно они их собирают и страшно представить, что они с ними дальше делают. Это бесполезная трата времени для создания Вашей первой игры.
Выбор движка
Вообще обычно в советах это чуть ли не нулевой пункт. На самом деле игру можно сделать вообще без движка, а потом перенести на движок уже все что придумали. Движок - это, по сути, программа, в которой есть некоторые готовые решения для создания игр. Например физика объектов, шаблоны и т.д. На выбор у нас:
1. Браузерная игра - да, это лучший выбор для маленького прототипа. Браузерку можно создать вообще без движка и за короткие сроки, чтобы быстро проверить идею. Отличный выбор для новичков без опыта.
2. Unity - золотой стандарт инди игр. Есть все для создания игры любой сложности и с любыми механиками. В целом смело можете выбирать его.
3. Unreal - почти тоже самое, что Unity, но можно накрутить графики покрасивее. Но и ресурсов жрет побольше.
4. Godot - зачем-то существует.
5. Есть еще довольно много движков, все перечислять не буду. Обычно выбирают что-то из этого, если не работали раньше в каком-то ином.
Вредный совет: попробуйте несколько движков, почитайте описания, и поймете какой Вам больше всего подходит. Лично я считаю, что это трата времени. Почти все движки могут реализовать почти все что угодно. Есть некоторый вопрос удобства. Я бы поступил так: можно сделать в браузере - браузер. Нельзя сделать в браузере - Unity. Нельзя сделать в браузере и хочется супер-графику - Unreal.
Выбор IDE
IDE - собственно среда, в которой Вы пишите код. Их довольно много, но чтобы не мучать вас - берите VSCODE. Он хороший и удобный.
Регистрация в нейросетях.
В целом "топовые" нейронки сейчас генерят код плюс-минус на равных. Иногда выходят большие обновления и кто-то вырывается вперед, но для начала подойдет почти любая. Вот мой топ бесплатных:
1. Grok - хороший код, последнее время душат лимитами
2. ChatGPT - неплохой код, адекватные лимиты, иногда галлюцинирует.
3. Расширение GITHUB Copilot для VSCode - сейчас пользуюсь в основном им. Устанавливается прямо в VSCODE, редактирует код по запросу, хорошо держит контекст
Опять же уточню, что для мини-прототипов подойдет чуть ли не любая нейронка. Вышеописанные подойдут даже для средних проектов.
Декомпозиция игры и начало.
Для начала Вам нужно найти то, что вы расписали на холодильнике и выбрать из этого основу. То, от чего Вы будете отталкиваться. Это может быть основная механика, основной объект.
Например: этот пост я решил сделать после сообщения человека, который хотел создать свою первую игру в жанре RTS. Давайте попробуем. Что основа RTS? Правильно - база (или не правильно, кто последний раз видел RTS вообще?). Значит нам нужно будет построить базу. Промт примерно следующий:
Я делаю браузерную RTS игру и мне нужно сделать механику постройки базы. Добавь следующий функционал:
1. Кнопка, нажимая на которую я выбираю постройку базы
2. При нажатии на кнопку база прикрепляется к мышке и следует за ней, пока я не поставлю ее вторым нажатием мышки на какое либо место.
3. После установки базы я могу поставить еще одну базу.
4. Базу нельзя ставить на уже установленную базу "сверху". Между ними должен быть промежуток 2 пикселя.
5. Баз может быть сколько угодно построено
Копирую этот промт и через 2 минуты у меня готово строительство:
Дальше уже отталкиваюсь от результата - не нравится кнопка "построить базу" и вместо неё хочу картинку - пишу "поменяй кнопку на картинку" и т.д.
Главное - это двигаться от маленького, но основного и потихоньку наращивать проект.
Поиск команды.
Вообще это самая больная тема для любого проекта. По этому тут буквально пару советов:
1. Не ищите команду, если ничего нет вообще.
2. Лучше показывать, чем рассказывать. 1 картинка привлечет больше людей, чем 40 страниц ГДД.
3. Никто не сделает Вашу игру за Вас. Но если она достаточно хороша, то её могут делать ВМЕСТЕ с ВАМИ.
Заключение
Это, пожалуй, основные шаги, которые стоит предпринять, чтобы начать делать игры. Главное помнить - если Ваша игра не ААА проект, то это все еще игра. И все еще Ваша. Радуйтесь и гордитесь.
И помните, что 100% из тех людей, кто чего-то достиг - что-то делал. И 100% людей, кто ничего не делал - ничего не достиг.
Недавно я создал группу, где хочу объединить инди-разработчиков для помощи новичкам, общения и обмена опытом. Она совсем свеженькая, если интересно - можете подписаться:
Ну и по традиции - всем спасибо за внимание и хорошего дня!