4.3 KiB
4.3 KiB
| 1 | event | total_duration_ms | anticipation_ms | active_ms | recovery_ms | hit_stop_ms | logic_marker | vfx_layer | audio_cue | performance_budget | acceptance | source_tag |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | UIPrimaryPress | 180 | 0 | 70 | 110 | 0 | onPointerDown | HUD | sfx_ui_confirm | 0 particles | feedback begins within 50ms | VALIDATION_ADDED |
| 3 | DiceRoll | 1267 | 120 | 650 | 247 | 0 | diceResultCommitted | WorldUI | sfx_dice_roll|sfx_dice_settle | 1 trail + 1 result halo | result still readable >=250ms | RUNTIME_OBSERVED |
| 4 | DiceThirdChoice | 300 | 60 | 100 | 140 | 0 | thirdChoiceCommitted | ModalFront | sfx_ui_select | 1 replacement streak | A B C values remain visible through choice | VALIDATION_ADDED |
| 5 | MoveOneTile | 160 | 20 | 100 | 40 | 0 | tileStepAdvanced | World | sfx_step | 1 dust burst | actor settles on integer pixels | VALIDATION_ADDED |
| 6 | FloorTransition | 900 | 150 | 300 | 450 | 0 | floorStateCommitted | WorldUI | sfx_floor_up | 2 tile glows + heal burst | HP and layer update only once | VALIDATION_ADDED |
| 7 | BossCountdownTick | 300 | 40 | 160 | 100 | 0 | bossCounterCommitted | HUD | sfx_boss_warn | 1 meter pulse | number and rail color visibly update before tile resolution | VALIDATION_ADDED |
| 8 | BossConvertFourTiles | 2240 | 520 | 1360 | 360 | 0 | bossTilesCommitted | WorldUI | sfx_boss_warn|sfx_boss_hit | 4 sequential tile flashes | each selected tile visibly changes once and blessing tile never changes | VALIDATION_ADDED |
| 9 | BattleEnter | 700 | 0 | 420 | 280 | 0 | battleSnapshotCreated | Camera|HUD | sfx_battle_enter | no heavy particles | repeat entrance completes <=700ms | RUNTIME_OBSERVED |
| 10 | EnemySpawn | 350 | 100 | 100 | 150 | 0 | entitySpawned | CharacterUnderlay | sfx_spawn | <=24 particles per entity | collider active only after spawn marker | VALIDATION_ADDED |
| 11 | NormalAttack | 240 | 60 | 90 | 90 | 70 | damageResolved | CharacterFront | sfx_sword_hit | <=80 live particles | weapon crosses target during active window | RUNTIME_OBSERVED |
| 12 | StraightShot | 420 | 80 | 220 | 120 | 40 | projectileImpact | ProjectileFront | sfx_arrow | 1 projectile + <=16 impact particles | origin and target line unambiguous | VALIDATION_ADDED |
| 13 | CurvedShot | 800 | 350 | 250 | 200 | 50 | projectileImpact | GroundTell|ProjectileFront | sfx_arc_launch|sfx_arc_hit | 1 decal + 1 projectile | landing tell visible >=300ms | VALIDATION_ADDED |
| 14 | RushAttack | 850 | 500 | 180 | 170 | 90 | rushCollision | GroundTell|CharacterFront | sfx_rush_prepare|sfx_rush_hit | 1 strip + <=32 particles | warning strip equals collision path | VALIDATION_ADDED |
| 15 | CriticalAttack | 1000 | 250 | 120 | 630 | 120 | criticalDamageResolved | VFXFront | sfx_critical | <=120 particles + 1 flash | no white frame >33ms | VALIDATION_ADDED |
| 16 | BossSkill0 | 1100 | 550 | 200 | 350 | 150 | bossSkillDamage | GroundTell|VFXFront | sfx_boss_warn|sfx_boss_hit | <=200 live particles | tell and damage area mismatch <=4 logical px | SOURCE_CONFIRMED |
| 17 | DamageNumber | 667 | 0 | 80 | 587 | 0 | damageResolved | HUDFront | sfx_none | <=24 visible numbers | merge same source hits within150ms | RUNTIME_OBSERVED |
| 18 | HealEffect | 650 | 80 | 250 | 320 | 0 | healCommitted | CharacterFront | sfx_heal | <=60 particles | green cyan-white core visible on Grass | VALIDATION_ADDED |
| 19 | ShieldEffect | 300 | 80 | 120 | 100 | 0 | shieldCommitted | CharacterUnderlay | sfx_shield | <=32 persistent particles | persistent opacity <=45% | VALIDATION_ADDED |
| 20 | BattleVictory | 750 | 0 | 250 | 500 | 100 | postBattleCommitted | HUDFront | sfx_victory | 1 banner burst | reward values appear after commit | RUNTIME_OBSERVED |
| 21 | GearRevealCommon | 250 | 40 | 120 | 90 | 0 | gearOfferCreated | ModalFront | sfx_gear_reveal | 1 rim light | item icon readable by180ms | RUNTIME_OBSERVED |
| 22 | GearRevealLegend | 633 | 120 | 250 | 263 | 0 | gearOfferCreated | ModalFront | sfx_gear_legend | <=80 particles | legend reveal longer but skippable after marker | RUNTIME_OBSERVED |
| 23 | GearEquip | 500 | 80 | 180 | 240 | 0 | equipCommitted | HUDFront | sfx_equip | 1 fly trail + slot flash | old gear exits before salvage number | VALIDATION_ADDED |
| 24 | GearSalvage | 400 | 60 | 120 | 220 | 0 | salvageCommitted | HUDFront | sfx_salvage | <=32 shard particles | point delta matches transaction once | VALIDATION_ADDED |
| 25 | BlessingReveal | 450 | 80 | 180 | 190 | 0 | blessingOfferCreated | ModalFront | sfx_blessing | <=48 particles | title readable by250ms | VALIDATION_ADDED |
| 26 | BoostCommit | 360 | 40 | 100 | 220 | 0 | rewardBoostCommitted | ModalFront | sfx_boost | play icon pulse + one reward burst | legacy animation only; no current UI trigger | DEFERRED_NOT_EXPOSED |
| 27 | Revive | 900 | 250 | 250 | 400 | 0 | sourceReviveBlessingResolved | CharacterFront | sfx_revive | <=100 particles | source blessing only; no ad revive UI | SOURCE_CONFIRMED |
| 28 | BossDeath | 1183 | 150 | 350 | 683 | 180 | bossVictoryCommitted | VFXFront | sfx_boss_death | <=240 particles | reward modal waits for silhouette settle | RUNTIME_OBSERVED |
| 29 | Toast | 1740 | 180 | 1400 | 160 | 0 | toastQueued | HUD | sfx_toast | 0 particles | does not cover Roll potion or boss tell | VALIDATION_ADDED |