# 合成等级埋点功能使用指南 ## 功能概述 本功能实现了对方块合成等级的追踪,专门用于统计: - 最高合成等级到达2级的人数和次数 - 最高合成等级到达3级的人数和次数 - 最高合成等级到达4级的人数和次数 ## 实现位置 ### 1. 埋点管理器 (AnalyticsManager.ts) - 新增 `BlockMergeProperties` 接口定义合成事件属性 - 新增 `trackBlockMergeLevel()` 主要追踪方法 - 新增 `trackMergeLevel2()`, `trackMergeLevel3()`, `trackMergeLevel4()` 具体等级追踪方法 ### 2. 方块管理器 (BlockManager.ts) - 在 `performMerge()` 方法中集成埋点调用 - 当稀有度升级到 uncommon(2级)、rare(3级)、epic(4级) 时自动触发埋点 ### 3. 测试模块 (BlockMergeTrackingTest.ts) - 提供完整的测试套件验证埋点功能 - 支持控制台直接调用测试函数 ## 稀有度等级映射 ``` common -> 1级 (不追踪) uncommon -> 2级 (追踪) rare -> 3级 (追踪) epic -> 4级 (追踪) ``` ## 事件属性 每个合成埋点事件包含以下属性: - `merge_level`: 合成等级 (2, 3, 4) - `weapon_type`: 武器类型 (如 'pea_shooter', 'sharp_carrot' 等) - `shape_type`: 方块形状 (如 'I', 'L', 'S', 'H-I', 'D-T') - `session_id`: 会话ID,用于区分不同用户 ## 测试方法 ### 1. 控制台测试 在浏览器控制台中执行以下命令: ```javascript // 运行完整测试套件 testBlockMergeTracking(); // 单独测试各等级 testMergeLevel2(); testMergeLevel3(); testMergeLevel4(); ``` ### 2. 游戏内测试 1. 启动游戏进入关卡 2. 放置相同武器和形状的方块到网格中 3. 让方块重叠触发合成 4. 观察控制台输出的埋点日志 ### 3. 验证要点 - 检查控制台是否输出埋点追踪日志 - 确认合成等级、武器类型、形状类型信息正确 - 验证只有2-4级合成会触发埋点(1级不会) - 确认同一用户多次合成会正确累计次数 ## 日志输出示例 正常合成时会看到类似日志: ``` [BlockManager] 合成成功,稀有度升级: common -> uncommon [BlockManager] 埋点追踪: 合成等级2, 武器=pea_shooter, 形状=I [Analytics] 追踪合成等级2: 武器=pea_shooter, 形状=I ``` ## 注意事项 1. 只追踪2-4级合成,1级合成不会触发埋点 2. 埋点会自动获取当前方块的武器类型和形状信息 3. 每次合成成功都会触发一次埋点事件 4. 系统会自动处理用户去重和次数统计 5. 如果获取武器或形状信息失败,会使用 'unknown' 作为默认值 ## 数据统计 通过埋点数据可以分析: - 各等级合成的达成率 - 不同武器类型的合成偏好 - 不同形状的合成难度 - 用户合成行为模式