GameMaker: Решение невозможности сборки проектов из редактора

Время от времени я наблюдаю вопросы о проблемах со сборкой любых проектов на GameMaker: Studio, что попадают под одно из двух описаний:

  1. Игра не собирается, редактор выдает "An error occurred, check compile form for more information", но во вкладке "Compile" никакого текста о ошибке нет
  2. Игра собирается, но вместо окна игры появляется окно, просящее выбрать файл:

Причина возникновения данных ошибок предельно проста – битые пути в настройках (меню: File - Preferences):

Интерес представляют "Temp directory", "Asset cache directory", и "Backup directory". Для данных путей есть несколько правил:

  • Не должны содержать кириллицу: Многое ПО не очень хорошо дружит с кириллицей в путях, особенно при нестандартной системной кодировке.
    Так что, если у вас в системе установлено русскоязычное имя пользователя, нужно будет указать пути на какое-нибудь другое местоположение.
  • Не должны указывать на корень диска: В особенности, системного диска - без разрешения администратора записывать в корень диска обычное ПО на современных версиях не может.
    По совпадению, расставлять сотни файлов в корне диска - странная идея. Не должны указывать на "защищенные" папки: Аналогично предыдущему пункту, Windows не позволяет случайным программам записывать данные в папку Windows, Program Files (см. UAC), или специфичные папки пользователей.

В случае "недоступности" путей, GameMaker либо не удается записать игровые файлы вовсе, либо файлы записываются (куда-то), но приложению для отладки игр передается нерабочий путь. Смена путей на общедоступные исправляет проблему.

Дополнительно:

  • Если у вас есть SSD, установка Temp\Cache directory на папку на нем может дать заметный прирост в скорости сборки больших проектов (что требуют создания множества временных файлов). Перенос самих проектов на SSD так же может помочь, но не забывайте о резервном копировании или контроле версий.
  • Если вы используете контроль версий (см. выше) для всех важных проектов, отключение автоматического резервного копирования ("Enable backup on save", "Enable backup on run/debug/create") так же даст прирост в скорости сборки (копирование всей папки проекта – дело медленное).

Похожие записи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *