Днём я аналитик, вечером собираю заклинания: полгода делаю свою первую игру
Всем привет! Это мой первый пост на DTF. Я работаю дата-аналитиком, а в свободное время делаю Magic Survivors — игру, в которой нужно выживать среди толп врагов и собирать собственные комбинации заклинаний. Уже есть версия, которую можно попробовать, и короткий трейлер. С него и начну.
Мне всегда хотелось сделать свою игру. Но когда работаешь полный день, мысль о соло-разработке быстро превращается в подсчёт: сколько вечеров уйдёт на код, сколько на графику, сколько на всё остальное? Я долго откладывал, а примерно полгода назад решил попробовать с помощью ИИ. Движок выбрал Unity.
По ходу разработки менялись и инструменты: начинал с GPT-5.5, потом использовал GPT-5.6 Sol, сейчас — GPT-6 Astra. Нейросети стали большой частью работы над проектом. На скриншоте ниже — статистика уже со второго аккаунта в сервисе ИИ: первый аккаунт там мне заблокировали. Здесь набралось 4,7 миллиарда токенов — это общая статистика использования аккаунта.
Ради интереса прикинул, сколько такой объём мог бы стоить через API. Если условно пересчитать всё по стандартным тарифам GPT-6 Astra для короткого контекста — 90% входящих токенов и 10% ответов, без кэширования, — получится около 65 800 долларов. Это только пример для понимания масштаба, не мои реальные расходы: я использовал разные модели, а соотношение входа, ответов и повторно используемого контекста сильно влияет на цену. Точные затраты по одному этому счётчику не восстановить. Тарифы API для расчёта.
Хотелось не просто получить ещё один огненный шар
В основе — две игры, которые мне нравятся: Vampire Survivors и Magicraft. От первой взял идею выживания против орд, от второй — возможность повозиться с магией. Хотелось, чтобы между «нашёл заклинание» и «пошёл убивать врагов» было место для вопроса: а что будет, если собрать вот так?
В забеге ты двигаешься по арене, стараешься не оказаться в окружении, собираешь опыт и выбираешь улучшения. Но основная возня происходит с палочкой: у неё есть слоты, куда устанавливаются заклинания и модификаторы. Их можно переставлять и пробовать разные сочетания.
Само заклинание задаёт атаку, а модификатор меняет её поведение. Например, подходящий снаряд можно заставить пробивать врагов или рикошетить. Поэтому интересно не только найти что-то посильнее, но и понять, что хорошо работает вместе.
Палочки тоже со своими странностями
В игре много разных палочек, и у каждой свои характеристики и уникальные эффекты. Отличаются запас и восстановление маны, скорость стрельбы, количество слотов и то, как палочка ведёт себя в бою. Например, Посох Маны помогает восстанавливать ману всем твоим жезлам, Посох Резонанса снижает её расход, а Жезл Хаоса при получении заполняется случайными картами.
Есть даже палочка-миниган. Она очень быстро стреляет, с отдачей и большим разбросом, но у неё всего два слота — и расширить их нельзя. Так что вместо длинной цепочки заклинаний приходится выбирать, какие две карты туда поставить. Мне нравится, что смена палочки может заставить заново обдумать всю сборку.
Есть и ограничения: количество слотов, расход маны, её восстановление и перезарядка. Забить палочку всем, что понравилось, — ещё не значит получить удобную сборку. Нужно смотреть, как она ведёт себя в бою и хватает ли ей ресурсов.
По мере забега появляются новые варианты усиления. После неудачного захода тоже остаётся чем заняться: в игре есть постоянные улучшения и открытия между забегами. Мне нравится сам цикл: попробовать сочетание, увидеть его слабое место и в следующий раз собрать немного иначе.
Между забегами — Звёздный атлас
Ещё в игре есть большое дерево постоянной прокачки — Звёздный атлас. Оно выглядит как карта созвездий: выбираешь, куда двигаться по связанным узлам, и постепенно вкладываешь ресурсы в нужные улучшения.
Там есть прибавки к урону, здоровью, скорости передвижения, запасу и восстановлению маны. Есть и более крупные открытия: новые палочки, дополнительные слоты для палочек, которые поддерживают расширение, и возможность использовать больше палочек. То есть можно усиливать персонажа и одновременно открывать новые варианты сборок.
С графикой всё оказалось сложнее, чем я думал
Я плохой художник. Если совсем честно — рисовать я не умею. Поэтому сначала надеялся закрыть эту часть генерацией: казалось, что раз нейросеть может выдать красивую картинку, то уж с небольшим игровым спрайтом как-нибудь справится.
На практике генераторы картинок и ассетов, которые я пробовал, не дали подходящего результата для моей игры. Отдельная картинка могла нравиться, но собрать из таких картинок цельный набор игровых спрайтов у меня не получалось: качество и стиль слишком различались. Я тратил на попытки и исправления больше времени, чем рассчитывал. В какой-то момент устал и пошёл искать готовые ассеты на itch.io.
В итоге использую бесплатные ассеты с itch, а где нужно — немного правлю их вручную. Для меня это оказалось гораздо практичнее. Рисовать я от этого не научился, зато перестал упираться в попытки сгенерировать всё самостоятельно и смог вернуться к самой игре.
При этом от ИИ я не отказался: он по-прежнему помогает в разработке, а для промоматериалов я тоже использовал генерацию, в том числе для обложки тизера. Просто с игровыми ассетами мой опыт оказался совсем не таким удачным, как хотелось.
Уже можно попробовать
Magic Survivors сейчас в стадии активной разработки. Многое ещё может измениться: от отдельных механик и характеристик палочек до полного ребаланса игры. Но уже сейчас на itch.io доступны бесплатные сборки для Windows и macOS. Если вам нравится возиться с билдами и проверять их на толпе противников — буду рад, если заглянете.
Особенно интересно узнать, понятна ли сборка палочки при первом знакомстве, какие сочетания вам понравились и в какой момент стало скучно или непонятно. Я уже слишком долго смотрю на игру изнутри, поэтому свежий взгляд очень нужен.
И если интересно, как всё это делается по вечерам и в выходные с помощью ИИ, — спрашивайте. Могу рассказать, где он помог, где пришлось долго возиться и что сейчас сделал бы иначе.