Files
XinLanDiary/game/Chapters/Chapter2/Chapter2.rpy
Cafw b8a458223c feat: 深度重写第1-2章剧情,版本号升至dev0.1.0.0
第1章优化:新增2个玩家选择、修正POV叙述标记、精炼开篇与结尾语言
第2章重写:修复13天空白过渡、扩展比赛场景、完善角色支线
新增背景与立绘素材

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-17 00:41:32 +08:00

535 lines
22 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Chapter 2: 游戏内外
define zhuchi = Character("主持人", color="#3c3fff", what_slow_cps=19, who_outlines=[(1, "#404040", 0, 0)])
define yang = Character("杨义涵", color="#ff3c3c", what_slow_cps=19, who_outlines=[(1, "#404040", 0, 0)])
label Chapter2_Scene1:
$ game_day = 15
$ game_period = "afternoon"
scene bg classroom wide afterschool with fade
play music "audio/XinLanDiary-Part1.ogg" fadein 2.0
system_ "【Day 15·下午·七班教室】"
me "十一月的风从窗缝钻进来,带走了夏末最后的余热。距离那张照片闹得全校皆知,已经过去了快两周。"
me "论坛的置顶早就换了新的话题。走在走廊里,也不再有人对我指指点点。热闹来得快,散得也快。"
me "倒是有一件事没变——林晓薇确实来找过我。课间的时候,站在七班后门,说\"那张照片拍得真好\"。"
me "我记得她当时耳朵有点红。我说\"谢了\",然后上课铃就响了。"
me "之后在走廊里碰到过几次,她会笑着打招呼,但也就这样。不知道为什么,我总觉得她看我的眼神里藏着点什么——可能是我想多了。"
pause 0.5
me "总之,生活恢复了它本来的节奏。直到今天下午,陈星宇的手机屏幕戳到了我脸上。"
show xingyu at left with dissolve
xingyu "涛哥!看公告没?校内赛!电竞社这次玩真的,冠军有机械键盘和——重点班旁听一周体验券!"
hide xingyu with dissolve
show ryt dialogue normal at right with dissolve
me "……最后那个,是什么鬼奖励。"
me "重点班旁听体验券。好像是从那个世界发来的一张请帖,上面写着:想回来看看吗?"
me "我把手机屏幕按灭。重新盯着黑板。"
hide ryt with dissolve
show lhy dialogue normal at left with dissolve
lhy "从概率学角度,我们组队胜率取决于三个变量:枪法、战术配合、以及对手里有几个挂。"
show xingyu at right with dissolve
xingyu "小卡你也会玩?"
hide xingyu with dissolve
lhy "不怎么会。但我可以学。"
hide lhy with dissolve
show ryt dialogue normal at right with dissolve
me "他说这话的表情,跟宣布今天要交数学作业一模一样。做啥事都认真。"
me "而且——他说的不是\"我可以试试\",是\"我可以学\"。"
menu:
"邀请刘泓予":
$ lhy_stats["affection"] += 5
$ flag["lhy_team"] = True
scene bg classroom wide afterschool with dissolve
me "放学后我去找小卡,他正在收拾书包。我说了比赛的事,他点头,但表情跟平时不太一样——像是有话要说,又没想好怎么开口。"
me "第二天午休,他把我叫上了天台。"
jump C2Side1
"只找个游戏高手":
$ xingyu_stats["affection"] -= 5
$ flag["lhy_team"] = False
me "我张了张嘴,最后只是说:\"行,那咱找个枪硬的。\""
me "陈星宇看了我一眼,没说什么。但我总觉得他那个眼神有点失望。"
jump C2S2
"还没想好":
$ flag["C2S1_think"] = False
me "我犹豫了一下。不是因为小卡技术不好——是因为我怕拖累他。"
me "\"再想想吧。\"我说。陈星宇耸耸肩。"
jump C2S2
label C2S2:
$ game_day = 18
$ game_period = "after_school"
scene bg computer lab with fade
play music "audio/XinLanDiary-Part1.ogg" fadein 2.0
system_ "【Day 18·放学后·机房】"
show ryt dialogue normal at right with dissolve
me "训练赛。对手是颜涵和杨天赐——一个能在音游里全连魔王曲的怪物,一个能把任何战术会议变成单口相声的活宝。"
me "胜率计算器对着这阵容直接黑屏了。"
hide ryt with dissolve
show yh camerabag at left with dissolve
yh "任懿涛。"
yh "你是主突击位?"
hide yh with dissolve
show ryt dialogue normal at right with dissolve
me "嗯,习惯了。"
hide ryt with dissolve
show yh camerabag at left with dissolve
yh "那我针对你。"
hide yh with dissolve
show ryt dialogue normal at right with dissolve
me "为啥?"
hide ryt with dissolve
show yh camerabag at left with dissolve
yh "练习赛的意义就在于此。找到弱点。"
yh "除非……你怕我?"
show ryt dialogue normal at right with dissolve
me "他怎么又笑了。那种\"我已经知道你会输\"的笑。"
me "我咽了下口水。但嘴上不能输。"
me "来啊。谁怕谁。"
hide ryt with dissolve
hide yh with dissolve
stop music fadeout 1.0
pause 1.0
play music "audio/XinLanDiary-Part1.ogg" fadein 2.0
system_ "【练习赛结束·2:2平】"
show yh camerabag at left with dissolve
yh "手速很快。但你的移动轨迹有pattern。每三次变向就有一次习惯性右偏。"
hide yh with dissolve
show ryt dialogue normal at right with dissolve
me "……你连这个都记?"
hide ryt with dissolve
show yh camerabag at left with dissolve
yh "习惯了。音游打多了,眼睛会自动追踪移动目标。"
yh "对了。"
yh "下周嘉年华筹备开始了。摄影社要做\"莘澜面孔\"影展。"
yh "你会出镜的。"
hide yh with dissolve
show ryt dialogue normal at right with dissolve
me "……凭什么?"
hide ryt with dissolve
show yh camerabag at left with dissolve
yh "因为我会拍你。"
yh "无论你同意与否。"
hide yh with dissolve
show ryt dialogue normal at right with dissolve
me "他说完就走了。语气跟高一那回点评我的头发之后转身就走一模一样——不像威胁,像是已经做完了决定,只是在通知你一声。"
hide ryt with dissolve
# —— 机房门口 ——
scene bg computer lab door with dissolve
pause 0.5
show xiaowei at right with dissolve
me "林晓薇?你怎么在这?"
xiaowei "欸——是不是打扰到你们了?"
me "林晓薇……她怎么会出现在机房门口?这栋楼离文科班教室隔了一个操场。"
show xiaowei embarrass at right with dissolve
xiaowei "我、我是来还机房钥匙的!正好路过!"
me "她耳朵红了。高一我就发现了,她说谎的时候先红耳朵。"
show xiaowei at right with dissolve
xiaowei "那、那个……比赛加油!我会去旁观的!"
me "旁观?"
xiaowei "啊不不是那个意思——就是——呃——友好支持!"
hide xiaowei with dissolve
me "她转身就跑。背影消失在楼梯拐角。"
me "\"友好支持\"……什么鬼。"
me "但我发现自己在笑。"
pause 0.5
me "手机响了。"
scene bg classroom phone closeup with dissolve
system_ "【游戏内私聊】薇风拂晓:在吗?"
me "又是她。每次都在我刚上线的时间出现。太巧了。"
xiaowei_w "下周比赛,你会参加对吧?"
me_w "你怎么知道?"
xiaowei_w "……猜的。你游戏ID不是'逍遥剑客'吗,电竞社报名名单上有。"
me_w "你还看报名名单?"
xiaowei_w "随便看看!"
xiaowei_w "那……比赛见。"
me_w "等等,你到底哪个学校的?"
system_ "【对方已离线】"
me "又跑了。每次问到这个问题就消失。"
me "但奇怪的是……我好像并没有很想知道答案。就这么聊着,也挺好。"
$ xiaowei_stats["affection"] += 3
$ xiaowei_stats["interactionFrequency"] += 2
$ yh_stats["affection"] += 2
$ yh_stats["understanding"] += 2
if yutong_stats["affection"] >= 8 and yutong_stats["attention"] >= 12:
jump C2S3
label C2S3:
$ game_day = 20
$ game_period = "afternoon"
scene bg computer lab with fade
play music "audio/XinLanDiary-Part1.ogg" fadein 2.0
system_ "【Day 20·下午·机房】"
show ryt dialogue normal at right with dissolve
me "赛前最后一次训练。机房设备嗡嗡响。"
me "诶?门口什么时候站着个人。"
hide ryt with dissolve
show yutong at left with dissolve
yutong "学习部检查。"
yutong "学生会接到投诉,说电竞社训练影响晚自习秩序。"
show ryt dialogue normal at right with dissolve
me "是苏雨桐。语气跟开会时一模一样。但她的眼睛在看我手机屏幕,不是看我。"
me "我们只是利用课余时间——"
yutong "《四角州行动》,是吗?"
me "……你怎么知道游戏名?"
yutong "资料调查。"
yutong "……"
yutong "手速确实很快。"
me "她说这句话的时候,声音比刚才轻。然后推了推眼镜,像在掩饰什么。"
yutong "但要小心重复性劳损。腕关节每天最好不要超过两万次点击。"
me "……学生会还管这个?"
yutong "这是学习部对参赛同学的健康提示。"
yutong "另外……"
yutong "重点班旁听体验券,是真的。"
yutong "如果你想的话。"
hide yutong with dissolve
me "她转身走了。跟高一一样,走路很快,从不回头看。"
pause 0.5
me "\"如果你想的话\"——她是在传达一个信息,还是在问一个问题?"
me "高一那次数学竞赛之后,她好像递过一张纸条给我。上面写了什么来着——恭喜?还有一句……我记不清了。"
me "我那时候满脑子都是下一场考试。"
me "现在想想,可能错过了什么。"
$ yutong_stats["affection"] += 2
$ yutong_stats["attention"] += 2
jump C2S4
label C2S4:
$ game_day = 22
$ game_period = "afternoon"
scene bg auditorium with fade
play music "audio/XinLanDiary-Part2.ogg" fadein 2.0
system_ "【Day 22·周六·报告厅·电竞社校内赛】"
if flag.get("competition_note"):
show ryt dialogue normal at left with dissolve
me "人比想象的多多了!后排都站满了。陈星宇在调试设备,刘泓予戴着耳机,腿上摊着笔记本——他真的记了笔记,还画了地图,每条路线用不同颜色标出来。"
me "我瞄了一眼,密密麻麻的。\"这都是你弄的?\"他头也不抬:\"数据分析。胜率大概能提升6\%。\""
me "6\%。为了这6\%他记了整整一本。"
hide ryt with dissolve
else:
show ryt dialogue normal at left with dissolve
me "人比想象的多多了!后排都站满了。陈星宇在调试设备,颜涵端着相机在前排调试角度。"
hide ryt with dissolve
show ryt dialogue normal at left with dissolve
me "而我在找一个人。'薇风拂晓'说'比赛见'。如果她真的是本校的——"
hide ryt with dissolve
zhuchi "下面请最后一支签到队伍,'七星文学部'——呃,七班的队伍!"
show xingyu at left with dissolve
xingyu "走了涛哥!上场!"
hide xingyu with dissolve
hide ryt with dissolve
pause 1.0
system_ "【第一轮·胜】"
pause 0.3
system_ "【第二轮·胜】"
if flag.get("competition_note"):
me "第二轮僵持的时候,耳机里刘泓予的声音出奇地稳,报了个时间窗口。我照做了。击杀音效响起,他那边轻轻地说了声\"好\"。"
pause 0.3
system_ "【第三轮·平局·小组第一出线】"
show ryt dialogue normal at left with dissolve
me "手在抖,但不是因为紧张——是因为太用力了。苏雨桐说的两万次点击,估计早就超了。"
me "我放下手机活动手腕,抬头扫了一眼观众席。"
me "林晓薇正举着手机拍我。目光对上的时候,她没有躲。"
me "她笑了。虎牙露出来。"
hide ryt with dissolve
scene bg classroom phone closeup with dissolve
xiaowei_w "打得不错。"
me_w "你在现场?"
xiaowei_w "嗯。"
me_w "哪里?"
xiaowei_w "你猜。"
scene bg auditorium with dissolve
show ryt dialogue normal at right with dissolve
me "我抬头扫了一圈。后排靠左,她戴着耳机,低头看手机。像是感应到什么,她忽然抬头——"
me "虎牙。"
me "高一的时候,每次我讲完笑话,她都是第一个笑的那个。"
me "等等。每次都在我刚上线的时候出现。每次都对接下来的比赛了如指掌。"
me "\"薇风拂晓\"——林晓薇——"
me "不是吧。"
hide ryt with dissolve
$ xiaowei_stats["affection"] += 3
$ xiaowei_stats["interactionFrequency"] += 2
$ xiaowei_stats["is_xiaowei_w"] = True
jump C2S5
label C2S5:
scene bg auditorium with dissolve
zhuchi "那么,决赛即将开始——"
yang "等一下!"
show ryt dialogue normal at right with dissolve
me "杨义涵?他在另一组半决赛,我刚才没注意他们队的战绩——"
hide ryt with dissolve
yang "在决赛之前,我有话要说!"
yang "任懿涛——从刚才你绕后秒三个那一刻起,我就知道了。"
yang "你就是我这学期要找的——心中的她!"
yang "打完这场,不管谁赢——我都要跟你生下冠军宝宝!"
show ryt dialogue normal at right with dissolve
me "他指着我的时候,眼睛在发光。不是挑衅——是那种憋了一整个学期终于找到猎物的兴奋。"
me "全场爆笑。主持人手里的麦克风差点掉了。刘泓予——刘泓予低着头,肩膀在抖。"
me "连他都在笑。"
hide ryt with dissolve
menu:
"……行啊。":
$ flag["yang_rival"] = "accept"
me "我愣了两秒,然后也笑了。\"行啊。不过你到时候别后悔。\""
# me "杨义涵一拍桌子:\"后悔的是你!我一个月的午饭不便宜!\""
# 赛后杨义涵会主动找任懿涛深入聊天
jump C2S5_final
"先赢比赛再说。":
$ flag["yang_rival"] = "deflect"
$ yh_stats["affection"] += 1
me "\"先赢比赛再说。\"我笑着摆手。"
me "杨义涵不依不饶:\"那就是答应了!裁判你听见了啊!\""
# 杨义涵赛后会在群里刷屏"任懿涛欠我一顿饭"
jump C2S5_final
"生冠军宝宝你是臭gay吗":
$ flag["yang_rival"] = "joke"
$ lhy_stats["affection"] += 1
me "\"生冠军宝宝你是臭gay吗\""
me "台下林晓薇笑得趴在了前排椅背上。"
jump C2S5_final
label C2S5_final:
pause 0.5
system_ "【决赛】"
me "第一张图我们输了。对面配合很默契。"
me "中场陈星宇说:\"换战术,涛哥你自由发挥。\""
if flag.get("competition_note"):
me "刘泓予翻开他那本笔记:\"对面有个习惯,我能预测他的走位。\""
me "\"你怎么知道的?\""
me "\"我把他们前面的比赛录像都看了一遍。\"他推了下并没有戴的眼镜。\"数据分析嘛。\""
me "第二张图,我们换了战术,扳回来。"
me "第三张图,最后十几秒还是平局。我想起颜涵说我\"习惯性右偏\"——既然我有pattern对手肯定也有。反着来就行了。"
me "赢了。"
system_ "【决赛结果·七星文学部 2:1 获胜】"
pause 0.5
me "领奖的时候陈星宇举着键盘拍了十几张自拍。刘泓予站在旁边,嘴角那个弧度约等于\"笑\"。"
me "散场了。人潮往外涌,外面天已经快黑了。"
$ tao_stats["humorSense"] += 2
jump C2S6
label C2S6:
$ game_period = "evening"
scene bg schoolgate evening with fade
play music "audio/XinLanDiary-Part2.ogg" fadein 2.0
system_ "【赛后·傍晚·校门口】"
show ryt dialogue normal at right with dissolve
me "陈星宇说去庆祝,刘泓予说有事,先走了。我故意走慢了一点。"
me "我在等一个人。"
hide ryt with dissolve
show xiaowei at left with dissolve
xiaowei "那个……"
me "路灯下面,她的短发被风吹得有点乱。"
me "你来了。"
xiaowei "恭喜你。冠军。"
xiaowei "我说了会旁观的嘛。"
show ryt dialogue normal at right with dissolve
me "我没有拿出手机。我只是看着她。"
me "\"薇风拂晓\"——每次都在我上线的时候出现。每次都知道关于我的事。"
me "我举起手机。屏幕上,是\"薇风拂晓\"的对话框。"
hide ryt with dissolve
xiaowei "……"
xiaowei "我就知道瞒不过你。"
hide xiaowei with dissolve
menu:
"所以游戏里的配合,都是演的?":
$ xiaowei_stats["affection"] += 1
show xiaowei at left with dissolve
xiaowei "不是演的!我真的觉得我们配合很好——啊不对,我不是那个意思——"
hide xiaowei with dissolve
"怎么不早说?":
$ xiaowei_stats["affection"] += 2
show xiaowei at left with dissolve
xiaowei "因为怕你觉得奇怪……高一之后就分班了,突然游戏里相认什么的……而且——"
xiaowei "而且其实,我段位比你高。"
hide xiaowei with dissolve
me "……什么?"
show xiaowei at left with dissolve
xiaowei "全服前五百。\n用小号是因为……不想被你当成\"那个打游戏很厉害的女生\"。就想,先当个普通队友。"
hide xiaowei with dissolve
"……下次排位带带我?":
$ xiaowei_stats["affection"] += 3
show xiaowei at left with dissolve
xiaowei "……欸?{cps=2}啊、好!{cps=20}不对,你段位比我高!"
me "是吗?我怎么觉得你在骗我。"
xiaowei "我、我没有!"
me "耳朵红了。每次说谎都这样。"
xiaowei "好吧好吧!其实我大号全服前五百……"
me "……什么?"
hide xiaowei with dissolve
show xiaowei at left with dissolve
xiaowei "总之……对不起?瞒了你这么久。"
hide xiaowei with dissolve
me "高一那个课间,她也是这样低头翻笔记,然后抬头说\"你刚才那个笑话再讲一遍\"。"
me "没什么好道歉的。"
me "只是下次要说实话。"
me "游戏里——如果有下次配合的话。"
show xiaowei at left with dissolve
xiaowei "……欸?"
xiaowei "一定!"
hide xiaowei with dissolve
me "她笑了。虎牙露出来。跟高一那个课间一样的笑。"
$ xiaowei_stats["synergy"] += 3
$ xiaowei_stats["interactionFrequency"] += 2
jump C2S7
label C2S7:
$ game_period = "night"
scene bg ryt room night with fade
stop music fadeout 1.0
play music "audio/XinLanDiary-Part2.ogg" fadein 2.0
system_ "【同夜·家中】"
show ryt dialogue normal at right with dissolve
me "躺在床上,盯着天花板。今天发生了太多事——冠军、挑战书、她的身份。"
me "手机亮了。一条是陈星宇发的庆祝表情包,一条是杨义涵的好友申请——备注写\"午饭的事别忘了\"。"
me "我笑了笑,点了通过。"
mom "「今天怎么样?」"
pause 0.3
me "打了场比赛。赢了。"
mom "「别玩太晚。」"
me "就三句话。但这次,我不觉得烦了。可能是赢了比赛心情好吧。"
hide ryt with dissolve
show ryt dialogue normal at right with dissolve
me "然后——手机又亮了。"
hide ryt with dissolve
yutong "《四角州行动》概率计算题,我出在了学习部的下周挑战里。如果你有兴趣的话。"
me "她怎么有我的联系方式。"
me "不对,她是学习部部长,找谁的联系方式都行。但为什么专门发给我?"
me "概率计算题。用游戏出题——她知道我会感兴趣。"
system_ "【画廊更新】电竞时刻:手速与反应速度的实证研究。"
me "果然。李泽瑄不会放过任何素材。"
me "但照片里——不止我一个人。陈星宇在画面边缘大笑,刘泓予低头记笔记,林晓薇在观众席举起手机。"
me "还有角落里,苏雨桐抱着笔记本,假装在看别的地方。"
me "我突然想起那个反侦察计划——陈星宇提了一回就再没下文了。但不知什么时候开始,我已经不在乎是谁在拍我了。"
me "原来被拍下来的时候,我一直不是一个人。"
me "窗外,十一月的夜空很干净。高一的时候我从没注意过这些。"
me "现在我开始观察。"
$ yutong_stats["affection"] += 2
$ yutong_stats["attention"] += 2
$ lzx_stats["infoOpenness"] += 1
$ tao_stats["selfAcceptance"] += 2
pause 0.8
scene bg street night with fade
system_ "【林晓薇·回家路上】"
"几公里外,林晓薇走在回家的路上,耳机里放着播客。"
"她低头看着手机——屏幕上还是下午偷拍的任懿涛。照片上他咬着嘴唇,手指悬在屏幕上方,在做一个关键判断。"
"她放大照片,又缩小。然后打开游戏,看了看\"逍遥剑客\"的离线状态。"
xiaowei "下次排位……应该不用再装了吧。"
"她把耳机音量调大。虎牙又露了出来。"
$ xiaowei_stats["affection"] += 2
$ xiaowei_stats["synergy"] += 2
pause 1.0
scene bg black with fade
pause 1.5
system_ "【第二章·游戏内外·完】"
return