PixelTread
Продукт

Практика языка GML на собственных скриптах GameMaker

01

Если вы учитесь по туториалу по языку GML, эта страница показывает, что добавляет к нему PixelTread. Агент читает ваши скрипты, вносит изменения через edit_file, показывая дифф для проверки, запускает команду сборки и читает официальное руководство GameMaker — всё в рамках вашего проекта. Уроки объясняют идеи. PixelTread применяет одну идею за раз к реальным файлам, показывает каждое изменение карточкой и ждёт вашего решения при использовании Ask first, чтобы вы продолжали учиться, а не просто вставляли код вслепую.

01

Редактирование файлов GML

Он читает скрипты и записывает изменения с помощью edit_file, затем показывает дифф изменённых строк до вашего подтверждения.

02

Запуск сборки

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

03

Чтение документации

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

Что PixelTread может сделать для вашего проекта

Каждое действие — это карточка, которую можно открыть

Каждый вызов инструмента появляется в чате в виде карточки с реальным результатом. Откройте карточку, чтобы увидеть полный вывод команды или дифф файла. Именно здесь вы принимаете решение: прочитайте изменённые строки, примите или отклоните их, и только затем запускайте сборку и тестирование в редакторе GameMaker.

Четыре задачи шаг за шагом

Привязка одного объекта к другому

Вы хотите, чтобы объекты прилипали друг к другу, например, шляпа следовала за персонажем. Сообщите агенту, о каких двух объектах идёт речь и где должна находиться шляпа. Он использует grep для поиска мест создания обоих объектов и read_file для открытия их скриптов. Затем edit_file сохраняет экземпляр цели в переменную и устанавливает x и y от цели со смещением в коде шага. Карточка показывает каждое изменение. Небольшое редактирование. В режиме Ask first вы читаете дифф, принимаете его и запускаете комнату, чтобы увидеть, остаётся ли шляпа на голове при движении персонажа. Если есть задержка в один кадр, попросите второй проход. Сохраните старую версию в папке, пока не убедитесь.

Принятие любого количества аргументов

Скрипт с неограниченным количеством аргументов требует argument_count и массива аргументов, которые предоставляет GML. Типичный туториал по gml показывает идею один раз, но ваш собственный скрипт сообщений имеет своих вызывающих. Попросите агента прочитать скрипт и каждый вызов с помощью grep, затем переписать функцию так, чтобы она перебирала получаемые аргументы. Карточка edit_file показывает дифф, а Shell запускает вашу команду сборки, чтобы вы увидели реальный код выхода. Каждый вызывающий остаётся видимым. Проверьте дифф, убедитесь, что каждый старый вызов всё ещё передаёт свои значения в том же порядке, и запустите игру один раз перед принятием изменения.

Планирование короткой катсцены

Начинающие часто спрашивают, как сделать катсцены, и один из ответов — небольшая машина состояний в объекте контроллера: переменная состояния, таймер и скрипт для каждого шага. Начните в режиме Plan only, где агент записывает список шагов и ничего не запускает. Прочитайте его, измените порядок, если хотите, затем переключитесь на Ask first, чтобы агент создал скрипт с помощью write_file и отредактировал контроллер с помощью edit_file. Вы принимаете решение на каждой карточке. Наконец, запустите сборку, проиграйте сцену с первого кадра и сравните то, что вы видите, с планом, который одобрили.

Исправление дрожания из-за дробных координат

Частой причиной дрожания движения являются нецелочисленные значения, которые отображаются в дробных позициях. Попросите агента найти код отрисовки с помощью grep для draw_sprite и прочитать скрипт движения с помощью read_file. Затем edit_file округляет позицию перед отрисовкой и показывает дифф. Shell запускает вашу команду сборки и сообщает её реальный код выхода. Легко читать. В режиме Ask first вы принимаете изменение построчно, запускаете игру, ходите туда-сюда несколько секунд и наблюдаете, мерцает ли спрайт. Если да, следующая карточка может рассмотреть код камеры. В любом случае карточка ведёт запись о том, что изменилось.

Что PixelTread не делает

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

PixelTread для Windows

Попробуйте на одном из ваших скриптов

Скачать PixelTread ↗