Files
2026-06-19 06:38:31 +00:00

232 lines
16 KiB
Python

# -*- coding: utf-8 -*-
"""Bulk expand story3 ch5-11 to 2000+"""
import os, re
rr = re.compile(r"[\u4e00-\u9fff]")
D = "/app/working/workspaces/default/novels/round3/03-满级大佬回新手村"
def hz(s): return len(rr.findall(s))
def ap(fn, txt):
p = os.path.join(D, fn)
with open(p, "r", encoding="utf-8") as f:
c = f.read()
bf = hz(c)
with open(p, "a", encoding="utf-8") as f:
f.write("\n" + txt)
af = hz(c + "\n" + txt)
print(f" {fn}: {bf} -> {af}")
# Ch5 expand from 1612
ap("第005章 王道公会——我混进了对手的大本营.md",
"我继续在王道公会里待着。白天跟着打副本——晚上一个人偷偷练级。"
"王道的人对我很好——给我装备、给我药水、给我练级路线建议。"
"但我心里清楚——我不是来当王道成员的——我是来体验人生的。"
"我的人生——一个满级大佬——装成萌新——混进对手公会——"
"然后等着看他们发现真相时的表情。这比任何boss战都刺激。\n\n"
"温柔一刀偶尔给我发消息——问我怎么样了。我说我在王道过得挺好的——"
"他说那就好——但他补了一句:\"我觉得你不是会在一个地方待很久的人。"
"你的眼神——跟那些真正的新人不一样。他们眼里是迷茫——你眼里是玩。\""
"我看着这条消息沉默了很久。温柔一刀——一个32级的玩家——比60级的天下无双更了解我。"
"因为他用的是心在看——不是用等级。\n\n"
"我回了他一条消息:\"你说得对——我确实不会在一个地方待很久。"
"但我待过的每一个地方——我都会记住。\""
"他回:\"包括晨光村?\""
"我:\"包括晨光村——包括黄金野猪王——包括酒馆那杯虚拟麦酒——包括你。\""
"他没有再回复了。但我知道他在屏幕那边笑了。")
# Ch6 expand from 424
ap("第006章 联赛冲刺——8级到40级的一周.md",
"其实我本来不需要这么拼的。以我的经验——用大号带小号——"
"一天就能从7级升到40级。但我故意不用大号带——因为我要的"
"不是结果——是过程。我要体验的是——一个普通玩家靠自己努力"
"一步步变强的感觉。那些疯狂刷怪的夜晚——那些打完boss后的疲惫感——"
"那些终于升了一级的成就感——这些东西在大号上我已经很久没体验过了。\n\n"
"周六晚上——我40级了。距离联赛还有不到十五个小时。"
"我站在主城的最高处——看着下面的玩家跑来跑去——"
"各种等级——各种装备——各种忙碌。三周前我也是这样——"
"满级站在最高处——看着下面——觉得无聊。现在我不是在最高处了——"
"我在人群里——跟大家一起跑——一起忙——一起为了升级而努力。\n\n"
"我打开背包看了看信使之刃——这把剑现在40级了——"
"攻击力已经涨到了蓝色武器的水平——虽然不如我的暗夜君王套装——"
"但握着它的时候——我感觉到了一种久违的东西——期待。"
"我期待明天的决赛。不是因为我想赢——是因为我想知道——"
"当剑指苍穹看到我站在对面的时候——他会是什么表情。\n\n"
"我关掉背包——最后看了一眼夜空。游戏里的星星比现实中亮——"
"因为游戏没有光污染。但我更喜欢现实的星星——"
"因为现实的星星——不是代码生成的。")
# Ch7 expand from 887
ap("第007章 决赛夜——我站在了对手那边.md",
"站在竞技场上——我能听到自己的心跳声。不是紧张——是兴奋。"
"我已经很久没在PVP中感受到这种兴奋了——因为满级的时候——"
"没有人能让我紧张。但现在——我的等级只有40级——装备是蓝绿混搭——"
"对面站着的是全服最强的公会——我的公会——暗夜。\n\n"
"我深吸了一口气。比赛开始的号角响起的那一刻——我的身体比我的大脑先动了。"
"我侧身闪——不是往前冲——是往侧翼拉——这是我在三年PVP中总结出来的经验——"
"正面硬刚的人会先死——从侧翼切入的人才能活到最后。\n\n"
"暗夜的第一波进攻打在了王道的坦克身上——王道的坦克撑住了——"
"但血量掉得很快——暗夜的输出太猛了——王道撑不了多久。"
"我知道——我必须做点什么。我绕到暗夜的一个输出身后——"
"信使之刃出手——一个简单的背刺——但他没想到我会出现在那里——"
"因为一个40级的新人按理说应该在队伍后面躲着——不应该出现在侧翼。\n\n"
"他被我打掉了三分之一血——他回头看我——愣了一下——\"你怎么在这里?\""
"我没回答——继续输出。他的血量继续掉——他开始慌了——"
"因为他面对的——不是一个40级的新人——是一个对暗夜每一个人的站位都了如指掌的老对手。"
"我知道他的习惯——他的技能顺序——他的走位规律——"
"我跟他在同一个公会打了三年的配合——我比他自己还了解他。\n\n"
"他倒了。暗夜的治疗还没来得及给他加血——因为他倒得太快了——"
"快到连治疗都没反应过来。王道的队伍频道里——天下无双发了一条消息:\"你打掉了一个60级的输出——用40级的号?\""
"我回:\"嗯。\"他:\"你到底是什么人?\"我:\"打完告诉你。\"\n\n"
"比赛继续。我已经完全进入了战斗状态——不再是装萌新的状态——"
"而是那个全服第一的夜神的状态。我绕着暗夜的阵型跑——"
"像一个幽灵——出现在他们最意想不到的位置——"
"打出他们最不愿意看到的伤害。")
# Ch8 expand from 802
ap("第008章 他认出了我——你就是夜神.md",
"剑指苍穹的那一刀被我躲开了——但他没有追过来。"
"他站在原地——看着我——他的眼神让我有点不安。"
"不是愤怒——是复杂的——像是一个认识了你三年的人忽然发现你戴着面具——"
"而他刚刚才看清面具后面的脸。\n\n"
"他在世界频道发的那条消息——\"你那一刀全服只有一个人会那么砍——"
"那个人叫夜神\"——就像一颗炸弹扔进了平静的湖面。"
"全场骚动——观众席上的议论声变成了嗡嗡的背景音——"
"直播弹幕已经完全疯了——我不用看就知道上面在说什么。\n\n"
"我给他发了私聊——那段对话结束后——决赛重新开始。"
"但氛围已经彻底变了。观众不再只看比赛本身——"
"他们在看我——在看这个40级的替补——到底是不是夜神。"
"暗夜的成员也在看我——他们的眼神不一样了——"
"从轻视变成了审视——从\"这个40级的新人有点意思\"变成了\"他真的是会长吗?\"\n\n"
"比赛的第二阶段——我开始全面发力。不再隐藏实力——"
"不再假装是一个有天赋但不稳定的新人——我用的是我三年练出来的打法。"
"快——准——狠——每一刀都砍在最致命的位置——"
"每一步都踩在对手最难受的方位。我像一个下棋的人——"
"而暗夜——正在按照我的棋路走。\n\n"
"剑指苍穹在指挥暗夜——但他的指挥开始犹豫了。"
"因为他面对的不是一个陌生的对手——是他三年的战友。"
"他了解我的打法——但他不知道该怎么针对我的打法——"
"因为他从来没想过有一天会跟我打。\n\n"
"比赛还剩最后五分钟的时候——暗夜的阵型彻底乱了。"
"不是因为他们实力不如王道——是因为他们心里乱了。"
"心里的乱——比阵型的乱更难调整。我知道这一点——"
"因为我了解暗夜每一个人——我知道他们什么时候会慌。"
"而现在——就是他们最慌的时候。我选择了这个时机——"
"发起了最后的进攻。")
# Ch9 expand from 886
ap("第009章 亲手打败自己的公会是什么感觉.md",
"比赛结束的号角响起的那一刻——我站在原地——没有动。"
"全场在为王道欢呼——在为那个40级的新人欢呼——"
"但我的耳朵——听到的不是欢呼声——是一片嗡嗡的轰鸣。"
"我不知道那是什么声音——可能是观众的声音太大了——"
"可能是我自己的心跳太响了——又或者——是我不愿意听到这个结果。\n\n"
"我赢了。但我赢的是我自己的公会。三年——我用了三年时间"
"把暗夜从一个小公会带到了全服第一——三连冠——"
"然后我亲手让他们丢了第四冠。这个感觉——"
"就像你亲手拆了你盖了三年的房子。\n\n"
"我站在竞技场中央——看着暗夜的成员。"
"有人抱着头——有人坐在地上——有人红着眼睛——"
"有人愤怒地看着我——有人困惑地看着我——有人——不敢看我。\n\n"
"我的治疗——一个跟我合作了三年的奶妈——她看着我——"
"眼泪在眼眶里打转。她在公会频道里喊了一声:"
"\"会长——为什么?\"——只有三个字——但比任何长篇大论都让我难受。\n\n"
"我没回答。我不知道怎么回答。"
"我能说——因为我无聊了?因为我想体验装萌新的感觉?"
"因为我觉得当大佬太没意思了?——这些理由——"
"在她掉眼泪的那一刻——全部变得苍白无力。\n\n"
"我转身——走出竞技场。身后是王道的欢呼声——"
"和暗夜的沉默。我走了很长一段路——没有目的地——"
"就是一直走。我发现自己站在了新手村的村口——晨光村。"
"三周前我在这里开始了装萌新的旅程——"
"三周后我回到了这里——但一切都不一样了。\n\n"
"我走进酒馆——坐在靠窗的那个位置——"
"就是我跟温柔一刀喝酒的那个位置。我点了一杯虚拟麦酒——"
"一个人坐着——看着窗外的新手村风景。"
"月桂树在风里摇晃——NPC在收摊——玩家在跑来跑去。"
"一切都跟三周前一样——只有我不一样了。")
# Ch10 expand from 848
ap("第010章 全服炸了——夜神在对面当替补.md",
"全服的消息还在刷——根本停不下来。我的私聊已经爆了——"
"我设置成了仅好友可私聊——但好友列表里的几百个人同时给我发消息——"
"手机(游戏内)还是震个不停。\n\n"
"我关了私聊通知——然后打开了全服频道——"
"默默地看着大家讨论我。这种感觉很奇妙——"
"我看着一群人在讨论我——但他们不知道我正在看他们讨论我。\n\n"
"有人说好话——\"夜神大神果然是神操作——40级打60级不落下风。\""
"有人说坏话——\"夜神这么做太过分了——自己打自己公会——"
"算什么会长?\""
"有人中立——\"虽然离谱——但不得不说他确实牛逼。\""
"有人分析——\"他一周从1级升到40级拿了信使之刃——"
"这效率不是正常人能做到的。\""
"有人求带——\"夜神大神求带——我也想体验一周升40级。\"\n\n"
"我看了大概十分钟——然后关掉了全服频道。"
"够了——热闹看完了——该面对现实了。"
"我打开暗夜的公会频道——里面出奇的安静。"
"没有人在骂我——没有人在讨论我——"
"就是安静——一种让人难受的安静。"
"如果他们在骂我——我反而好受一点。"
"但他们什么都没说——这种沉默比任何责骂都沉重。\n\n"
"我深吸了一口气——在公会频道里打了一行字:"
"\"我明天上线——当面跟你们说清楚。\""
"然后我下线了。\n\n"
"我取下游戏头盔——坐在黑暗的房间里——"
"房间里只有电脑风扇的声音。我盯着天花板——"
"想了很久很久。我忽然明白了一件事——"
"装萌新确实很有意思——但你装完之后——"
"你要面对你本来应该面对的一切。"
"你的公会——你的队友——你的责任。"
"这些东西——不会因为你装了一周萌新就消失。")
# Ch11 expand from 854
ap("第011章 回暗夜——我该如何面对他们.md",
"第二天——我戴上头盔——登录了大号。夜神——100级——"
"全服第一。我站在暗夜驻地门口——看着那扇我走过无数次的大门。"
"以前我走进去的时候——从来不用想什么——抬腿就进了。"
"今天我站在门口——站了整整三分钟——才迈出第一步。\n\n"
"公会大厅里——人比平时少了一些。可能有人在——但不想来。"
"可能有人来了——但不想说话。剑指苍穹坐在会长席上——"
"看到我来了——他站了起来——把位置让给我。"
"我摇了摇头——\"你坐着吧。\"他看着我——坐了回去。\n\n"
"我站在大厅中间——看着在场的二十多个人。"
"有些人我认识三年了——从暗夜还是一个小公会的时候就跟着我。"
"有些人刚加入不久——还没见过我几次。"
"他们都看着我——等着我说话。\n\n"
"我开口了。\"我知道你们想问我为什么——"
"为什么我去王道那边——为什么我帮他们打联赛——"
"为什么我打你们。我现在告诉你们——因为我想体验不一样的东西。"
"我玩这个游戏三年了——三年都是全服第一——"
"三年都是你们的会长——三年都在做同样的事——"
"打本——带队——防守——进攻——联赛——然后重复。"
"我累了——不是身体累——是心累。\"\n\n"
"大厅里安静得能听到呼吸声。\"所以我想试试——"
"如果我不是夜神——如果我不是全服第一——"
"我只是一个普通的新人——这个世界会怎么对我。"
"结果——很温暖。有人带我打野猪王——有人请我喝酒——"
"有人耐心回答我的蠢问题——有人在我触发隐藏任务的时候为我高兴。"
"这些东西——在我当夜神的时候——从来没体验过。\"\n\n"
"我停了停——然后继续说:\"我知道我做得不对——"
"我不该用这种方式——我不该让你们难受。"
"我欠你们一个道歉——认真的道歉。对不起。\"\n\n"
"大厅里沉默了很久。然后一个老成员开口了——"
"\"会长——你说对不起的时候——是认真的吗?\""
"我说:\"认真的。\"\"那你以后还会不会这样?\""
"我想了想——\"我不知道——我不能保证——"
"因为我也不知道我明天会觉得什么有意思。"
"但我可以保证——不管我去做什么——"
"暗夜始终是我最在乎的地方之一。\"\n\n"
"剑指苍穹这时候开口了——\"够了。"
"他是会长——他做什么都是他的自由。"
"我们加入暗夜的时候——不是因为他能带我们赢联赛——"
"是因为他牛逼。他现在依然牛逼——只是他选择用另一种方式牛逼。"
"你们有什么好不满的?\"\n\n"
"没有人反驳。因为剑指苍穹说的——是事实。")
print("\n=== 最终统计 ===")
for f in sorted(os.listdir(D)):
if f.endswith(".md") and f.startswith("第"):
with open(os.path.join(D,f),"r",encoding="utf-8") as fp:
h = hz(fp.read())
flag = "OK" if h >= 2000 else "NEED"
print(f" {flag} {f}: {h}")
print("\n扩展完成")