Перейти к содержимому

Как сделать аркадные гонки нейросетью: промпт и доводка

Опишите трассу, управление и условие проигрыша, и Zugo соберёт браузерную 2D-гонку: машина уклоняется от трафика на прокручивающейся дороге, скорость растёт, счёт идёт за пройденное расстояние. Сборка стоит 6 кредитов, играбельная версия обычно готова за минуту. Трёхмерная трасса и физика подвески так не появятся.

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

Какие гонки реально собираются текстом?

Те, где машина это точка на экране, а дорога это движущийся фон. Вид сверху или вид сзади с прокруткой полосы вверх работают одинаково хорошо, потому что оба сводятся к простым правилам: боковое движение игрока, встречные объекты, столкновение, счёт.

Что укладывается в один промпт: уклонение от трафика, сбор ускорителей, ограничение по времени на контрольных точках, рост скорости по мере набора очков, несколько полос движения. Всё это формальные правила, и генерация с ними справляется.

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

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

Что назвать в промпте для гонки?

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

Что назвать Зачем это нужно Пример формулировки
Вид и направление Задаёт всю схему движения «Вид сверху, дорога прокручивается вниз»
Управление Иначе будет неудобно с первой секунды «Стрелки влево и вправо, три полосы»
Препятствия Из них состоит вся игра «Встречные машины появляются случайно»
Рост сложности Без него скучно через полминуты «Скорость растёт каждые 15 секунд»
Конец забега Даёт цель и повод переиграть «Три столкновения, потом экран результата»

Хороший промпт целиком выглядит так: «Аркадная гонка, вид сверху, дорога из трёх полос прокручивается вниз. Машина двигается стрелками влево и вправо. Навстречу случайно появляются другие машины, столкновение отнимает одну из трёх жизней. Скорость растёт каждые пятнадцать секунд, счёт идёт за расстояние. Экран проигрыша с кнопкой перезапуска».

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

Как устроен цикл, который делает гонку интересной?

Из трёх частей, и если хоть одна отсутствует, игра ощущается пустой независимо от графики.

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

Вторая часть: выбор в каждый момент. Три полосы дают выбор, одна не даёт ничего. Если препятствия появляются так, что проезд всегда единственный, игра превращается в реакцию без решения. Просите разброс: «иногда свободны две полосы, иногда одна».

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

Что чинить первыми правками?

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

Симптом Что просить в правке
Управление вязкое «Машина должна менять полосу мгновенно, без инерции»
Слишком легко «Увеличь частоту появления встречных машин вдвое»
Слишком резко проигрываю «Добавь неуязвимость на одну секунду после столкновения»
Не видно скорости «Добавь полосы разметки, которые ускоряются вместе с игрой»
Нет повода переигрывать «Сохраняй лучший результат и показывай его на экране проигрыша»

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

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

Сколько стоит собрать и довести гонку?

Сборка стоит 6 кредитов, правка 3, режим Hi-Fi удваивает оба числа. Free даёт 5 кредитов единоразово, это чуть меньше одной сборки, поэтому первый прогон делается на платном тарифе. Pro стоит $25 в месяц и даёт 200 кредитов, Business стоит $99 в месяц.

Считать удобнее проектами, а не месяцами. 200 кредитов Pro превращаются в 66 правок, если тратить их только на доводку, а аркадная гонка доходит до приятного состояния примерно за десять или пятнадцать уточнений, а не за сотню.

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

Сократить путь помогают шаблоны: в Zugo их 25, из них 5 игровых. Взять работающий каркас и переделать его дешевле, чем начинать с пустого экрана. Порядок шагов для игры с нуля разобран в статье как создать игру нейросетью.

Чего гонка не соберётся с первого промпта?

Четыре честные границы.

  • Только 2D и только браузер. Объёмная трасса, шейдеры и физика уровня движка сюда не помещаются. Это рамка продукта, а не временное ограничение.
  • Соперники будут простыми. Машины, которые «умеют» ехать по трассе и бороться за позицию, это отдельная работа. Уклонение от трафика получается сразу, гонка с искусственным интеллектом противника нет.
  • Баланс остаётся за вами. Генерация соберёт работающие правила, но не решит, весело ли играть. Это проверяется живыми людьми, которые садятся играть.
  • Свой арт нужно приносить. Узнаваемый стиль появляется, когда вы подставляете собственные спрайты и звук, а не когда описываете их словами.

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

Что делать, когда гонка собралась?

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

Дальше публикуйте. Проект живёт на адресе вида имя-проекта.zugo.run, открывается на телефоне и на компьютере, ссылку можно бросить в чат и собрать первую реакцию за вечер. Куда выкладывать бесплатно, разобрано в статье где опубликовать игру бесплатно.

Если гонка понравится, соседний жанр собирается тем же способом и с той же логикой промпта: посмотрите бесконечный раннер, там та же прокрутка и другое ощущение. А самый короткий способ проверить всё это на своей идее: описать одну трассу на zugo.dev и сыграть в то, что вернётся.

← Все статьи