从 Steam / PSN / Xbox / Epic 拉取游戏库,按「资源」模板创建游戏笔记,并同步已有笔记的游玩时长与成就。Steam 为正式支持,PSN / Xbox / Epic 为实验性支持。
- 在第三方插件里启用
Game Sync(插件 id:obsidian-game-sync) - 设置里填写对应平台的授权信息
- 点左侧手柄图标,或命令面板执行对应命令
- 设置:Steam API Key(https://steamcommunity.com/dev/apikey)+ Steam ID(游戏详情需公开)
- 命令:
获取 Steam 游戏数据/同步已有 Steam 游戏时长与成就 - 已有游戏按
steam_appid或「英文名」匹配,直接更新时长和成就 - 读取本地 Steam 库:路径、大小、已下载/未下载状态
- 封面优先使用 SteamGridDB,未配置时回退 Steam 商店封面
设置里点「PSN 授权登录」→ 弹窗复制 NPSSO → 点「生成命令 / 复制命令」→ 到系统终端运行 → 把输出的 Access Token / Refresh Token 填回设置(详见《如何获取授权》)。
- 设置:点「PSN 授权登录」→ 弹窗引导复制 NPSSO 并生成一条零依赖 Node 命令(无需安装 psn-api),到终端跑一次即可拿到 Access/Refresh Token 并填入;Access Token 过期后插件自动用 Refresh Token 续期
- 命令:
获取 PSN 游戏数据 - 读取:游戏列表、最近游玩、封面、
playDuration时长(ISO 8601,如PT1H51M21S) - 数据源可切 GameList / Trophy(Trophy 模式含 PSV/PS3 奖杯,但无时长字段)
- 已有笔记按
psn_appid或「英文名」匹配
点「打开 Xbox 登录页」→ 登录后 F12 Network 过滤
xboxlive.com,复制完整Authorization头(XBL3.0 x=...;...)。填好后可点「校验当前凭据」自动补全 xuid。
- 设置:Xbox XBL3.0 Authorization(微软 OAuth 流程复杂,无法插件内完成,一次复制长期有效)+ xuid(可留空,「校验当前凭据」会自动获取)
- 命令:
获取 Xbox 游戏数据 - 读取:游戏列表、最近游玩、封面、成就
- 时长通过
userstats.xboxlive.com的MinutesPlayed逐游戏获取,同步/创建时写入;部分游戏不暴露该统计,则写为「未游玩」 - 已有笔记按
xbox_appid或「英文名」匹配
推荐在设置里点「Epic 授权登录」走官方 OAuth,读完整游戏库;不想登录就切「本地清单」读已安装游戏。详见
如何获取PSN_Xbox_Epic授权.md。
- 设置:点击「Epic 授权登录」完成 OAuth 授权(自动交换并保存 Access Token + Refresh Token,过期自动刷新);也可切「本地清单」读取
*.item中的已安装游戏 - 命令:
获取 Epic 游戏数据 - 读取:完整游戏库(库接口只返回 catalogItemId,插件会自动调 catalog 接口解析出真实标题与封面,并过滤 DLC / 原声等附加内容);游玩时长走 playtime 接口(在线模式);已安装游戏的路径和大小(本地模式)
- 已有笔记按
epic_appid或「英文名」匹配
- 扫描范围:
笔记文件夹下所有 md,以及 frontmatter类型: 游戏的 md - 新游戏在弹窗中勾选后批量创建,自动追加到「索引文件」
- 模板占位符:
{{name}} {{english_name}} {{appid}} {{playtime}} {{playtime_hours}} {{playtime_minutes}} {{last_played}} {{achievements}} {{achievement_list}} {{cover}} {{status}} {{source}} {{path}} {{size}} {{date}} - 非 Steam 平台创建时,会把默认模板中的
来源: Steam和steam_appid替换为对应平台字段
- frontmatter 写入
成就: 12/54,看板卡片会显示完成度 - 笔记底部
## 成就写成 Markdown 表格:图标、名字、说明、时间(Steam 另含所有玩家完成百分比) - 图标用表格单元格里的
<img>,避免![|48]把表格拆坏 - 数据写在笔记本地,打开预览不必再实时请求
- 没有成就、或统计未公开的游戏会写成
无
仓库已初始化为 git,直接提交并推送即可:
git add -A
git commit -m "your message"
git push origin master
.gitignore已忽略data.json,不会把 API Key / Token 推上去。
- PSN / Xbox / Epic 接口多为社区逆向或客户端接口,可能随平台更新失效,仅供实验使用
- PSN 授权需本机装有 Node.js(≥18,用于跑换取 Token 的命令);Xbox / Epic / Steam 无需
- Token / Authorization / NPSSO 都是账号凭证,保存在插件
data.json,请勿分享 - 本插件为桌面端插件(
isDesktopOnly: true)