FIT2CLOUD
Steam 信息展示 的图标

Steam 信息展示

986
282

在 Halo 博客中展示 Steam 用户资料、游戏库和最近游玩记录

0.2.0-beta.2
TimOxO 发布于

v0.2.0-beta.2

预发布
>=2.22.1

本次更新包含 核心算法重构资源命名规范化,旨在彻底解决时长统计异常问题并提升插件的长期稳定性。

⚠️ 重要升级提示

由于对 Custom Resource Group 进行了规范化修正(steam.halo.runsteam.timxs.com),本次更新将重置所有历史统计数据
升级后,插件将基于新算法重新开始记录游戏时长与热力图数据,旧数据虽然保留在数据库中但不再显示。建议在升级后手动点击控
制台的「刷新缓存」按钮。
也可以在升级前通过数据工厂导出模型 DailyPlaytimeRecord 与模型 PlaytimeSnapshot 记录,批量修改 "apiVersion": "steam.halo.run/v1alpha1""apiVersion": "steam.timxs.com/v1alpha1" 即可保留数据。

🐛 问题修复 (Bug Fixes)

  • 重构游戏时长统计算法(智能平滑处理)

    • 修复了因 服务中断定时任务漏跑(如 Halo 重启、网络波动)导致的数据堆积问题。
    • 旧版行为:当检测间隔跨越多个日期时(例如插件停机两天后恢复),累积时长会全部记在恢复当天,导致单日数据虚高
      且中间日期断层。
    • 新版行为:引入 时间窗口加权算法,自动检测时间跨度,将累积时长按比例平滑分配给期间的每一天,确保热力图数据的连续性与合理性。
  • 修复 API 路由与资源命名不规范

    • 将所有 API 路由域名统一修正为 api.steam.timxs.com
    • 修正了 CRD Group 定义,符合 Halo 插件开发的最佳实践。
  • 修复前端页面与设置项的死链

    • 修复了设置页面的「验证配置」、「刷新缓存」、「手动追踪」按钮因 API 地址变更失效的问题。
    • 修复了 steam.html 模板中热力图数据加载失败的问题。

⚡ 改进与优化 (Improvements)

  • 新增异常数据熔断保护

    • 当检测到数据跨度超过 60天(如长期弃坑后回归)时,系统将跳过每日明细生成,仅更新总时长快照。这有效防止了极端脏数据破坏热力图的可读性。
  • 提升系统健壮性

    • 增强了 PlaytimeTrackingService 对异常时间窗口(如负数时间差)的防御性检查。

Generated from v0.2.0-beta.2

资源下载

  • plugin-steam-0.2.0-beta.2.jar
0.2.0-beta.1
TimOxO 发布于

v0.2.0-beta.1

预发布
>=2.22.1

本次更新主要带来了全新的游戏时长热力图功能,支持自动追踪 Steam 游戏时长变化并以 GitHub 风格的热力图进行展示。同时优化了后台设置页面的 UI 体验。

✨ 新特性 (New Features)

  • 游戏时长热力图 (Playtime Heatmap)
    • 类似于 GitHub 贡献图,可视化展示每日的游戏时长投入。
    • 支持自定义热力图颜色主题(Steam 蓝、GitHub 绿、火焰橙、紫色梦幻)。
    • 支持配置显示最近 30 ~ 730 天的数据。
    • 支持鼠标悬停查看每日具体游戏时长详情。
  • 自动时长追踪
    • 新增定时任务,默认每小时自动记录游戏时长变化。
    • 数据持久化存储,支持配置数据保留天数(默认 365 天)。
    • 支持在后台手动触发一次立即追踪(便于测试)。
  • 更多配置选项
    • 新增 隐藏的游戏 选项,允许控制是否统计免费游戏(如 CS2、Dota 2)。
    • 热力图功能支持单独开关。

⚠️ 注意事项 (Notes)

  1. 历史数据说明:Steam API 不提供历史每日数据,热力图数据只能从开启功能后开始记录。
  2. 首次使用:开启“启用游戏时长追踪”后,需等待至少 1 小时(或手动点击“手动追踪时长”按钮)才会产生第一笔数据。
  3. 数据准确性:如果在服务器停机期间玩游戏,这部分时长将在服务器恢复并进行下一次追踪时被一次性记录,可能会导致该时间段的数据出现峰值。

Generated from v0.2.0-beta.1

资源下载

  • plugin-steam-0.2.0-beta.1.jar
0.1.1
TimOxO 发布于

v0.1.1

最新
>=2.22.1

新功能

  • 支持自定义系统徽章图片,可在「徽章配置」中添加 Badge ID 与图片 URL 映射

优化

  • Finder 层统一 9 秒超时,确保在 Halo 框架超时前返回结果
  • API 请求超时默认值从 10 秒改为 8 秒
  • 模板区分 API 失败(显示错误提示)与空数据(显示空状态)
  • 统计栏在 API 失败时显示 - 而非 0

修复

  • 修复代理配置表单字段切换时值错位的问题

Generated from v0.1.1

资源下载

  • plugin-steam-0.1.1.jar
0.1.0
Ryan Wang 发布于
>=2.22.1

🎮 首个版本发布!

✨ 功能特性

  • 展示 Steam 用户资料(头像、昵称、在线状态、等级、上次在线时间)
  • 展示游戏库列表(支持分页、按游玩时长排序)
  • 展示最近游玩的游戏(可选显示成就进度)
  • 展示统计数据(游戏总数、总游玩时长、最近两周游玩时长)
  • 展示徽章信息(徽章列表、经验值、等级进度)
  • 数据缓存机制,减少 API 调用
  • 支持 Steam API 代理配置
  • 支持自定义图片 CDN 加速
  • 提供独立的 Steam 页面(/steam
  • 提供 Finder API,方便主题集成
  • 提供 REST API,支持前端异步获取数据

📋 环境要求

  • Halo >= 2.22.1
  • JDK 21

📦 安装方式

下载 plugin-steam-0.1.0.jar,在 Halo 后台 → 插件 → 安装插件 → 上传并启用

🔧 配置说明

  1. 获取 Steam API Key
  2. 获取 Steam ID(17位数字格式)
  3. 在插件设置中填写配置并验证

Generate from v0.1.0

资源下载

  • plugin-steam-0.1.0.jar