Редактируйте в браузере, запускайте в десктопе: единый цикл без путаницы с версиями

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

Этот материал входит в серию «Начало работы» — День 5, Неделя 1, Месяц 2.

Одна карточка — три версии данных

Вчера вы подключили папку на компьютере к облачному проекту. А сегодня кто-то изменил карточку Fire Extinguisher в браузере, вы нажали Play в Godot и обнаружили, что урон в игре остался прежним.

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

Двусторонняя синхронизация: изменения приходят в обе стороны

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

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

Файлы остаются в том же формате, их можно хранить в git и читать без учётной записи в приложении.

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

  • «Каждые 30 секунд» — удобно, когда проект быстро меняется и правки появляются постоянно.
  • «Каждую минуту» — хороший вариант на каждый день.
  • «Каждые 5 минут» — подойдёт для размеренной индивидуальной работы.
  • «Нет» — синхронизация будет запускаться только вручную.

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

Настройки синхронизации с интервалом автосинхронизации, кнопкой «Синхронизировать сейчас», активным статусом «Синхронизация активна» и кнопками «Приостановить»/«Возобновить»

Как работает весь цикл

Теперь объеденим браузер с самой игрой. В проекте Dead Mall уже настроен автоэкспорт: коллекция экспортируется в папку проекта Godot и обновляется при каждом сохранении. Если добавить к этому синхронизацию, процесс происходить вот так:

  1. Вы меняете данные в браузере. Например, в рабочем пространстве кто-то увеличивает урон Fire Extinguisher с 4 до 6.
  2. Синхронизация передаёт изменение на компьютер. Правка появляется в локальной папке DeadMall — у той же карточки, в том же свойстве и файле.
  3. Автоэкспорт обновляет файл. После сохранения элемента срабатывает настроенный экспорт, и в cards.json появляется новое значение — "damage": 6.
  4. Движок загружает обновлённые данные. Godot читает res://cards.json и применяет новое значение при следующей загрузке сцены.

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

Совместная работа над игровым дизайном

Синхронизация помогает поддерживать одинаковые данные, а комментарии сохранят обсуждение рядом с нужными объектами.

Откройте вкадку в рабочем пространстве, доступно:

  • «Написать сообщение...» — подсказка в поле для комментария.
  • «Добавить комментарий» — возможность оставить отзыв, который останется привязан к конкретному элементу.
  • @упоминания — чтобы привлечь к обсуждению нужного человека.
  • Уведомления «Новый комментарий» и «Новое упоминание» — чтобы не приходилось заново просматривать весь проект в поисках изменений.
Добавить комментарий

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

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

  • «Какая версия актуальна?» — вместо сообщений коллегам проверьте статус синхронизации.
  • «Игра уже использует мою правку?» — сохраните изменения, дождитесь синхронизации и автоэкспорта, а затем перезагрузите сцену.
  • «Что именно просили изменить в этой карточке?» — откройте связанный с ней комментарий.

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

Что дальше: превратить работу в наглядный процесс

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

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


FAQ

Чем двусторонняя синхронизация отличается от обычной выгрузки?

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

Какой интервал автосинхронизации выбрать?

Для большинства команд подойдёт интервал в одну минуту. Если изменения появляются очень часто, выберите 30 секунд; если работаете в одиночку и в спокойном темпе — пять минут. А когда результат нужен немедленно, используйте «Синхронизировать сейчас».

В каких случаях синхронизацию стоит приостановить?

Например, когда вы подбираете баланс игровых параметров и хотите отправить в облако только итоговые значения, а не каждую промежуточную попытку. Ещё один случай — переключение между ветками git, когда временные изменения в файлах не должны сразу попадать в облако. Нажмите «Приостановить», а когда будете готовы продолжить — «Возобновить». Если нужно заново согласовать обе стороны, выберите «Пересинхронизировать полностью».

Что делать, если интернет пропал во время синхронизации?

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

Запустится ли автоэкспорт после синхронизации автоматически?

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

Нужна ли подписка для синхронизации?

Синхронизация облачного проекта с десктопным приложением входит в облачное рабочее пространство PRO: она доступна в течение бесплатного 30-дневного пробного периода, а затем оплачивается по количеству мест. Если вы работаете только с локальным проектом и не подключаете облако, это ограничение вас не касается.

Можно ли пользоваться комментариями в десктопном приложении?

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

Поделиться:
Назад к блогу