# Tempo Test Track - Drum beat with acceleration/deceleration tests # Tests variable tempo system with clear, debuggable patterns # Import drum samples SAMPLE ASSET_KICK_1 SAMPLE ASSET_KICK_2 SAMPLE ASSET_SNARE_1 SAMPLE ASSET_SNARE_3 SAMPLE ASSET_HIHAT_1 SAMPLE ASSET_HIHAT_2 SAMPLE ASSET_CRASH_1 SAMPLE ASSET_BASS_1 # Simple kick pattern with light syncopation # Pattern duration: 4 beats (2 seconds at 120 BPM) PATTERN kick_basic 0.0, ASSET_KICK_1, 1.0, 0.0 2.0, ASSET_KICK_1, 1.0, 0.0 2.5, ASSET_KICK_2, 0.7, -0.2 # Snare on beats 2 and 4 PATTERN snare_basic 1.0, ASSET_SNARE_1, 0.9, 0.1 3.0, ASSET_SNARE_1, 0.9, 0.1 # Hi-hat 8th notes with stress on beats PATTERN hihat_stressed 0.0, ASSET_HIHAT_2, 0.8, -0.3 0.5, ASSET_HIHAT_1, 0.4, 0.3 1.0, ASSET_HIHAT_2, 0.8, -0.3 1.5, ASSET_HIHAT_1, 0.4, 0.3 2.0, ASSET_HIHAT_2, 0.8, -0.3 2.5, ASSET_HIHAT_1, 0.4, 0.3 3.0, ASSET_HIHAT_2, 0.8, -0.3 3.5, ASSET_HIHAT_1, 0.4, 0.3 # Denser kick pattern for reset trick (2x faster) PATTERN kick_dense 0.0, ASSET_KICK_1, 1.0, 0.0 0.5, ASSET_KICK_2, 0.6, -0.2 1.0, ASSET_KICK_1, 1.0, 0.0 1.5, ASSET_KICK_2, 0.6, 0.2 2.0, ASSET_KICK_1, 1.0, 0.0 2.5, ASSET_KICK_2, 0.6, -0.2 3.0, ASSET_KICK_1, 1.0, 0.0 3.5, ASSET_KICK_2, 0.6, 0.2 # Denser snare pattern PATTERN snare_dense 0.5, ASSET_SNARE_3, 0.7, 0.0 1.0, ASSET_SNARE_1, 0.9, 0.1 1.5, ASSET_SNARE_3, 0.7, 0.0 2.5, ASSET_SNARE_3, 0.7, 0.0 3.0, ASSET_SNARE_1, 0.9, 0.1 3.5, ASSET_SNARE_3, 0.7, 0.0 # Crash accent PATTERN crash 0.0, ASSET_CRASH_1, 0.85, 0.0 # Bass line in E PATTERN bass_e 0.0, E2, 0.9, 0.0 1.0, E2, 0.7, 0.0 2.0, E2, 0.9, 0.0 2.5, E2, 0.6, 0.0 3.0, E2, 0.7, 0.0 # Bass line with variation (E-G progression) PATTERN bass_eg 0.0, E2, 0.9, 0.0 1.0, E2, 0.7, 0.0 2.0, G2, 0.9, 0.0 3.0, G2, 0.7, 0.0 # Simple melody in E minor PATTERN melody_em 0.0, E4, 0.7, 0.0 0.5, G4, 0.6, 0.1 1.0, B4, 0.7, -0.1 2.0, A4, 0.6, 0.0 2.5, G4, 0.6, 0.1 3.0, E4, 0.7, 0.0 # Score: time_sec, pattern_name # NOTE: Timing in MUSIC TIME (not physical time) # Physical time will vary based on tempo_scale in main.cc SCORE # Phase 1: Steady beat (0-10s music time) # tempo_scale = 1.0 throughout 0.0, crash 0.0, kick_basic 0.0, snare_basic 0.0, hihat_stressed 2.0, kick_basic 2.0, snare_basic 2.0, hihat_stressed 4.0, crash 4.0, kick_basic 4.0, snare_basic 4.0, hihat_stressed 6.0, kick_basic 6.0, snare_basic 6.0, hihat_stressed 8.0, crash 8.0, kick_basic 8.0, snare_basic 8.0, hihat_stressed # Phase 2: Acceleration section (10-15s music time) # tempo_scale accelerates from 1.0 to 2.0 # Then resets to 1.0 with denser patterns 10.0, crash 10.0, kick_basic 10.0, snare_basic 10.0, hihat_stressed 10.0, bass_e 12.0, kick_basic 12.0, snare_basic 12.0, hihat_stressed 12.0, bass_e 14.0, kick_basic 14.0, snare_basic 14.0, hihat_stressed 14.0, bass_e # Phase 3: After reset - denser patterns (16-20s music time) # tempo_scale = 1.0 with 2x denser patterns 16.0, crash 16.0, kick_dense 16.0, snare_dense 16.0, hihat_stressed 16.0, bass_e 18.0, kick_dense 18.0, snare_dense 18.0, hihat_stressed 18.0, bass_eg # Phase 4: Slow-down section (20-25s music time) # tempo_scale decelerates from 1.0 to 0.5 # Then resets to 1.0 20.0, crash 20.0, kick_dense 20.0, snare_dense 20.0, hihat_stressed 20.0, bass_e 22.0, kick_dense 22.0, snare_dense 22.0, hihat_stressed 22.0, bass_e 24.0, kick_dense 24.0, snare_dense 24.0, hihat_stressed 24.0, bass_eg # Phase 5: After slow-down reset (26-30s music time) # Back to normal tempo with bass 26.0, crash 26.0, kick_basic 26.0, snare_basic 26.0, hihat_stressed 26.0, bass_e 28.0, kick_basic 28.0, snare_basic 28.0, hihat_stressed 28.0, bass_eg # Phase 6: Add melody (30s+ music time) 30.0, crash 30.0, kick_basic 30.0, snare_basic 30.0, hihat_stressed 30.0, bass_e 30.0, melody_em 32.0, kick_basic 32.0, snare_basic 32.0, hihat_stressed 32.0, bass_eg 32.0, melody_em 34.0, kick_basic 34.0, snare_basic 34.0, hihat_stressed 34.0, bass_e 34.0, melody_em 36.0, crash 36.0, kick_basic 36.0, snare_basic 36.0, hihat_stressed 36.0, bass_eg 36.0, melody_em # Ending 38.0, crash