# 阴阳师日常 **Repository Path**: lan0811/qingtao ## Basic Information - **Project Name**: 阴阳师日常 - **Description**: 阴阳师日常修行小助手 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: https://web.lanaiw.top - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-30 - **Last Updated**: 2026-08-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🍵 痒痒鼠日常 · 阴阳师日常工作台
**阴阳师玩家的每日修行小助手 —— 日常打卡 · 周常追踪 · 活动倒计时 · 资源账本 · 宠物养成 · 攒抽规划** > 开服五分钟,修行一目了然。动动手指,今日修行轻松搞定!
--- ## 📖 项目简介 「痒痒鼠日常」(阴阳师日常工作台)是一款面向 **阴阳师** 玩家的本地 Android 辅助应用,帮你把游戏里的「每日必做」管起来: - ✅ **日常打卡**:每日修行一键勾选(内置 9 项,支持自定义增删),24:00 自动重置,完成数达档发放宠物食物; - ✅ **周常追踪**:每周修行 7 项(支持自定义),周一自动归档,仅保留最近 4 周,完成随机掉落礼物; - ✅ **活动提醒**:抽卡 / 超鬼王 / 崽战 / 联动 / 限时副本的创建、倒计时、紧急置顶、归档,支持搜索与类型筛选; - ✅ **资源账本**:体力 / 勾玉 / 蓝票 / 黑蛋 收支联动,流水明细与累计统计; - ✅ **多账号管理**:添加 / 切换 / 重命名 / 删除,各账号打卡、周常、资源、活动、宠物、抽卡数据完全隔离,老数据升级自动迁移; - ✅ **宠物养成**:小团子独立成长,好感五级、饱食自然衰减、投喂送礼、自定义互动文案,陪伴你完成每日修行; - ✅ **应用内桌宠**:五个主页面常驻悬浮,直接拖动、半圆交互按钮、三档动效,9 套逐帧动画; - ✅ **攒抽规划 + 抽卡模拟器**:蓝票 / 勾玉换算抽数、多目标进度与达成日期推算;本地整活抽卡(常驻 / 活动限定 / 自定义心愿池,90 抽硬保底); 全部数据保存在 **本地数据库(uni 本地存储)**,无云端、无广告、无需登录,开箱即用。 > 当前版本:**3.1.2 / versionCode 312**(单宠小团子 · 主题皮肤 · 每日运势)。宠物系统仅在应用内显示,不申请 Android 系统悬浮窗权限。 --- ## 🌟 主要功能 ### 打卡与统计 - ✅ **顶部全局通栏**:时间 / 农历 / 星期 / 距凌晨 5 点游戏刷新倒计时,实时刷新,常驻所有页面;农历算法自实现(1900~2100,干支年 / 生肖 / 农历日期) - ✅ **今日总览 + 今日待办明细**:首页汇总日常 / 周常 / 活动未完成项,区分每日 / 每周 / 限时分组展示,导航角标 + 点击直达 - ✅ **每日修行打卡**:三列三行图标格,进度条 + 完成计数,24:00 自动重置;完成 1/3/5/9 项发放寿司 / 饭团 / 丸子 / 蛋糕,领奖账防取消重勾重复发奖 - ✅ **周常修行打卡**:单行勾选 + 一键重置整周,每个任务首次完成随机掉落勾玉 / 蓝票 / 黑蛋 / 桃子,周一自动归档近 4 周 - ✅ **自定义任务**:日常 / 周常任务模板全局共用(切换账号保留),支持增删与重命名、首字兜底图标、折叠管理面板,打卡数据仍按账号隔离 - ✅ **打卡统计图表**:近 7 天完成率环形图 + 柱状图、近 4 周柱状图(原生 view/css 手绘,无第三方图表库) ### 资源与活动 - ✅ **资源收支联动**:4 类资源(体力 / 勾玉 / 蓝票 / 黑蛋)增 / 减实时更新余额,写入流水并累加累计收支统计 - ✅ **活动 CRUD 与提醒**:倒计时 ≤24h 或已过期 → 角标变红 + 首页清单置顶 + 倒计时红字;搜索 + 类型筛选 + 进度条,结束可归档,行内点击编辑 - ✅ **壁纸系统**:内置 4 张和风壁纸 + 本地上传 + 定时轮换(每小时 / 每6小时 / 每日)+ 分页专属优先 - ✅ **主题皮肤**:四套浅色和风主题(薄荷绿 / 樱花粉 / 山吹金 / 紫藤),个人页底部面板色块即时切换、全局保存,只换配色不改变布局 - ✅ **每日运势**:以日期为种子的固定运势(同一天全设备一致、不闪变),首页展示吉凶 / 幸运数字 / 幸运色 / 宜忌清单与和风文案,标注仅供娱乐 - ✅ **樱花特效**:可开关的全屏飘落樱花 ### 账号与数据 - ✅ **多账号管理**:个人页添加 / 切换多个游戏账号,各账号数据完全隔离、无需登录;壁纸 / 设置 / 任务模板全局共用;老数据首次升级自动引导迁移;账号删除双重确认(列出将清除的数据明细) - ✅ **数据备份**:JSON 全量导出(SAF 文件管理器选路径,含全部账号)/ 导入恢复 / 一键清空当前账号 - ✅ **无账号冷启动引导**:全新安装进入首页弹窗提示添加账号(可跳过、弹窗内直接建号),老数据迁移期不拦截 ### 宠物系统 2.0 - ✅ **宠物养成**:小团子支持改名、头像与签到联动,饱食每日自然衰减,五级好感(初识 → 羁绊),每日互动上限 10 次,自定义等级文案 - ✅ **投喂送礼闭环**:日常打卡奖励食物、周常掉落礼物 → 宠物小窝投喂 / 送礼 → 涨饱食涨好感 → 互动文案变化,奖励防重复发放 - ✅ **应用内桌宠**:首页 / 日常 / 周常 / 活动 / 个人五页常驻,直接拖动与左右吸附、记忆归一化位置,半圆交互按钮自动朝向屏幕内侧,支持小 / 中 / 大尺寸与完整 / 精简 / 关闭动效 - ✅ **逐帧动画**:小团子内置 9 套透明 WebP 精灵表(384×384 帧、4 列网格),含静态回退图 ### 宠物生态 3.0 - ✅ **宠物币经济**:单机自洽的经济循环(图标 / 余额 / 收支流水),账号级隔离,打工 / 小游戏赚取、商店消费 - ✅ **离线打工**:5 档工作按好感等级解锁(百鬼书屋 1h → 百鬼夜行护卫 24h),真实小时离线计时(关 App 照常结算),派工需饱食 ≥30 并扣 5 饱食,领薪按实际小时扣饱食,饿肚子(饱食 ≤20)收益减半,防系统时间回拨 - ✅ **宠物商店**:食物 / 礼物 / 家具三分类;10 种可计数装饰与 4 套唯一功能家具外观,余额不足或重复外观禁用,跨键消费失败自动回滚 - ✅ **宠物小游戏**:猜式神(三选一)/ 猜拳 / 翻牌配对三款,赢宠物币;每日每游戏限 5 次、日收益封顶 60,跨日重置防刷 - ✅ **沉浸式宠物小窝**:正面 2.5D 横向宽幅和风房间,昼夜场景、六阶段状态机、宠物自主闲逛与 12 项家具行为、镜头跟随、功能家具外观切换、避让通道的网格拖拽装饰和底部功能抽屉 - ✅ **宠物进化**:小团子进化形态及 9 套动作动画已内置;好感达到 1000 后可执行不可逆进化,小窝、宠物中心与悬浮桌宠全局联动,数据按账号隔离 ### 抽卡专题(v2.0.2 新增) - ✅ **攒抽规划**:按「蓝票 + 勾玉÷100」换算当前可抽数(黑蛋 / 黑碎另列不计抽),支持多个目标(名称 / 目标抽数 / 备注)+ 每日预计新增抽数推算达成日期,资源账本变动自动重算进度 - ✅ **抽卡模拟器**:整活本地抽卡(**仅供娱乐,非真实概率**)——常驻池 / 活动限定池 / 自定义心愿池三卡池,单抽 / 十连逐张翻卡,90 抽硬保底(SSR:SP=2:1,按池独立计数、跨会话持久),出货统计与欧非称号,账号级隔离、不消耗任何资源 - ✅ **式神图鉴数据**:常驻池按官方式神图鉴补全非联动式神 218 位(SSR 64 / SP 50 / SR 66 / R 38),联动式神(犬夜叉 / 银魂 / 鬼灭 / 死神等)不入常驻池 --- ## 📸 页面导览 | 页面 | 说明 | |---|---| | 🏠 **首页** | 今日总览(日常 / 周常进度)、今日待办明细、5 点倒计时、今日壁纸大图、无账号引导 | | ✅ **日常** | 每日修行打卡(可自定义任务)+ 资源记录区(4 类收支)+ 累计收支统计 | | 📅 **周常** | 本周修行打卡(可自定义任务)+ 一键重置 + 过往 4 周记录 | | 🎯 **活动** | 活动创建(类型 / 起止日期)、搜索筛选、进行中倒计时、紧急置顶、归档管理 | | 👤 **个人** | 身份卡 + 速览 + 攒抽摘要 + 功能入口(数据统计 / 宠物小窝 / 壁纸素材库 / 设置 / 关于软件)+ 账号管理 | | 🏡 **宠物小窝** | 宽幅房间、自主生活、家具互动、拖拽布置、投喂送礼、成长进化与桌宠设置 | | 🎴 **抽卡模拟器** | 三卡池(常驻 / 活动限定 / 自定义心愿池)、单抽 / 十连逐张翻卡、保底计数、出货统计、欧非称号 | | 📊 **数据统计** | 近 7 天完成率环形图 + 柱状图、近 4 周柱状图 | | 🖼️ **壁纸素材库** | 内置壁纸 / 本地上传、定时轮换设置、分页专属壁纸 | | ⚙️ **设置** | 基础设置(提醒 / 樱花特效 / 高亮)与数据管理(备份 / 导入 / 清空) | > 5 个 tabBar 主页面 + 5 个独立子页(宠物小窝 / 抽卡模拟器 / 数据统计 / 壁纸素材库 / 设置),共 10 个页面。 --- ## 🚀 快速上手 ### 前置条件 - 系统要求:**Android 10+** - 开发工具:[HBuilderX](https://www.dcloud.io/hbuilderx.html)(uni-app 5+ App 开发) ### 本地运行 ```bash # 克隆/打开项目后,用 HBuilderX 打开 Android/ 目录 # 运行到 Android 手机或模拟器(真机调试 / 标准基座) 运行 → 运行到手机或模拟器 → 运行到 Android App 基座 ``` ### 打包发布 ```bash # HBuilderX → 发行 → 原生 App-云打包 # 签名:自用证书 / 云端证书(测试包 uni.app.UNIF1BB05F) # 产物:Android/unpackage/release/apk/*.apk ``` > ⚠️ 标准基座安装包恒为 DCloud 默认图标 / 启动页,应用图标与启动页需**云打包 / 自定义基座**验证。 > 版本号仅维护在 `Android/manifest.json` 和 `Android/utils/version.js`;应用只展示版本号,不执行联网检查、下载或安装更新。 --- ## 🔧 技术架构 | 层 | 技术选型 | |---|---| | 框架 | uni-app(Vue3,`vueVersion: 3`)+ 5+ App 运行时 | | 语言 | Vue3 组合式 / 选项式、JavaScript(ES Module) | | 存储 | uni 本地存储(`uni.setStorageSync` 统一封装 `utils/store.js`:JSON 序列化 + 默认值合并 + v1→v2→v3→v4 版本迁移钩子 + 多账号命名空间解析) | | 时间/农历 | 自实现轻量农历算法(1900~2100,无第三方依赖) | | 图表 | 原生 view/css 手绘:柱状图(flex 定宽柱条)+ 环形图(CSS conic-gradient) | | 文件 | `plus.io`(壁纸落盘 `_doc/wallpapers/`)、`plus.android`(SAF 文档选择:`ACTION_CREATE_DOCUMENT` / `ACTION_OPEN_DOCUMENT` + MediaStore / Downloads 降级链) | | 动画 | 透明 WebP 精灵表逐帧播放(384×384、4 列网格,`PetSprite.vue`) | | UI | 青桃和风设计系统(设计 token 落地于 `App.vue` 全局 CSS 变量,薄荷绿 × 樱花粉 × 米白) | | 构建 | HBuilderX 云打包 / CLI 语法校验(esbuild)+ Node 逻辑集成测试(mock uni/plus) | ### 目录结构 ``` 阴阳师-日常/ ├─ AGENTS.md # 开发规则 ├─ README.md # 项目说明(本文件) ├─ Android/ # uni-app 工程 │ ├─ App.vue # 全局生命周期 + 设计变量 + 启动初始化(迁移/重置/壁纸轮换) │ ├─ pages.json # 5 页 tabBar + 5 子页(共 10 页) │ ├─ manifest.json # 应用配置(图标/启动页/权限/版本号) │ ├─ main.js # 入口 │ ├─ utils/ │ │ ├─ store.js # 本地存储统一封装(v6 多账号命名空间 + 单宠数据迁移) │ │ ├─ time.js # 时间格式化 / 农历 / 5点倒计时 / 日键周键 │ │ ├─ checkin.js # 打卡重置/归档/统计(日常24点、周常周一) │ │ ├─ tasks.js # 默认日常/周常任务数据源(内置 d1~d9 / w1~w7) │ │ ├─ reward.js # 打卡奖励规则(日常食物、周常礼物,防重复发奖) │ │ ├─ pet.js # 宠物养成领域逻辑(成长/饱食/好感/文案) │ │ ├─ petAssets.js # 宠物动画资源表 │ │ ├─ petHome.js # 宽幅房间、功能锚点、外观与安全摆放领域逻辑 │ │ ├─ petRoomBehavior.js # 12 项行为、六阶段状态机与动效档位 │ │ ├─ gacha.js # 攒抽规划 + 抽卡模拟器领域逻辑(与 UI 解耦可单测) │ │ ├─ export.js # JSON 导出/导入(SAF + MediaStore 降级链) │ │ ├─ wallpaper.js # 壁纸轮换/分页专属/上传 │ │ ├─ version.js # 仅保存应用版本号 │ │ └─ badge.js # 导航角标(含重入护栏) │ ├─ components/ │ │ ├─ TopBar.vue # 顶部通栏(时间/农历/倒计时) │ │ ├─ WallpaperLayer.vue # 壁纸背景层 │ │ ├─ Petals.vue # 樱花特效 │ │ ├─ ProgressRing.vue # 环形进度 │ │ ├─ BarChart.vue # 柱状图 │ │ ├─ FloatingPet.vue # 应用内悬浮桌宠(拖动/吸附/半圆按钮) │ │ └─ PetSprite.vue # 宠物逐帧动画播放器 │ ├─ pages/ │ │ ├─ home/ # 首页(今日总览 + 待办明细) │ │ ├─ daily/ # 日常(打卡 + 资源) │ │ ├─ weekly/ # 周常 │ │ ├─ activity/ # 活动 │ │ ├─ profile/ # 个人(枢纽:身份/速览/攒抽/入口) │ │ ├─ pet-home/ # 宠物小窝 │ │ ├─ gacha/ # 抽卡模拟器 │ │ ├─ stats/ # 数据统计 │ │ ├─ settings/ # 设置 │ │ └─ wallpaper/ # 壁纸素材库 │ └─ static/ │ ├─ data/gacha_pool.js # 抽卡池式神名单(218 位非联动 + 概率配置) │ ├─ pets/ # 小团子逐帧动画(普通/进化形态 × 9 套 WebP + manifest) │ ├─ icons/ # 任务/资源/功能图标(20+ 张压缩 PNG) │ ├─ wallpapers/ # 4 张内置壁纸(fox-1~3 / ji) │ ├─ app-icon.png # 应用图标(小团子形象) │ └─ splash-*.png # 启动页(Android启动页预览.jpg) ├─ _verify/ # 本地验证脚本(run-tests / syntax-check 等) ├─ 图标/ # 设计源图标 ├─ 内置壁纸/ # 设计源壁纸 ├─ 宠物素材/ # 宠物素材(应用图标源) ├─ image/ # 启动页/预览图 ├─ docs/ # 文档(含游戏数据同步可行性分析报告) └─ .zcode/plans/ # 开发计划文档 ``` ### 数据模型(本地存储键) v6 数据层:账号隔离键自动落 `acc_<账号id>_` 命名空间,页面侧以原键名调用、命名空间解析在 store 层完成;全局键(设置 / 壁纸 / 任务模板 / 桌宠设置)所有账号共用。 | Key | 结构 | 说明 | |---|---|---| | `accounts` | `[{ id, name, onmyojiId, digitalId, avatar, signDays, createdAt }]` | 账号列表(个人资料并入账号对象) | | `current_account_id` | `string` | 当前激活账号 id | | `daily_tasks` / `weekly_tasks` | `[{ id, name, icon }]` | 任务模板(全局共用,自定义增删后仍全局) | | `acc__daily_checkin` | `{ date, done: {taskId: true}, rewards }` | 该账号日常打卡,24:00 自动重置,done 为对象映射 | | `acc__daily_records` | `[{ date, doneCount }]` | 该账号近 7 天归档 | | `acc__weekly_checkin` | `{ weekKey, done, gifts, rewardedTaskIds }` | 该账号周常打卡,周一自动重置,礼物防重复 | | `acc__weekly_records` | `[{ weekKey, done }]` | 该账号过往 4 周归档 | | `acc__resource_current` | `{ tili, jade, ticket, egg }` | 该账号资源现有值 | | `acc__resource_flow` | `[{ id, type, delta, ts, remark }]` | 该账号收支流水 | | `acc__resource_total` | `{ type: { in, out } }` | 该账号累计收支 | | `acc__activities` | `[{ id, name, type, startDate, endDate, archived }]` | 该账号活动列表 | | `acc__pet_rewards` | `{ food, gifts }` | 该账号宠物库存(打卡奖励 + 商店购入) | | `acc__pet_data` | `{ currentPetId: 'pet1', pets: { pet1 } }` | 该账号小团子养成数据(好感/饱食/互动/文案/进化标记) | | `acc__pet_economy` | `{ balance, flow, jobs, game }` | 该账号宠物币余额/流水、进行中打工、小游戏日账 | | `acc__pet_home` | `{ themeId, functional, ownedFunctional, decorInventory, decorations, cameraX }` | 该账号功能家具、可计数装饰库存、自由摆放实例与房间镜头 | | `acc__gacha_plan` | `{ goals: [...], dailyEstimate: { pullsPerDay } }` | 该账号攒抽规划 | | `acc__gacha_history` | `{ totalPulls, counts, pity, recent }` | 该账号抽卡统计与保底计数(recent ≤ 50 条) | | `acc__gacha_custom_pool` | `{ name, characters }` | 该账号自定义心愿池名单 | | `wallpapers` | `{ autoMode, perPage, builtin, uploaded }` | 壁纸配置(全局共用) | | `settings` | `{ remindOn, sakuraOn, midnightHighlight }` | 基础设置(全局共用) | | `pet_settings` | `{ visible, size, motion, position }` | 桌宠设置(全局共用) | --- ## 🧪 测试与验证 - **逻辑集成测试**:Node mock uni/plus 存储,**全量断言通过、失败恒为 0**(含随机大样本断言,总数随保底触发样本浮动)。覆盖:日常/周常重置与归档、任务模板与打卡隔离、资源流水、活动倒计时置顶、壁纸轮换/分页、SAF 导出导入与降级链、多账号迁移与备份还原、奖励累计防重复、农历日期、周键、宠物成长与文案校验、攒抽规划换算与 ETA、抽卡保底与大样本概率分布(2 万抽保底 / 10 万抽分布)、账号隔离 - **语法校验**:esbuild 全量 13 个 utils(含卡池数据)+ 15 个 vue `