Files
infiplot-web/public/home/firstact-portrait/m19.json
T
yuanzonghao 95a66d94ed feat(web): support portrait preset story cards on mobile
Mobile users clicking preset story cards now get portrait (9:16) scene
images instead of landscape. Previously card paths hardcoded orientation
to "landscape"; now they respect detectOrientation() and load from
firstact-portrait/ with graceful fallback to landscape.

- Add --portrait and --only flags to prebake-firstacts.mjs
- Add --portrait flag to localize-firstact-images.mjs
- Fix prebake STYLE_MAP extraction (moved to lib/options.ts)
- Generate 60 portrait firstact JSONs + firstscene webp assets
- Remove hardcoded "landscape" in play page card path

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-07 00:12:37 +08:00

1 line
5.2 KiB
JSON

{"sessionId":"s_1780757293440_9y3wz4","scene":{"id":"scene_1780757337954_9sfk","scenePrompt":"A dimly lit graphic design studio at 3 AM, cold blue-white glow from a computer monitor illuminating the cluttered desk, scattered papers with typeface samples, a keyboard with fingers hovering above keys, on the screen a hexadecimal editor displaying rows of bank codes and a red countdown '71:59:59', a smartphone on the desk vibrating with an incoming message, the room in near darkness with only the screen light casting sharp shadows, Swiss typography poster style, vertical composition, minimalist high-contrast silhouettes, deep red accents on the screen text, black and white color blocks, atmosphere of tension and urgency.","beats":[{"id":"b1","narration":"凌晨三点,工作室里只有屏幕的冷光。你盯着那行鲜红字符——‘Arial? No. You are the bomb.’——手指悬在键盘上方,心脏在肋骨后面擂鼓。","next":{"type":"continue","nextBeatId":"b2"}},{"id":"b2","narration":"你复制那段文字,粘进十六进制编辑器。解码结果像一盆冰水浇下来:全球48家央行的SWIFT代码,整整齐齐排成表格。","next":{"type":"continue","nextBeatId":"b3"}},{"id":"b3","narration":"表格最下方——你的名字、身份证号、银行账户。还有一行跳动的数字:71:59:59。","next":{"type":"continue","nextBeatId":"b4"}},{"id":"b4","narration":"手机震动。一条未知号码的短信:“别报,警察已经是你敌人了。”你盯着屏幕,后脊发凉。","next":{"type":"choice","choices":[{"id":"c1","label":"报警求助","effect":{"kind":"change-scene","nextSceneSeed":"警局审讯室,你坐在冷板凳上,对面是拿你身份证的林芷"}},{"id":"c2","label":"自己追查","effect":{"kind":"change-scene","nextSceneSeed":"你打开字体文件源代码,发现一个隐藏的IP地址,指向城郊一间仓库"}}]}}],"entryBeatId":"b1","sceneKey":"apartment-studio-night","imageUuid":"800efc5d-c865-462f-a87a-bb0664dbe396","imageUrl":"/home/firstscene-portrait/m19.webp","orientation":"portrait"},"imageUrl":"/home/firstscene-portrait/m19.webp","characters":[],"storyState":{"logline":"当你设计的字体突然显现出针对全球金融系统的攻击指令,而你的名字赫然列在主谋榜单上——你只有72小时找出真凶,否则世界金融崩塌,你将永世背锅。","genreTags":"悬疑/犯罪/高智商反转/男性向爽剧","protagonist":"你是26岁的字体设计师,家境普通却天赋异禀,刚凭一款革命性字体拿到国际大奖。此刻你盯着屏幕——那行隐藏的十六进制代码在字里行间闪烁,破解后是一份足以摧毁全球金融的病毒计划,而你的名字赫然写在主谋第一行。你后背发凉:有人用你的字体当武器,还嫁祸给你。你想活命、想清白,但手边只有一把键盘和正在倒数的倒计时。","castNotes":"陆鸣:你的大学室友兼同事,表面老实巴交的技术宅,实则因嫉妒你的才华暗中收集过你的设计手稿;你们合租一间公寓,他对你总是有求必应,但眼神偶尔闪躲。\n林芷:网络安全公司首席分析师,冷静干练的短发女性,表面公事公办,实际曾因金融诈骗案失去导师,对字体病毒案有偏执的追踪欲;她是你求助的第一个外人,但她的背景成谜。\n老高:你常去的打印店老板,四十岁沉默寡言的退伍军人,看似与世无争,却总能弄到稀缺的字体样本;他柜台下藏着另一个手机,通话记录全是乱码。","synopsis":"凌晨三点,你在字体测试中发现一行十六进制代码,解码后竟是全球48家央行SWIFT代码表,附有你的身份信息和71小时倒计时。一条匿名短信警告你不要报警。你陷入抉择:是相信警方还是独自追查?","openThreads":["字体中的病毒计划究竟来自谁?","你的名字为何出现在主谋名单上?","匿名短信发送者是谁——朋友还是陷阱?"],"nextHook":"你必须做出选择:报警可能暴露自己,独自追查则时间紧迫。下一场将根据你的决定展开截然不同的调查路线。"},"cardName":"m19","cardTitle":"字体密谋","cardGender":"男性向","worldSetting":"这是一款面向【男性向】观众的 AI 交互剧情游戏,整体走红果短视频式的强戏剧冲突与快速反转。\n剧情风格:多线转折。内容节奏:紧凑爽快。\n精选剧情《字体密谋》的开场设定:字体设计师发现,他设计的某款字体在特定组合下,会显现出隐藏的指令信息。破解后,竟是一份针对全球金融系统的“字体病毒”攻击计划,而他的名字,就在主谋名单上。\n请直接以此开场切入,给玩家强烈的代入感与爽点;后续分支保持短剧式的反转密度,让玩家每一次选择都能立刻看到回响。","styleGuide":"Swiss typography poster style, vertical composition. A minimalist high-contrast silhouette of an attractive male face integrated with abstract architectural grids. Deep red, black, and white color blocks, clean geometric poster layout.","imageUrlRemote":"https://im.runware.ai/image/os/a05d22/ws/3/ii/800efc5d-c865-462f-a87a-bb0664dbe396.png"}