Экспорт уровня / игры / бонусов / линеек в JSON

Можно экспортировать свои авторские игры или игры своего домена (только администраторы).

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

В примерах ниже число 3493 надо заменить на нужный вам ID игры.

https://qeng.org/game_export.php?gid=3493 - сохранить JSON всего, что есть в игре.

https://qeng.org/game_export.php?gid=3493&e=tasks - сохранить JSON всех уровней в игре.

https://qeng.org/game_export.php?gid=3493&e=game - сохранить JSON только вкладки описания/настроек игры.

https://qeng.org/game_export.php?gid=3493&e=gbonuses - сохранить JSON сквозных бонусов игры.

https://qeng.org/game_export.php?gid=3493&e=lines - сохранить JSON линеек игры.

https://qeng.org/game_export.php?gid=3493&e=task&n=1 - сохранить JSON задания с номером 1. Параметр 1 можно поменять на любой нужный номер задания.

Экспорт с идентификаторами

К любой из ссылок можно добавить &ids=1 - тогда в JSON попадут id уровней и id с number у кодов, бонусов и подсказок. Они нужны для точечного редактирования: по ним движок понимает, какой именно элемент вы правите.

{
    "task": {"id": 123, "number": 1, "working_name": "Название"},
    "codes": [{"id": 55, "number": 1, "name": "Сектор 1", "code": "a, b"}]
}
Переносим и тот, и другой. id адресует строку только внутри своей игры; в чужой игре такой строки нет, и импорт заводит её заново, а не отказывается. Так что json с идентификаторами заливается и в другую игру — просто id в нём оказываются следом происхождения, а не адресом.

Смысл ids=1 в другом: он нужен для точечного редактирования своей игры. Для бекапа и копирования достаточно обычного экспорта.