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

Головоломка-платформер нейросетью: собрать текстом

Головоломка-платформер собирается текстом, если вы назовёте одну загадочную механику и построите вокруг неё комнату. Zugo соберёт играбельную версию примерно за минуту, проверив её в песочнице, а дальше вы правите правила короткими сообщениями, пока комната не начнёт решаться ровно так, как задумано.

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

Чем головоломка-платформер отличается от обычного?

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

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

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

Какую механику выбрать для первой комнаты?

Одну. Хорошая головоломка-платформер обычно построена на единственном необычном правиле, а всё остальное в ней обычное. Переключатель, который открывает дверь. Ящик, который можно толкать и на который можно встать. Кнопка, которую нужно держать нажатой чем-то тяжёлым.

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

Чего делать не стоит, так это соединять три таких правила в первом же промпте. Комнату с гравитацией, призраком и ящиками невозможно ни отладить, ни объяснить игроку. Добавляйте вторую механику только тогда, когда первая работает и уже надоела.

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

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

Что написать в промпте?

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

Элемент Слабая формулировка Сильная формулировка
Движение «платформер» «вид сбоку, стрелки и прыжок пробелом, гравитация быстрая»
Механика «есть головоломки» «ящик можно толкать вбок и вставать на него»
Препятствие «двери» «дверь открыта, только пока кнопка чем-то придавлена»
Решение не сказано «правильный ход: толкнуть ящик на кнопку и пройти в дверь»
Сброс не сказано «клавиша R перезапускает комнату»
Прогресс не сказано «после двери начинается вторая комната сложнее»

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

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

Как это выглядит по шагам?

  1. Опишите одну комнату. Например: «2D-головоломка-платформер: герой ходит стрелками и прыгает пробелом. В комнате ящик, кнопка и закрытая дверь. Дверь открыта, пока на кнопке лежит ящик. Правильный ход: дотолкать ящик до кнопки. Клавиша R перезапускает комнату».
  2. Дождитесь проверенной сборки. Простая игра собирается примерно за минуту, и перед выдачей она запускается в песочнице: та, что не открылась, помечается неудачной.
  3. Решите комнату сами и попробуйте её сломать. Толкните ящик не туда, спрыгните в угол, зажмите две клавиши. Всё, что вы найдёте за две минуты, найдёт и игрок.
  4. Правьте по одной вещи. «Ящик не должен уезжать от лёгкого касания», «сделай кнопку шире», «верни ящик на место при перезапуске».
  5. Добавляйте комнаты по одной. Каждая новая комната это отдельная правка, и так вы всегда знаете, какое изменение что сломало.

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

Что чаще всего ломается?

Три вещи, и все три предсказуемы.

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

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

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

Как проверить, что комната действительно решается?

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

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

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

Как объяснить правило без единого слова текста?

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

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

Просить его надо явно: «первые три комнаты обучают механике по нарастающей, подсказок текстом не показывать». Как формулировать такие последовательные правки, разобрано в гайде как редактировать проект после генерации.

Сколько кредитов уйдёт?

Считайте по комнатам: сборка первой и по правке на каждую следующую.

Действие Кредитов
Сборка игры 6
Одна правка, в том числе новая комната 3
Сборка в режиме Hi-Fi 12
Правка в режиме Hi-Fi 6

Игра из пяти комнат с настройкой механики это примерно сборка плюс семь правок, около 27 кредитов. Pro стоит $25 в месяц и даёт 200 кредитов, то есть 33 сборки или 66 правок. Business стоит $99 в месяц.

Про Free скажем прямо: 5 кредитов меньше, чем стоит одна сборка, поэтому игра с нуля на бесплатном тарифе не начнётся. Клонировать готовый шаблон и посмотреть, как он устроен, можно без списаний.

Где границы у такой сборки?

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

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

И третье, самое важное для жанра: дизайн уровней остаётся человеческой работой. Генерация построит комнату по вашему описанию, но какая именно задача интересна, решаете вы. Zugo не заменяет команду разработки на большом проекте, зато код принадлежит вам и выгружается в GitHub, если игра перерастёт билдер.

С чего начать?

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

Стартовать удобно от готового движения, например от шаблона Hop Quest, клон которого бесплатен и не тратит кредиты. Собрать первую комнату можно там же, где любую другую сборку: описанием на zugo.dev.

← Все статьи