Ace module, code 408, injecting fixes + separate option for speakers processing
fixed text not injecting after translating code 408. also added a separate flag + implementation for speakers processing for code 408 (the same as code 401). updated GUI to include the flag (only for the Ace module, since it's not in mvmz)
updated: more accurate progress bar for MVMZ and ACE modules. does a "dummy run" first to count total for the progress bar before the real run.
updated2: fixed speakers not being reinjected in the output file. comments from claude:
The Issue The problem was that during Pass 1 (data collection), speakers were being cached in _speakerCache as untranslated (e.g., ティタ -> ティタ). Then during Pass 2 (translation injection), the cache was returning these untranslated values instead of performing fresh translations.
The Fix Added clearSpeakerCache() function - Clears the speaker cache between passes Called it before Pass 2 - Ensures fresh translations during the injection pass Removed debug logging - Cleaned up the code
updated3: fixed ACE module not translating system.yaml (at least for princess violet, seems like the file format was a bit different from what the tool expected)