{ "formatVersion": 1, "database": { "version": 1, "identityHash": "2d343b59e35035dacc0fb14bd84f5a3a", "entities": [ { "tableName": "game_saves", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`saveId` TEXT NOT NULL, `gameId` TEXT NOT NULL, `gameState` TEXT NOT NULL, `storyProgress` TEXT NOT NULL, `saveTime` INTEGER NOT NULL, `saveName` TEXT NOT NULL, `isMainSave` INTEGER NOT NULL, `saveType` TEXT NOT NULL, `saveVersion` TEXT NOT NULL, `preview` TEXT NOT NULL, PRIMARY KEY(`saveId`))", "fields": [ { "fieldPath": "saveId", "columnName": "saveId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "gameId", "columnName": "gameId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "gameState", "columnName": "gameState", "affinity": "TEXT", "notNull": true }, { "fieldPath": "storyProgress", "columnName": "storyProgress", "affinity": "TEXT", "notNull": true }, { "fieldPath": "saveTime", "columnName": "saveTime", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "saveName", "columnName": "saveName", "affinity": "TEXT", "notNull": true }, { "fieldPath": "isMainSave", "columnName": "isMainSave", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "saveType", "columnName": "saveType", "affinity": "TEXT", "notNull": true }, { "fieldPath": "saveVersion", "columnName": "saveVersion", "affinity": "TEXT", "notNull": true }, { "fieldPath": "preview", "columnName": "preview", "affinity": "TEXT", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "saveId" ] }, "indices": [ { "name": "index_game_saves_isMainSave", "unique": false, "columnNames": [ "isMainSave" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_game_saves_isMainSave` ON `${TABLE_NAME}` (`isMainSave`)" }, { "name": "index_game_saves_saveTime", "unique": false, "columnNames": [ "saveTime" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_game_saves_saveTime` ON `${TABLE_NAME}` (`saveTime`)" }, { "name": "index_game_saves_gameId", "unique": false, "columnNames": [ "gameId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_game_saves_gameId` ON `${TABLE_NAME}` (`gameId`)" } ], "foreignKeys": [] }, { "tableName": "branch_saves", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`branchId` TEXT NOT NULL, `parentSaveId` TEXT NOT NULL, `gameState` TEXT NOT NULL, `storyProgress` TEXT NOT NULL, `nodeId` TEXT NOT NULL, `branchPoint` TEXT NOT NULL, `createTime` INTEGER NOT NULL, `description` TEXT NOT NULL, `isUserCreated` INTEGER NOT NULL, PRIMARY KEY(`branchId`))", "fields": [ { "fieldPath": "branchId", "columnName": "branchId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "parentSaveId", "columnName": "parentSaveId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "gameState", "columnName": "gameState", "affinity": "TEXT", "notNull": true }, { "fieldPath": "storyProgress", "columnName": "storyProgress", "affinity": "TEXT", "notNull": true }, { "fieldPath": "nodeId", "columnName": "nodeId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "branchPoint", "columnName": "branchPoint", "affinity": "TEXT", "notNull": true }, { "fieldPath": "createTime", "columnName": "createTime", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "description", "columnName": "description", "affinity": "TEXT", "notNull": true }, { "fieldPath": "isUserCreated", "columnName": "isUserCreated", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "branchId" ] }, "indices": [ { "name": "index_branch_saves_parentSaveId", "unique": false, "columnNames": [ "parentSaveId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_branch_saves_parentSaveId` ON `${TABLE_NAME}` (`parentSaveId`)" }, { "name": "index_branch_saves_createTime", "unique": false, "columnNames": [ "createTime" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_branch_saves_createTime` ON `${TABLE_NAME}` (`createTime`)" }, { "name": "index_branch_saves_nodeId", "unique": false, "columnNames": [ "nodeId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_branch_saves_nodeId` ON `${TABLE_NAME}` (`nodeId`)" } ], "foreignKeys": [] }, { "tableName": "dialogue_history", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `gameId` TEXT NOT NULL, `nodeId` TEXT NOT NULL, `content` TEXT NOT NULL, `choiceText` TEXT, `timestamp` INTEGER NOT NULL, `characterStatus` TEXT NOT NULL, `dayNumber` INTEGER NOT NULL, `isPlayerChoice` INTEGER NOT NULL)", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "gameId", "columnName": "gameId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "nodeId", "columnName": "nodeId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "content", "columnName": "content", "affinity": "TEXT", "notNull": true }, { "fieldPath": "choiceText", "columnName": "choiceText", "affinity": "TEXT", "notNull": false }, { "fieldPath": "timestamp", "columnName": "timestamp", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "characterStatus", "columnName": "characterStatus", "affinity": "TEXT", "notNull": true }, { "fieldPath": "dayNumber", "columnName": "dayNumber", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "isPlayerChoice", "columnName": "isPlayerChoice", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": true, "columnNames": [ "id" ] }, "indices": [ { "name": "index_dialogue_history_gameId", "unique": false, "columnNames": [ "gameId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_dialogue_history_gameId` ON `${TABLE_NAME}` (`gameId`)" } ], "foreignKeys": [] }, { "tableName": "story_nodes", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` TEXT NOT NULL, `type` TEXT NOT NULL, `title` TEXT NOT NULL, `content` TEXT NOT NULL, `imageResource` TEXT NOT NULL, `choices` TEXT NOT NULL, `isKeyPoint` INTEGER NOT NULL, `musicTrack` TEXT, `requirements` TEXT NOT NULL, `effects` TEXT NOT NULL, `tags` TEXT NOT NULL, `isAIGenerated` INTEGER NOT NULL, `createdTime` INTEGER NOT NULL, `lastUsedTime` INTEGER, PRIMARY KEY(`id`))", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "TEXT", "notNull": true }, { "fieldPath": "type", "columnName": "type", "affinity": "TEXT", "notNull": true }, { "fieldPath": "title", "columnName": "title", "affinity": "TEXT", "notNull": true }, { "fieldPath": "content", "columnName": "content", "affinity": "TEXT", "notNull": true }, { "fieldPath": "imageResource", "columnName": "imageResource", "affinity": "TEXT", "notNull": true }, { "fieldPath": "choices", "columnName": "choices", "affinity": "TEXT", "notNull": true }, { "fieldPath": "isKeyPoint", "columnName": "isKeyPoint", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "musicTrack", "columnName": "musicTrack", "affinity": "TEXT", "notNull": false }, { "fieldPath": "requirements", "columnName": "requirements", "affinity": "TEXT", "notNull": true }, { "fieldPath": "effects", "columnName": "effects", "affinity": "TEXT", "notNull": true }, { "fieldPath": "tags", "columnName": "tags", "affinity": "TEXT", "notNull": true }, { "fieldPath": "isAIGenerated", "columnName": "isAIGenerated", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "createdTime", "columnName": "createdTime", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "lastUsedTime", "columnName": "lastUsedTime", "affinity": "INTEGER", "notNull": false } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "id" ] }, "indices": [ { "name": "index_story_nodes_type", "unique": false, "columnNames": [ "type" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_story_nodes_type` ON `${TABLE_NAME}` (`type`)" }, { "name": "index_story_nodes_isKeyPoint", "unique": false, "columnNames": [ "isKeyPoint" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_story_nodes_isKeyPoint` ON `${TABLE_NAME}` (`isKeyPoint`)" }, { "name": "index_story_nodes_tags", "unique": false, "columnNames": [ "tags" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_story_nodes_tags` ON `${TABLE_NAME}` (`tags`)" } ], "foreignKeys": [] }, { "tableName": "game_settings", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` TEXT NOT NULL, `settings` TEXT NOT NULL, `lastModified` INTEGER NOT NULL, PRIMARY KEY(`id`))", "fields": [ { "fieldPath": "id", "columnName": "id", "affinity": "TEXT", "notNull": true }, { "fieldPath": "settings", "columnName": "settings", "affinity": "TEXT", "notNull": true }, { "fieldPath": "lastModified", "columnName": "lastModified", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "id" ] }, "indices": [], "foreignKeys": [] }, { "tableName": "ai_generation_history", "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`requestId` TEXT NOT NULL, `request` TEXT NOT NULL, `response` TEXT NOT NULL, `usedInGame` INTEGER NOT NULL, `userRatingJson` TEXT, `timestamp` INTEGER NOT NULL, PRIMARY KEY(`requestId`))", "fields": [ { "fieldPath": "requestId", "columnName": "requestId", "affinity": "TEXT", "notNull": true }, { "fieldPath": "request", "columnName": "request", "affinity": "TEXT", "notNull": true }, { "fieldPath": "response", "columnName": "response", "affinity": "TEXT", "notNull": true }, { "fieldPath": "usedInGame", "columnName": "usedInGame", "affinity": "INTEGER", "notNull": true }, { "fieldPath": "userRatingJson", "columnName": "userRatingJson", "affinity": "TEXT", "notNull": false }, { "fieldPath": "timestamp", "columnName": "timestamp", "affinity": "INTEGER", "notNull": true } ], "primaryKey": { "autoGenerate": false, "columnNames": [ "requestId" ] }, "indices": [ { "name": "index_ai_generation_history_timestamp", "unique": false, "columnNames": [ "timestamp" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_ai_generation_history_timestamp` ON `${TABLE_NAME}` (`timestamp`)" }, { "name": "index_ai_generation_history_usedInGame", "unique": false, "columnNames": [ "usedInGame" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_ai_generation_history_usedInGame` ON `${TABLE_NAME}` (`usedInGame`)" }, { "name": "index_ai_generation_history_requestId", "unique": false, "columnNames": [ "requestId" ], "orders": [], "createSql": "CREATE INDEX IF NOT EXISTS `index_ai_generation_history_requestId` ON `${TABLE_NAME}` (`requestId`)" } ], "foreignKeys": [] } ], "views": [], "setupQueries": [ "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)", "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '2d343b59e35035dacc0fb14bd84f5a3a')" ] } }