# 功能更新 - 爬塔任务 v3.2.0 ## 📅 更新日期 2025年10月7日 --- ## 🎯 更新概述 在批量自动化任务中新增**爬塔功能**,支持设置爬塔次数(0-100次),并扩展了子任务详情显示,现在可以查看所有批量任务的执行状态。 --- ## ✨ 新增功能 ### 1. 爬塔任务 **功能描述**: - 支持自动执行爬塔任务 - 可配置爬塔次数:0-100次 - 设置为0时自动跳过爬塔任务 - 超时时间:1000ms(1秒) **使用场景**: - 每日爬塔任务自动化 - 快速提升爬塔进度 - 批量角色爬塔 --- ### 2. 爬塔次数配置 **配置位置**: 在批量任务面板的配置区域 **配置方式**: - 使用滑块调整次数(0-100) - 实时显示当前设置的次数 - 配置保存在浏览器本地存储 **默认值**: - 默认为 0 次(跳过爬塔) --- ### 3. 扩展子任务详情显示 **新增功能**: 子任务详情现在显示所有批量任务的执行情况,包括: #### 一键补差子任务(46个) - 分享游戏 - 赠送好友金币 - 免费招募 / 付费招募 - 免费点金(3次) - 开启木质宝箱 - 福利签到 - 领取各类礼包 - 领取邮件 - 免费钓鱼(3次) - 灯神扫荡(4国) - 领取扫荡卷(3次) - 黑市购买 - 竞技场战斗(3次) - 军团BOSS - 每日BOSS(3次) - 盐罐机器人操作 - 领取任务奖励(10个) - 领取日常/周常任务奖励 #### 其他批量任务(5个) - 俱乐部签到 - 一键答题 - 领取挂机奖励 - 加钟 - 爬塔 **查看方式**: - 点击角色卡片的"子任务"按钮 - 切换视图:全部任务 / 一键补差 / 其他任务 - 查看每个任务的完成状态 --- ## 🎨 用户界面 ### 1. 批量任务面板 **新增配置项**: ``` ┌────────────────────────────────────────┐ │ 选择任务模板 | 并发数量 | 爬塔次数 │ │ [完整套餐▼] | [━━●━━━] | [━━━━━●] │ │ | 5次 | 0次 │ └────────────────────────────────────────┘ ``` **爬塔次数滑块**: - 范围:0-100 - 显示当前设置值 - 0 = 跳过爬塔任务 --- ### 2. 子任务详情弹窗 **视图切换**: ``` ┌──────────────────────────────────────┐ │ [全部任务] [一键补差] [其他任务] [重置所有] │ └──────────────────────────────────────┘ ``` **统计信息**: ``` 总计: 51 已完成: 30 失败: 2 待执行: 19 ``` **任务列表**: - 显示所有任务的执行状态 - 标记消耗资源的任务 - 显示完成时间和错误信息 --- ## 🔧 技术实现 ### 1. 新增配置 **batchTaskStore.js**: ```javascript // 爬塔配置 const climbTowerCount = ref( parseInt(localStorage.getItem('climbTowerCount') || '0') ) // 爬塔次数(0-100,0表示跳过) // 设置爬塔次数 const setClimbTowerCount = (count) => { if (count < 0 || count > 100) { console.warn('⚠️ 爬塔次数必须在0-100之间') return } climbTowerCount.value = count localStorage.setItem('climbTowerCount', count.toString()) console.log(`🗼 爬塔次数已设置为: ${count}`) } ``` --- ### 2. 爬塔任务执行 **执行逻辑**: ```javascript case 'climbTower': // 爬塔任务 const climbResults = [] const count = climbTowerCount.value if (count === 0) { return { task: '爬塔', skipped: true, success: true, message: `爬塔次数设置为0,跳过执行` } } console.log(`开始爬塔,设置次数:${count}`) for (let i = 1; i <= count; i++) { try { const towerResult = await client.sendWithPromise('tower_climb', {}, 1000) climbResults.push({ task: `爬塔 ${i}/${count}`, success: true, data: towerResult }) await new Promise(resolve => setTimeout(resolve, 200)) } catch (error) { climbResults.push({ task: `爬塔 ${i}/${count}`, success: false, error: error.message }) // 如果失败,继续尝试剩余次数 } } // 标记爬塔任务完成 dailyTaskStateStore.markTaskCompleted(tokenId, 'climb_tower', true, null) return { task: '爬塔', taskId: 'climb_tower', success: true, data: climbResults, message: `完成${count}次爬塔` } ``` **特点**: - ✅ 超时时间:1000ms - ✅ 每次爬塔间隔200ms - ✅ 失败后继续执行剩余次数 - ✅ 记录每次爬塔结果 - ✅ 标记任务完成状态 --- ### 3. 扩展任务状态管理 **dailyTaskState.js**: ```javascript // 所有批量任务定义 const DAILY_FIX_TASKS = [/* 46个一键补差子任务 */] const OTHER_TASKS = [ { id: 'legion_signin', name: '俱乐部签到', consumesResources: false }, { id: 'auto_study', name: '一键答题', consumesResources: false }, { id: 'claim_hangup_reward', name: '领取挂机奖励', consumesResources: false }, { id: 'add_clock', name: '加钟', consumesResources: false }, { id: 'climb_tower', name: '爬塔', consumesResources: false } ] const ALL_TASKS = [...DAILY_FIX_TASKS, ...OTHER_TASKS] ``` **新增方法**: ```javascript // 获取详细任务列表(支持分类) getDetailedTaskList(tokenId, category = 'all') // 'all' | 'dailyFix' | 'other' // 获取一键补差任务列表 getDailyFixTaskList(tokenId) // 获取其他任务列表 getOtherTaskList(tokenId) ``` --- ### 4. 任务状态跟踪 **其他任务现在也使用 executeSubTask 跟踪状态**: ```javascript case 'legionSignIn': return await executeSubTask( tokenId, 'legion_signin', '俱乐部签到', async () => await client.sendWithPromise('legion_signin', {}, 1000), false ) case 'autoStudy': return await executeSubTask( tokenId, 'auto_study', '一键答题', async () => await client.sendWithPromise('study_startgame', {}, 1000), false ) // ... 其他任务类似 ``` **优势**: - ✅ 统一的状态管理 - ✅ 完整的执行记录 - ✅ 详细的错误信息 - ✅ 一致的用户体验 --- ## 📖 使用指南 ### 场景1:配置爬塔次数 **步骤**: 1. 打开批量任务面板 2. 找到"爬塔次数"配置项 3. 拖动滑块调整次数(0-100) 4. 系统自动保存配置 **示例**: ``` 爬塔次数: 20次 [━━━●━━━━━━━] (滑块位置) ``` **提示**: - 设置为 0 = 跳过爬塔 - 建议根据账号情况设置合适次数 - 次数越多,执行时间越长 --- ### 场景2:执行爬塔任务 **步骤**: 1. 确保任务模板包含"爬塔"任务(默认包含在完整套餐和快速套餐中) 2. 设置爬塔次数(大于0) 3. 点击"开始执行" 4. 等待任务完成 **执行日志**: ``` 开始爬塔,设置次数:20 ✅ 爬塔 1/20 - 成功 ✅ 爬塔 2/20 - 成功 ... ✅ 爬塔 20/20 - 成功 完成20次爬塔 ``` **如果设置为0**: ``` ⏭️ 爬塔次数设置为0,跳过执行 ``` --- ### 场景3:查看所有任务状态 **步骤**: 1. 任务执行后,点击角色卡片的"子任务"按钮 2. 在弹窗中切换视图: - **全部任务**:显示所有51个任务 - **一键补差**:只显示46个一键补差子任务 - **其他任务**:显示5个其他批量任务 3. 查看每个任务的状态 **示例视图**: **全部任务(51个)**: ``` ✅ 分享游戏 [未执行] ✅ 付费招募 [消耗资源] [已完成] ... ✅ 俱乐部签到 [已完成] ✅ 爬塔 [已完成] 完成时间: 2025-10-07 09:15:30 ``` **其他任务(5个)**: ``` ✅ 俱乐部签到 [已完成] ✅ 一键答题 [已完成] ✅ 领取挂机奖励 [已完成] ✅ 加钟 [已完成] ✅ 爬塔 [已完成] ``` --- ## 📊 性能数据 ### 爬塔执行时间 | 次数 | 预计时间 | 说明 | |-----|---------|------| | 10次 | 12秒 | 10 × (1秒超时 + 0.2秒间隔) | | 20次 | 24秒 | 20 × 1.2秒 | | 50次 | 60秒 | 50 × 1.2秒 | | 100次 | 120秒 | 100 × 1.2秒(2分钟) | **注意**: - 实际时间可能更短(如果服务器响应快) - 失败的任务不会增加额外时间(已计入超时) --- ### 100角色批量爬塔 **场景**:100个角色,每个爬塔20次 **计算**: - 并发数5:约 100/5 × 24秒 = 480秒(8分钟) - 并发数6:约 100/6 × 24秒 = 400秒(6.7分钟) **优势**: - 自动化,无需手动操作 - 批量处理,节省大量时间 - 可配置,灵活调整次数 --- ## ⚠️ 注意事项 ### 1. 爬塔次数设置 **建议**: - 根据账号实际情况设置 - 不确定时先设置较小值测试 - 观察执行结果后调整 **风险**: - 设置过高可能导致执行时间过长 - 如果爬塔失败率高,建议降低次数 --- ### 2. 任务模板 **爬塔任务包含在以下模板中**: - ✅ 完整套餐 - ✅ 快速套餐 - ❌ 仅一键补差 **自定义模板**: - 可以自己创建包含/不包含爬塔的模板 - 使用"自定义模板"功能 --- ### 3. 执行失败处理 **爬塔失败的可能原因**: - 已达爬塔上限 - 体力不足 - 网络超时 - 服务器错误 **系统行为**: - 失败后继续尝试剩余次数 - 记录失败原因 - 在详情中可查看具体错误 --- ## 🆕 模板更新 ### 更新后的模板 **完整套餐**: ```javascript tasks: [ 'dailyFix', // 一键补差 'legionSignIn', // 俱乐部签到 'autoStudy', // 一键答题 'claimHangupReward', // 领取挂机奖励 'addClock', // 加钟 'climbTower' // 爬塔(新增) ] ``` **快速套餐**: ```javascript tasks: [ 'legionSignIn', // 俱乐部签到 'autoStudy', // 一键答题 'claimHangupReward', // 领取挂机奖励 'addClock', // 加钟 'climbTower' // 爬塔(新增) ] ``` --- ## 🎯 使用建议 ### 1. 日常爬塔 **推荐配置**: - 爬塔次数:10-20次 - 任务模板:完整套餐或快速套餐 - 并发数:5-6 **适合**: - 每日例行爬塔 - 维持爬塔进度 - 领取爬塔奖励 --- ### 2. 快速推进 **推荐配置**: - 爬塔次数:50-100次 - 任务模板:仅爬塔(自定义) - 并发数:6 **适合**: - 快速提升爬塔层数 - 活动期间冲榜 - 批量角色爬塔 --- ### 3. 跳过爬塔 **配置**: - 爬塔次数:0 **适合**: - 不需要爬塔时 - 节省执行时间 - 专注其他任务 --- ## 📝 总结 ### 主要特性 1. **灵活配置** - 爬塔次数可调(0-100) - 设置为0自动跳过 - 配置持久化保存 2. **完整跟踪** - 所有任务状态记录 - 详细的执行日志 - 失败原因追踪 3. **统一管理** - 所有批量任务统一显示 - 支持视图切换 - 便于查看和管理 4. **用户友好** - 直观的UI界面 - 实时反馈 - 详细的提示信息 --- ### 版本信息 **版本**: v3.2.0 **更新日期**: 2025-10-07 **主要内容**: - 新增爬塔任务 - 扩展子任务详情显示 - 所有批量任务状态跟踪 - 优化用户界面 --- **相关文档**: - [批量任务使用说明.md](./批量任务使用说明.md) - [功能更新-任务状态跟踪.md](./功能更新-任务状态跟踪.md) - [一键补差完整子任务清单.md](./一键补差完整子任务清单.md)