Kevin Stefanowicz
Kevin Stefanowicz
To my knowledge, hitsounds and sound banks are only saved/loaded via the legacy encoder/decoder. If that is incorrect, then these definitely don't need to be in the `.osu` file.
> Is this adding new functionality that does not exist in stable? This is adding the functionality of saving custom sound banks (i.e. not "normal", "soft", or "drum") to the...
Stable does not support custom sound banks - it will only look at file names starting with "normal-", "soft-", or "drum-" when handling custom hit sounds. Lazer already supports custom...
> is there a previous discussion where this was brought up? Custom hitsounds hadn't been natively possible in Lazer until the "Edit External" function was added, so I don't think...
> extending what is a legacy format we plan on replacing at some point I wasn't aware that the `.osu` format was being replaced. I see a comment in #12976...
> However this implementation seems to still be somewhat broken. When I add a custom sample, I still need to cut and repaste the objects for the custom sound to...
I have changed this logic in `getLegacyControlPointProperties` to create `LegacyHitSampleInfo` with customSampleBank 1 if the sample point isn't already legacy. Still passes `LegacyBeatmapEncoderTest`. This appears to work at first, but...
Found it - the encoder goes through each HItObject to add a SampleControlPoint to it, which was defaulting to CustomSampleBank -1: ```cs SampleControlPoint createSampleControlPointFor(double time, IList samples) { int volume...