From 2f874a89e4f7f3f71d2c54d45f5053eaa9f67ad3 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Sun, 22 Mar 2026 13:46:19 -0400 Subject: [PATCH] Phase 5: Add testing documentation - Created docs/TESTING_PHASE5.md with test scenarios and metrics - Includes pre-testing checklist - 5 test scenarios from quiet exploration to swarm enemies - Glitch rating scale and configuration tuning guide - Test report template for iteration --- docs/TESTING_PHASE5.md | 297 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 297 insertions(+) create mode 100644 docs/TESTING_PHASE5.md diff --git a/docs/TESTING_PHASE5.md b/docs/TESTING_PHASE5.md new file mode 100644 index 0000000..62367ac --- /dev/null +++ b/docs/TESTING_PHASE5.md @@ -0,0 +1,297 @@ +# Phase 5: Testing & Iteration Guide + +## Overview +This phase documents the testing protocol for validating audio mod fixes and improvements. + +**Note:** Actual testing must be performed by playing the game. This document provides the testing workflow and evaluation criteria. + +--- + +## Pre-Testing Checklist + +### 1. BepInEx Installation +- [ ] BepInEx installed in game directory +- [ ] `winhttp.dll` present in game root +- [ ] `BepInEx\LogOutput.log` generated after first run + +### 2. Plugin Installation +- [ ] `HomuraHimeAudioMod.dll` in `BepInEx\plugins\` +- [ ] Config file generated at `BepInEx\config\com.homurahime.audiomod.cfg` + +### 3. Original Bank Backup +- [ ] Original banks backed up to `backup_banks_original\` + +### 4. FMOD Banks (Optional) +- [ ] Modified banks copied to game directory (if using Phase 3 FMOD changes) + +--- + +## Testing Scenarios + +### Test 1: Quiet Exploration (Baseline) + +**Purpose:** Verify mod doesn't break normal audio + +**Steps:** +1. Launch game with mod enabled +2. Start new game or load save +3. Move through quiet area (hub, menu, cutscenes) +4. Listen for 5+ minutes + +**Success Criteria:** +- [ ] No audio distortion or pops +- [ ] BGM plays smoothly without cutting out +- [ ] UI sounds (menu navigation) work correctly +- [ ] No crashes or errors in LogOutput.log + +**Log Check:** +``` +Filter: Look for "HomuraHimeAudio" entries +Expected: "initialized successfully" +``` + +--- + +### Test 2: Combat with 3+ Enemies + +**Purpose:** Test voice limit fixes under moderate load + +**Steps:** +1. Find an area with 3+ enemies (early game stages) +2. Engage in combat +3. Observe audio behavior during: + - Multiple attack impacts + - Enemy death sounds + - Player attack sounds + - Dodge/roll sounds + +**Success Criteria:** +- [ ] No audio distortion during impact sounds +- [ ] Sounds don't cut out prematurely +- [ ] Enemy voices don't override each other harshly +- [ ] Can distinguish individual sound sources + +**Failure Signs:** +- Crackling/popping sounds +- Sudden audio cutoff +- "Muffled" audio +- Missing sound effects + +--- + +### Test 3: Boss Fights (Heavy Load) + +**Purpose:** Stress test audio system + +**Steps:** +1. Enter boss arena +2. Engage boss +3. Observe during: + - Boss special attacks + - Phase transitions + - Multiple minions spawning + - Intense combo sequences + +**Success Criteria:** +- [ ] No audio glitches during phase transitions +- [ ] Music continues playing smoothly +- [ ] Voice lines play without cutoff +- [ ] Attack sounds remain distinguishable + +**Challenge:** If glitches occur, reduce `MaxVoiceCount` in config + +--- + +### Test 4: Swarm Enemy Encounters + +**Purpose:** Test rapid sound triggering + +**Steps:** +1. Find area with many weak enemies (swarms) +2. Use area-of-effect attacks +3. Observe: + - Rapid footstep sounds + - Multiple death sounds + - Attack impact sounds overlapping + +**Success Criteria:** +- [ ] No stuttering or repeating sounds +- [ ] Audio doesn't "stick" or loop +- [ ] Clean sound transitions + +--- + +### Test 5: Enemy Behavior State Changes + +**Purpose:** Validate enemy audio indicator improvements + +**Steps:** +1. Approach enemies and observe state changes +2. Listen for audio cues during: + - Enemy idle (subtle ambient) + - Enemy alert (noticing player) + - Enemy chase (pursuing) + - Enemy attack (warning + strike) + +**Success Criteria:** +| State | Expected Audio | +|-------|----------------| +| Idle | Subtle, low-volume ambient | +| Alert | Distinct warning/notice sound | +| Chase | Intensified pursuit audio | +| Attack | Clear attack indicator + impact | + +**Rating Scale:** +- 1: Cannot hear/identify +- 2: Barely audible +- 3: Audible but unclear +- 4: Clear and distinguishable +- 5: Very distinct and helpful + +--- + +## Metrics Tracking + +### Audio Glitch Rating + +| Rating | Description | +|--------|-------------| +| 0 | No glitches ever | +| 1 | Rare glitches (<1 per minute) | +| 2 | Occasional glitches (1-5 per minute) | +| 3 | Frequent glitches (>5 per minute) | +| 4 | Constant glitches | + +### Target: Rating 0-1 for all scenarios + +--- + +## Configuration Tuning + +### If Distortion/Pops Occur + +```ini +[VoiceManager] +MaxVoiceCount = 64 ; Reduce from 128 + +[Ducking] +DuckFadeTime = 0.08 ; Increase for smoother transitions +``` + +### If Sounds Cut Out + +```ini +[VoiceManager] +MaxVoiceCount = 256 ; Increase if hardware supports +EnableVoiceLimitFix = true +``` + +### If Enemy Cues Unclear + +```ini +[EnemyAudio] +EnemyIndicatorBoost = 1.5 +AlertSoundBoost = 1.6 +AttackSoundBoost = 1.4 +``` + +--- + +## Iteration Loop + +``` +Test Scenario + │ + ▼ +┌─────────────┐ +│ Glitch? │ +└─────────────┘ + │ + ┌──┴──┐ + Yes No + │ │ + ▼ ▼ +Adjust Next +Config Test + │ + ▼ +Rebuild & Redeploy + │ + ▼ +Retest +``` + +--- + +## Log Analysis + +### Enable Debug Logging + +```ini +[General] +EnableDebugLogging = true +``` + +### Check Log During Gameplay + +``` +BepInEx\LogOutput.log +``` + +### Key Log Entries + +| Entry | Meaning | +|-------|---------| +| `HomuraHime Audio Mod initialized` | Plugin loaded OK | +| `Voice count X exceeds limit Y` | Voice limiting active | +| `DuckVolume adjusted` | Ducking patch working | +| `Enemy voice event: X` | Enemy audio hook active | + +--- + +## Test Report Template + +```markdown +## Test Report - [Date] + +### Environment +- Game Version: [Check in game] +- Mod Version: 1.0.0 +- Config: [Default/Custom] + +### Results + +| Scenario | Glitch Rating | Notes | +|----------|---------------|-------| +| Quiet Exploration | [0-4] | | +| 3+ Enemy Combat | [0-4] | | +| Boss Fight | [0-4] | | +| Swarm Enemies | [0-4] | | +| Enemy State Cues | [1-5] | | + +### Configuration Changes Made + +```ini +[Section] +Setting = Value +``` + +### Overall Assessment + +[ ] Ready for distribution +[ ] Needs iteration + +### Next Steps + +1. +2. +``` + +--- + +## Next: Phase 6 + +Once testing yields satisfactory results (glitch rating 0-1, cue clarity 4-5): +- Proceed to Phase 6: Distribution +- Package mod for sharing +- Write installation instructions