LegendaryExplorer icon indicating copy to clipboard operation
LegendaryExplorer copied to clipboard

LEX Nightly Wwise Editor not committing hex changes correctly

Open beccatoria opened this issue 9 months ago • 3 comments

Please fill out the following form in its entirety.

The more information you provide, the easier it will be for us to reproduce the issue.

Describe the bug Current nightly build of LEX does not actually commit hex changes made in Wwise Editor. Stable build does.

To Reproduce Broadly, try to make any hex change in wwise editor, save and commit the hex changes, save the package, and it doesn't actually save. If you close and reopen the files the changes are gone.

Here is a specific replication, using BioD_Cat004_800KaiLeng_LOC_INT as the exemplar file.

  1. Go to export 170 - cat004_core_kailengfight_a (WwiseBank)
  2. Open with WwiseEditor (via right click)
  3. Select the first Sound SFX/Sound Voice object (01BBC273).
  4. Go to the hex box in the lower right-hand side. Find the string 000010C1 (this is float -9, it's the volume). Change this to 000040C0 (changing volume to -3).
  5. Press "Save Hex Changes" (immediately above the hex box)
  6. Press "Commit" (at the top of the right-hand pane)
  7. The name of the export in the lower left hand pane is not yellow (i.e. hasn't been edited). You can save the file at this point, but once it's closed and has left memory, if you re-open it the changes will not be reflected.

Expected behavior When you get to step 7, the name of the export in the lower left-hand pane should become yellow to indicate pending changes. Saving the package file will then correctly save the hex changes. This is what happens using stable.

Version information: Working correctly on Stable 6.4 6/10/2024 Not working in Nightly 6.5 13/04/2025

beccatoria avatar May 02 '25 10:05 beccatoria

Relevant lines seem to be

  • https://github.com/ME3Tweaks/LegendaryExplorer/blob/Beta/LegendaryExplorer/LegendaryExplorer/UserControls/ExportLoaderControls/Soundpanel/Soundpanel.xaml.cs#L1723 (Where HIRC object is made from hexbox hex)
  • https://github.com/ME3Tweaks/LegendaryExplorer/blob/Beta/LegendaryExplorer/LegendaryExplorer/UserControls/ExportLoaderControls/Soundpanel/Soundpanel.xaml.cs#L358 (Save bank)

Will look at this when I have some more time.

Mgamerz avatar May 02 '25 13:05 Mgamerz

Looks like we commented out a buuuunch of serialization code in 95108ad53aa when it seemed like a rewrite for all wwise stuff to use Wwiser.NET was imminent. Git blame says I uncommented deserialization code at some point, but any changes to a WwiseBankParsed will currently never get written back to export.

henbagle avatar May 03 '25 02:05 henbagle

This has been fixed in the WwiserMerge branch which contains a heavy refactor of most WwiseBank code in the toolset. Once the branch is merged to Beta I will close this ticket.

henbagle avatar Jun 25 '25 02:06 henbagle