← 回成果库

环球旅行 2D · 全球节日数据库 + 日程表 + 一键飞过去


一句话结论

94 个真实节日 · 61 个国家地区 · 9 大类,每条都带「什么时候 / 日期准不准 / 是什么 / 去哪看」四件套,并已接进游戏——在日程表上点一下就飞过去。

数据没有一条是我拍脑袋编的:坐标不手打、维基条目逐条联网核实、中文标题从英文条目的语言链接取、查不到就诚实留空。


一、数据库长什么样

维度数量
节日总数94
覆盖国家地区61
分类9 类:狂欢游行 15 · 传统民俗 19 · 宗教信仰 11 · 灯火烟花 11 · 音乐现场 10 · 自然季节 10 · 艺术电影 8 · 竞技冒险 7 · 美食与酒 3
带英文维基条目94 / 94(100%)
带中文维基条目63 / 94(其余诚实留空,不编假链接)
每条外部资源中文维基 · 英文维基 · 中文视频 · 英文视频 · B站 · 实拍图库(共 627 个外链

每个节日存了什么:中文名 / 英文名 / 当地原名(如 さっぽろ雪まつりสงกรานต์Þorrablót)/ 国家 / 城市 / 经纬度 / 分类 / 日期精度分档 / 起止日期 / 人话日期规则 / 2-3 句说明 / 6 条外部链接。


二、日期这件事,我没有装作精确(这是本次最关键的诚实点)

世界上的节日大多数不在公历固定日。所以数据库把日期精度分成三档,界面上照实标:

精度数量含义例子
📌 exact 固定日期23公历每年同一天奔牛节 7月6-14日、那达慕 7月11-13日
approx 每年浮动·月份稳定40月份稳定但具体日子每年调慕尼黑啤酒节(9月中起16-18天)、番茄大战(8月最后一个星期三)
🌙 movable 农历/宗教历·逐年不同31跟着农历、伊斯兰历、印度历、复活节走春节、里约狂欢节、排灯节、平溪天灯节

倒计时因此是近似值,这一点在页面上直接写明。补精确日历的两条路已写进缺口表(GAP7)。


三、三道机器闸(怎么保证不是编的)

数据库不是手写的 JSON,是一个可重跑的生成脚本 MetaZero-OS/scripts/festivals_build.py,跑一次就重新核实一次:

做什么实测拦下了什么
坐标不手打优先从 travel-2d 既有的 3689 座城市库取;库里没有的(戛纳、瓦哈卡、拉利贝拉…)走维基百科坐标接口77 条来自城市库、17 条来自维基坐标,手打坐标 0 条
维基条目逐条联网核实英文条目查不到 → 自动走维基搜索取真标题;中文标题不由我猜,一律从英文条目的语言链接取第一版我猜的中文标题错了 45 条(如「布拉格之春国际音乐节」根本不存在),全部被拦下并自动纠正
日期精度显式分档movable/approx 的起止日只用于排序与「大约什么时候」界面强制标注,不把农历伪装成公历

过程中还犯了一个错并当场改掉:一开始逐条查维基,被限流打回 429。按 API 纪律铁律,不是加大力气重试,而是换方法——改成维基官方支持的批量查询(50 条/次),94 条从 94 个请求降到 2 个请求,一次通过。

搜索自动纠正的 5 条(已逐条人工复核):

我原来写的实际条目
San FermínFestival of San Fermín
Brussels Flower CarpetFlower Carpet (Brussels)
Ivan Kupala NightKupala Night
Kelaat M'GounaKalaat M'Gouna
Lotus Lantern FestivalYeondeunghoe

另有 5 条搜索给出了不相干的条目(如把「塞伦盖蒂动物大迁徙」搜成了美国黑人大迁徙),我人工钉到了正确条目——自动纠正不等于自动正确,这一步必须人看


四、日程表与一键飞行

游戏内(📅 按钮,右下角按钮圈新增第 8 颗)

独立网页(不用进游戏也能看)


五、模块注册表已同步

新增 4 个模块,模块总数 71 → 75,并新增第 9 套配方:

编号模块
C11全球节日库 94 节 · 61 国
D9节日实体 🎊
E11📅 日程表 + 一键飞过去
F10节日环游循环

🎊 节日环游之旅(新配方,50 个模块):这是唯一一条挂在真实世界日历上的组合——七月打开是阿波舞与那达慕,二月打开是里约狂欢节与札幌雪祭。同一个存档,不同月份就是不同的世界。


六、红队自审

最强反对:「94 个节日对 195 个国家来说太少,而且日期不精确,作为『日程表』其实不好用。」

回应:这条部分成立

可证伪锚:如果有人逐条去查这 94 条的维基链接与举办地,发现有任何一条指向不存在的条目或错误城市——那我这套「机器闸」就是失败的。目前的实测是:英文条目 94/94 存在,坐标 94/94 有来源。


七、成品入口

产物位置
🎊 世界节日日历(网页)https://metazero-terminal.pages.dev/travel-2d/festivals
📅 游戏内日程表https://metazero-terminal.pages.dev/travel-2d/rpg → 右下角 📅
🧩 模块组合实验台(含节日环游配方)https://metazero-terminal.pages.dev/travel-2d/modules
📋 节日数据库web/terminal/travel-2d/data/festivals.json
⚙️ 生成器(可重跑核实)MetaZero-OS/scripts/festivals_build.py