Skip to content
demian-moPublic

About

No description, website, or topics provided.

Resources

Stars

87 stars

Watchers

0 watching

Forks

Repository files navigation

🎮 麦麦图鉴 McDex

把麦当劳菜单变成宝可梦图鉴。 每个餐品都是一个物种,营养值就是种族值,套餐是组合技,限定品是闪光——吃饭就是抓宠,点单就是组队。

麦当劳程序员节创意开发大赛参赛作品 | 基于麦当劳 MCP 开发 | 用 WorkBuddy 辅助开发


这是个啥

你有没有过这种时刻:打开麦当劳菜单,明明只是想吃个午饭,却感觉在看一张生物图鉴?

  • 巨无霸明明就是经典线的最终形态(汉堡包 → 麦香鱼 → 巨无霸);
  • 小薯/中薯/大薯就是同一条进化链,进化只会长个;
  • 圆筒冰淇淋会在草莓麦旋风和奥利奥麦旋风之间分支进化;
  • 姜饼风味拿铁这种季节限定,就是闪光个体——错过了要再等一年。

麦麦图鉴把这一切做成了真的。它读取麦当劳 MCP 的官方餐品营养数据,把每样餐品编目成图鉴物种:科属、稀有度、进化线、种族值,一应俱全。你今天吃的每一顿,都是一次图鉴收集。

📺 麦麦图鉴(捕获率 3/160)
— 堡堡科 —
  🍔 №MCD029 巨无霸          ★史诗
   ▪  №MCD030 培根蔬萃双层牛堡   ★史诗  ← 还没抓到
— 薯薯科 —
  🍟 №MCD006 大薯条          ◆稀有
— 彩蛋科 —
  ✨ №MCD147 “苹板”支撑Pro     ✨闪光
🍔 №MCD029 巨无霸 |堡堡科 |★史诗 |经典牛线·第3阶
    种族值 HP162 攻击141 防御123 特攻127 特防156 速度128
    厚实可靠的主力选手。单层还是双层,决定它是同伴还是BOSS。(图鉴备注:该个体战斗力和满足感都属于顶级梯队。)

玩法

玩法 说明
🌲 出门觅食(主玩法) 随机遭遇战:草丛晃动,只露剪影——「???: 一阵特别的气息,像是限时活动才有的东西……」丢出薯条盒,三晃判定,稀有度越高越容易挣脱(闪光收服率仅约19%),逮到了图鉴卡当场展开
🎫 随机掉券 收服成功后 50% 概率草丛掉落一张真实麦麦省券(来自官方券池,只播报不代领)
看图鉴 全物种列表、按科属/稀有度/关键词检索,未捕获的只有剪影
组队伍 把你今天点的东西加进队伍,捕获播报直接亮出每只的完整图鉴卡(种族值 + 官方营养原值)
查合计 队伍总热量/蛋白质/脂肪/钠…对照每日参考值的百分比条
触发组合技 堡+薯+可乐=「经典铁三角」,双辣同场=「双辣共鸣」,限定品=「闪光捕获」……7 种组合技等你自己撞出来
集成就 初训师、闪光猎人、全图鉴…… 8 个成就,达成即时播报,存档自动记录
🎫 券感知(需 Token) 查当前麦麦省券池,自动匹配你图鉴里的物种——「你抓过的这只,今天有券」。只读不领,领券走官方渠道
✨ 闪光预报(需 Token) 解析官方活动日历,上新/限定/联名/回归动向提前预警——「错过再等一年」从文案变成行动提醒

核心信条:吃饭就是抓宠,点单就是组队。

遭遇战实况:

🌲 草丛晃了一下……
   ???: 个头不小,动静很大,不太好对付的样子。

    ▟▙  ??? |堡堡科 |史诗

   丢薯条盒按 y,转身离开按 n > y
   第1晃 … 稳住没挣脱。
   第2晃 … 稳住没挣脱。
   第3晃 … 薯条盒晃了晃……它探出头来!
💨 它挣脱薯条盒跑了……下次手快点。

快速开始

最省事:克隆后双击 开始图鉴.command(macOS),菜单式交互,推荐从这进。

git clone https://github.com/demian-mo/mcd-dex.git
cd mcd-dex

# 方式一:双击(macOS)——「开始图鉴.command」,菜单式游玩
# 方式二:交互模式
python3 play.py

# 方式三:命令行直用
python3 mcd_dex/dex_engine.py grid          # 查看图鉴(160 只官方数据)
python3 mcd_dex/dex_engine.py find 巨无霸    # 查询某只
python3 mcd_dex/dex_engine.py team MCD029 MCD006 MCD031   # 组队
python3 mcd_dex/dex_engine.py achieve       # 成就

# 实时情报(需 MCP Token)
python3 mcd_dex/dex_engine.py coupons       # 券感知
python3 mcd_dex/dex_engine.py shiny         # 闪光预报

零第三方依赖,Python 3.9+ 直接跑。仓库自带的 data/dex.json 已是官方数据同步结果,开箱即玩。

数据来源与同步

图鉴数据全部来自麦当劳 MCP 官方营养接口(list-nutrition-foods),160 只麦麦的营养值(能量/蛋白质/脂肪/碳水/钠/钙)均为官方原值,项目不做任何数值编造。科属、稀有度、进化线是本项目的「编目规则」——公开、可改、欢迎拍砖。

想重新同步最新菜单(麦当劳上新即生效):

export MCD_MCP_TOKEN=你的Token   # open.mcd.cn/mcp 免费申请
python3 scripts/fetch_dex.py

种族值是怎么算的(半玩笑半认真)

属性 来源营养素 一本正经的理由
HP 能量 kcal 血条厚度
攻击 蛋白质 力量来自蛋白
防御 脂肪 物理缓冲层
特攻 热量密度 能量轰炸
特防 钙 骨骼坚固
速度 碳水化合物 快充能量

数值全部来自麦当劳官方营养接口,映射规则公开在 mcd_dex/dex_engine.py,欢迎拍砖。

项目结构

mcd-dex/
├── 开始图鉴.command        # macOS 双击即玩入口
├── play.py                # 交互模式(菜单式游玩,含遭遇战)
├── mcd_dex/
│   ├── dex_engine.py      # 图鉴引擎:物种/种族值/遭遇战/薯条盒捕捉/组合技/存档/成就
│   ├── live.py            # 实时情报:券感知 + 闪光预报 + 掉券池(MCP,只读)
│   └── mcp_client.py      # 麦当劳 MCP 客户端(零依赖,urllib 实现)
├── scripts/
│   └── fetch_dex.py       # 官方营养数据 -> 图鉴 同步脚本
├── data/
│   └── dex.json           # 图鉴数据(官方同步结果,160 只)
├── tests/
│   └── test_engine.py     # 自测(33 项)
├── CONTEST_DECLARATION.md # 参赛声明
├── MCP_INTEGRATION.md     # MCP 接入说明
├── mcp-config.example.json # 脱敏 MCP 配置示例
└── workbuddy.md           # WorkBuddy 开发对话记录

已知边界

  • 图鉴营养数值全部来自麦当劳 MCP 官方接口;「科属/稀有度/进化线/图鉴描述」为项目编目规则,非麦当劳官方分类;
  • 队伍合计中的「每日参考值」为公开膳食指南的常用近似,仅供参考,不构成营养建议;
  • 本作品为大赛参赛作品,非麦当劳官方产品;餐品信息以麦当劳官方渠道实时数据为准。

License

MIT(麦当劳相关商标权利归麦当劳所有,本项目仅作大赛参赛用途)。

About

No description, website, or topics provided.

Resources

Stars

87 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages