|
|
e949a84171
|
feat: P25 conditional routing, nextScene supports Choice[] with conditions
|
2026-06-13 00:50:48 +08:00 |
|
|
|
320502a7c3
|
feat: track HLS demo segments for all scenes
|
2026-06-12 18:04:53 +08:00 |
|
|
|
47230b4a66
|
feat: add streamingUrl to all scenes in demo.json
|
2026-06-12 18:03:22 +08:00 |
|
|
|
b62af5b7de
|
chore: update HLS segments and App.vue tweaks
|
2026-06-12 17:33:32 +08:00 |
|
|
|
b6231e4efd
|
feat: adaptive bitrate support, engine improvements, demo updates, and electron preload
|
2026-06-12 17:15:30 +08:00 |
|
|
|
68f601db8c
|
chore: regenerate test menu_bg video with visible text and timestamp
|
2026-06-12 15:58:00 +08:00 |
|
|
|
9baa7b5ab3
|
feat: add scene thumbnails to TreeFlow nodes with auto-generated demo thumbs
|
2026-06-12 12:08:39 +08:00 |
|
|
|
6fbfdc3332
|
feat: rename project to 天书 TianShu, add logo and slogan
|
2026-06-10 17:40:58 +08:00 |
|
|
|
d4e8073f75
|
docs: add CODEX.md for OpenAI Codex boundary rules
|
2026-06-10 17:24:23 +08:00 |
|
|
|
2b3fc97c70
|
docs: add AI boundary rules and creator workspace guide in public/
|
2026-06-10 17:22:32 +08:00 |
|
mingyuansi
|
99f80147c7
|
some change
|
2026-06-10 16:54:48 +08:00 |
|
|
|
03c4ee3a65
|
feat: i18n for choice prompt via promptKey, with fallback
|
2026-06-10 16:51:50 +08:00 |
|
|
|
879501ccb5
|
fix: add missing textKey to 9 choices for i18n completeness
|
2026-06-10 16:41:08 +08:00 |
|
|
|
2f9f9a4117
|
feat: i18n achievement UI labels and data layer title/description
|
2026-06-10 16:36:24 +08:00 |
|
|
|
e51b5e234e
|
feat: i18n StoryGallery UI labels and data layer chapter/ending names
|
2026-06-10 16:29:25 +08:00 |
|
|
|
d057beb82d
|
feat: QTE prompt i18n via promptKey, fallback to prompt text
|
2026-06-10 16:21:23 +08:00 |
|
|
|
dfddd6e527
|
chore: demo.json updates
|
2026-06-10 16:16:16 +08:00 |
|
|
|
332afa7eee
|
chore: locale updates for ui and story messages
|
2026-06-10 16:14:10 +08:00 |
|
|
|
0a1147c2fe
|
fix: hotspot, demo, i18n and type updates
|
2026-06-10 16:10:23 +08:00 |
|
|
|
ea01e61fde
|
chore: trim menu_bg to 3 seconds
|
2026-06-10 14:50:29 +08:00 |
|
|
|
76581d0326
|
feat: intro video, asset updates, roadmap and engine improvements
|
2026-06-10 14:47:45 +08:00 |
|
|
|
bb289f5438
|
feat: switch hotspot coordinates from container percentage to absolute content pixels
|
2026-06-10 12:45:41 +08:00 |
|
|
|
8f6138f97e
|
fix: remove scene. prefix from textKey, add fallback to choice.text when locale key missing
|
2026-06-10 12:29:01 +08:00 |
|
|
|
86a0aebdc8
|
feat: configurable locales path per story, dynamic language switching from story data
|
2026-06-10 12:17:52 +08:00 |
|
|
|
4cf2263c78
|
refactor: separate story locales (public/) from UI locales (src/), async fetch for story messages
|
2026-06-10 12:10:03 +08:00 |
|
|
|
0071a34acf
|
feat: add Japanese language support, three-language subtitles for all demo scenes
|
2026-06-10 11:55:03 +08:00 |
|
|
|
25aafb034f
|
chore: shorten scene_1 placeholder video to 2s
|
2026-06-10 11:48:45 +08:00 |
|
|
|
3a46c2c6c8
|
chore: add placeholder test videos for main.json starter template
|
2026-06-10 11:46:07 +08:00 |
|
|
|
4258bc4034
|
feat: add minimal main.json as creator starter template
|
2026-06-10 11:43:44 +08:00 |
|
|
|
b38969b108
|
refactor: set assetBase to demo/ and strip redundant demo/ prefix from all paths
|
2026-06-10 11:32:14 +08:00 |
|
|
|
9409c893b3
|
chore: update demo.json paths to match scene-based asset organization
|
2026-06-10 11:29:45 +08:00 |
|
mingyuansi
|
082bb4ac48
|
资源结构调整
|
2026-06-10 11:26:20 +08:00 |
|
|
|
937e709dca
|
feat: global assetBase for scene JSON, convert demo to relative paths
|
2026-06-10 11:01:21 +08:00 |
|
|
|
76477050d3
|
chore: add default config.json pointing to demo.json
|
2026-06-10 10:52:30 +08:00 |
|
|
|
906965c963
|
fix: wire up EndingGallery click to open ChapterRecap via chapterId
|
2026-06-09 17:57:21 +08:00 |
|
|
|
9297117544
|
feat: P15 ending gallery, chapter recap, visited tracking, save system v6
|
2026-06-09 17:49:07 +08:00 |
|
|
|
341316c357
|
chore: demo scene updates
|
2026-06-09 17:30:20 +08:00 |
|
|
|
451c6ea025
|
chore: sync latest changes
|
2026-06-09 17:21:54 +08:00 |
|
|
|
bf4b85f727
|
feat: choice conditions with variables, demo updates, roadmap update
|
2026-06-09 16:46:06 +08:00 |
|
|
|
f044ed0b60
|
refactor: switch to key-based i18n for choices, revert inline textEn approach
|
2026-06-09 15:54:55 +08:00 |
|
|
|
8e7f77bc38
|
feat: inline bilingual choice text (textEn), lang-aware choice rendering
|
2026-06-09 15:51:37 +08:00 |
|
|
|
59aed77199
|
feat: i18n system, lang switch component, english subtitles, UI improvements, roadmap update
|
2026-06-09 15:40:51 +08:00 |
|
|
|
66c7028b32
|
fix: move skippable flag from QTE result scenes to the triggering scene
|
2026-06-09 14:57:46 +08:00 |
|
|
|
660fa9347c
|
feat: playback bar component, save system improvements, demo and roadmap updates
|
2026-06-09 14:21:41 +08:00 |
|
|
|
ace5ed1fb3
|
feat: chapter select system, multi-chapter support, scene manager refactor, and docs update
|
2026-06-09 11:35:11 +08:00 |
|
|
|
4bfdfbc27d
|
feat: audio system, demo scene updates, docs, and engine improvements
|
2026-06-08 23:18:33 +08:00 |
|
|
|
514c8f5207
|
fix: shorten stay subtitle cue to avoid overlap with loop segment
|
2026-06-08 22:02:19 +08:00 |
|
|
|
0dbe1b097d
|
feat: video loop support for hotspot scenes, demo updates, docs, and engine fixes
|
2026-06-08 21:48:47 +08:00 |
|
|
|
6b67989007
|
feat: engine improvements, new scenes, videos, subtitles, hotspot component and docs update
|
2026-06-08 14:01:58 +08:00 |
|
|
|
319a379921
|
feat: P2 - QTE system, subtitles, save thumbnails
- QTESystem: trigger detection via timeupdate, multi-key matching, timeout handling
- QTEOverlay: SVG countdown ring + key prompts + success/fail animation
- Engine: integrate QTE (timeupdate check, conditional branching, effect application)
- Subtitles: WebVTT parsing + synchronized subtitle rendering
- GamePlayer: overlay QTE and subtitle components
- SaveSystem: DB v2 with thumbnail field, canvas snapshot at 320x180 JPEG
- SaveLoadMenu: thumbnail preview for save slots
- VideoManager: getActiveVideoElement() for canvas capture
- App.vue: QTE/subtitle integration, thumbnail capture on save
- stores: QTE state management, save list with thumbnails
- demo.json: QTE scene (right_door), subtitles, new event types
- ROADMAP: mark P2 as completed
|
2026-06-07 19:35:14 +08:00 |
|