Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
|
ua:authors_main:admin_api:admin_api_import_game [2023/04/15 20:39] admin создано |
ua:authors_main:admin_api:admin_api_import_game [2026/06/11 22:39] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | authors_main:admin_api:admin_api_import_game | + | {{indexmenu_n>2}} |
| + | ===== Імпорт гри з JSON ===== | ||
| + | ===== Інструменти імпорту ===== | ||
| + | Імпорт гри або її частин з її JSON можна зробити трьома способами: | ||
| + | |||
| + | - Вставити потрібний JSON на сторінку https://qeng.org/import_tasks.php, зазначивши айді гри та натиснувши "Імпортувати". Це саме посилання також доступне з пункту меню "Імпорт завдань" на сторінці редагування гри. | ||
| + | - В редакторі конкретного завдання переключити режим редагування на JSON (кнопка JSON в панелі редагування) і вставити туди JSON-код одного рівня. Це дозволяє швидко оновлювати налаштування, коди, бонуси та підказки конкретного рівня. | ||
| + | - (варіант для програмістів) Відправити POST запит на https://qeng.org/import_tasks.php?gid=<ваш айді гри>&json=1, в якому у body буде коректно зформований JSON обʼєкт. Для автентифікації необхідно отримати cookie з запиту на авторизацію, про що детально описано тут: [[ua:authors_main:admin_api:api_embed_engine|Вбудовування движка в інші сервіси]] | ||
| + | |||
| + | ===== Варіанти об'єктів для імпорту ===== | ||
| + | |||
| + | Кожен об'єкт, який можна імпортувати, можна експортувати для отримання його структури в поточній грі, як описано в розділі [[ua:authors_main:admin_api:admin_json_export|інструкцій експорту]]. | ||
| + | |||
| + | ==== Заливка нових рівнів ==== | ||
| + | Якщо необхідно додати НОВІ рівні в гру, то JSON буде списком з одного або кількох рівнів, розділених комами. Щоб рівень додався, а не оновився існуючий, він повинен НЕ мати поля number всередині секції налаштувань task. Опис структури рівня [[ua:authors_main:admin_api:admin_api_json#приклад_рівня_цілком|тут]]. | ||
| + | |||
| + | ==== Редагування існуючих рівнів ==== | ||
| + | Якщо необхідно оновити ІСНУЮЧІ рівні в грі, то JSON буде списком з одного або кількох рівнів, розділених комами, причому поле number в секції налаштувань task має бути передано (відповідає номеру рівня, який редагується). Опис структури рівня [[ua:authors_main:admin_api:admin_api_json#приклад_рівня_цілком|тут]]. | ||
| + | |||
| + | Налаштування гри з секції task, якщо присутні в JSON - значення в двигуні будуть замінені на нові. Якщо поля відсутні в наданому JSON - то вони будуть залишені як було. | ||
| + | |||
| + | Для інших секцій (codes, bonuses, hints), якщо секція присутня в JSON - то вона повністю замінить існуючу. Якщо відсутня - то секція залишається як була. | ||
| + | |||
| + | ==== Заливка всієї гри ==== | ||
| + | Є можливість залити всю гру з JSON цілком. Для цього JSON має бути повним JSON гри, як описано на сторінці [[ua:authors_main:admin_api:admin_api_json#приклад_всієї_гри_цілком|опису структури JSON]]. Також в JSON необхідно додати поле ''%%"delete_all_tasks": 1%%'', щоб видалити всі існуючі рівні та перезалити гру заново, наприклад: | ||
| + | <code JavaScript [enable_line_numbers="false"]> | ||
| + | { | ||
| + | "game": { | ||
| + | "name": "#New Unnamed Game 2", | ||
| + | }, | ||
| + | "tasks": [{"task": {"number": 1, "working_name": "Назва"}, "codes": [], "bonuses": [], "hints": []}], | ||
| + | "gbonuses": [], | ||
| + | "lines": [], | ||
| + | "delete_all_tasks": 1, | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | Налаштування гри з секції game, если присутні в JSON - значення в двигуні будуть замінені на нові. Якщо поля відсутні в наданому JSON - то вони будуть залишені як було в грі раніше. | ||
| + | |||
| + | Для інших секцій (gbonuses, lines), якщо секція присутня в JSON - то вона повністю замінить існуючу. Якщо відсутня - то секція залишається як була. | ||
| + | |||
| + | ==== Заливка налаштувань гри ==== | ||
| + | В JSON потрібно передати тільки структуру налаштувань гри, як описано на [[ua:authors_main:admin_api:admin_api_json#налаштування_гри|сторінці структури JSON]]. | ||
| + | |||
| + | ==== Заливка сквозних бонусів ==== | ||
| + | В JSON потрібно передати тільки структуру глобальних бонусів, як описано на [[ua:authors_main:admin_api:admin_api_json#наскрізні_бонуси|сторінці структури JSON]]. | ||
| + | |||
| + | ==== Заливка лінійок ==== | ||
| + | В JSON потрібно передати тільки структуру глобальних бонусів, як описано на [[ua:authors_main:admin_api:admin_api_json#лінійки|сторінці структури JSON]]. | ||
| + | |||
| + | ===== Використання ШІ (чат-ботів) для створення та редагування рівнів ===== | ||
| + | |||
| + | Сучасні чат-боти (ChatGPT, Claude, Gemini та ін.) чудово справляються з генерацією та редагуванням рівнів, кодів, підказок та бонусів у форматі JSON для двигуна qeng.org. | ||
| + | |||
| + | Готовий системний промпт для налаштування чат-бота ви можете знайти в розділі: [[ua:authors_main:authors_ai|Використання ШІ для створення завдань]]. | ||