From 8f6d0c26c1eca395d678101ed585b6a5de20fce2 Mon Sep 17 00:00:00 2001 From: iisaev Date: Sat, 17 Oct 2026 14:30:13 +0000 Subject: [PATCH] Game collections: cthangover (the full game), vn_starter_novel entry MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - collections/cthangover.json: the main game as a "game" collection — the story with characters, quests, items and cooking, both battle cores, recruitment, Live2D and the developer tools; entry scene start_scene, battle.core = card_battle, cover, en/ru texts. - vn_starter_novel: entry scene and battle core settings; the story block pulls starter_party, the battle block pulls card_battle. --- collections/cthangover.json | 110 ++++++++++++++++++++++++++++++ collections/vn_starter_novel.json | 8 ++- 2 files changed, 116 insertions(+), 2 deletions(-) create mode 100644 collections/cthangover.json diff --git a/collections/cthangover.json b/collections/cthangover.json new file mode 100644 index 0000000..ee7b2e8 --- /dev/null +++ b/collections/cthangover.json @@ -0,0 +1,110 @@ +{ + "id": "cthangover", + "kind": "game", + "name": "Cthangover", + "author": "ct", + "version": "1.0.0", + "description": "The full game: the visual novel story with characters, quests, items and cooking, turn-based battles with card and Final Fantasy style cores, recruitment, Live2D avatars and the developer tools.", + "cover": "mod.png", + "entry": { "scene": "start_scene" }, + "settings": { "battle.core": "card_battle" }, + "tags": ["novel", "rpg", "cards", "full"], + "locale": [ + { "lang": "en", "name": "Cthangover", "description": "The full game: the visual novel story with characters, quests, items and cooking, turn-based battles with card and Final Fantasy style cores, recruitment, Live2D avatars and the developer tools." }, + { "lang": "ru", "name": "Cthangover", "description": "Полная игра: сюжет визуальной новеллы с персонажами, квестами, предметами и готовкой, пошаговые бои с карточным и FF-ядром, найм, Live2D-аватары и инструменты разработчика." } + ], + "mechanics": [ + { + "id": "story", + "name": "Story", + "role": "story", + "description": "Scenes, scenarios, the prologue, Murakami's story line and the starter party.", + "locale": [ { "lang": "ru", "name": "Сюжет", "description": "Сцены, сценарии, пролог, линия Мураками и стартовая партия." } ], + "mods": ["visual_novel_core>=2", "murakami>=1", "starter_party>=1"] + }, + { + "id": "novel_engine", + "name": "Novel engine", + "role": "engine", + "description": "2D shell, dialogs and scenario DSL, interactive objects, effects, in-game time and lighting, the world map.", + "locale": [ { "lang": "ru", "name": "Движок новеллы", "description": "2D-оболочка, диалоги и сценарный DSL, интерактивные объекты, эффекты, игровое время и свет, карта мира." } ], + "mods": ["base2d>=1", "dialog_base>=1", "interactive_base>=1", "effects_base>=1", "time_base>=1", "map_base>=1"] + }, + { + "id": "characters", + "name": "Characters and skills", + "role": "characters", + "description": "Characters, action cards, avatars, the character panel and skills.", + "locale": [ { "lang": "ru", "name": "Персонажи и навыки", "description": "Персонажи, карты действий, аватары, панель персонажей и навыки." } ], + "mods": ["characters_base>=1", "skills_base>=1"] + }, + { + "id": "quests", + "name": "Quests", + "role": "quests", + "description": "Quest state, scenario quest actions and the journal.", + "locale": [ { "lang": "ru", "name": "Квесты", "description": "Состояние квестов, квестовые действия сценариев и журнал." } ], + "mods": ["quests_base>=1"] + }, + { + "id": "items", + "name": "Items and cooking", + "role": "items", + "description": "Inventory, items and recipes, the kitchen workbench and rations.", + "locale": [ { "lang": "ru", "name": "Предметы и готовка", "description": "Инвентарь, предметы и рецепты, кухонный верстак и пайки." } ], + "mods": ["items_base>=1", "cooking>=1"] + }, + { + "id": "battle", + "name": "Card battle", + "role": "battle", + "description": "Turn-based battle engine with the card battle core (the game's default).", + "locale": [ { "lang": "ru", "name": "Карточный бой", "description": "Пошаговый боевой движок с карточным ядром (основное в игре)." } ], + "mods": ["turn_battle_base>=2", "card_battle>=1"] + }, + { + "id": "battle_ff", + "name": "FF-style battle", + "role": "battle_alt", + "description": "Alternative Final Fantasy style battle core, switchable with battle.set_core.", + "locale": [ { "lang": "ru", "name": "Бой в стиле FF", "description": "Альтернативное боевое ядро в стиле Final Fantasy, включается через battle.set_core." } ], + "optional": true, + "mods": ["ff_battle>=1"] + }, + { + "id": "recruiting", + "name": "Recruitment", + "role": "gameplay", + "description": "Recruiting defeated characters: roster, join conditions and recruit upkeep.", + "locale": [ { "lang": "ru", "name": "Найм", "description": "Вербовка побеждённых: состав, условия присоединения и содержание рекрутов." } ], + "optional": true, + "mods": ["recruiting>=1"] + }, + { + "id": "live2d", + "name": "Live2D", + "role": "visual", + "description": "Live2D Cubism runtime for animated avatars.", + "locale": [ { "lang": "ru", "name": "Live2D", "description": "Среда Live2D Cubism для анимированных аватаров." } ], + "optional": true, + "mods": ["live2d>=1"] + }, + { + "id": "interface", + "name": "Interface and sound", + "role": "ui", + "description": "Widget toolkit and HUD, the main menu, music and sounds.", + "locale": [ { "lang": "ru", "name": "Интерфейс и звук", "description": "Виджеты и HUD, главное меню, музыка и звуки." } ], + "mods": ["interface>=1", "base_menu>=1", "audio_base>=1"] + }, + { + "id": "dev_tools", + "name": "Developer tools", + "role": "tools", + "description": "Scenario and map editors, the validator, the resource atlas, the locale key map and the mod manager.", + "locale": [ { "lang": "ru", "name": "Инструменты разработчика", "description": "Редакторы сценариев и карт, валидатор, карта ресурсов, карта локализации и менеджер модов." } ], + "optional": true, + "mods": ["tools>=1", "validator>=0.1", "resource_atlas>=0.1", "locale_atlas>=0.1", "mod_manager>=1"] + } + ] +} diff --git a/collections/vn_starter_novel.json b/collections/vn_starter_novel.json index 6f44924..40160d0 100644 --- a/collections/vn_starter_novel.json +++ b/collections/vn_starter_novel.json @@ -4,6 +4,8 @@ "name": "@collections/vn_starter_novel/name", "description": "@collections/vn_starter_novel/description", "author": "ct", + "entry": { "scene": "start_scene" }, + "settings": { "battle.core": "card_battle" }, "version": "1.0.0", "tags": [ "novel", @@ -28,7 +30,8 @@ "description": "@collections/vn_starter_novel/mechanic/vn_core/description", "role": "story", "mods": [ - "visual_novel_core>=1" + "visual_novel_core>=1", + "starter_party>=1" ] }, { @@ -38,7 +41,8 @@ "role": "battle", "optional": true, "mods": [ - "turn_battle_base>=1" + "turn_battle_base>=1", + "card_battle>=1" ] } ]