From what I know, there's a couple parts to the hard-coded environments to be cognizant of (whether or not they're ultimately moved to reverbs.txt).
For one, the hard-coded/built-in environments aren't allowed to be overridden by mods (as determined by ID, not name). Attempts to do so are silently ignored. There would need to be special handling for definitions in the reverbs.txt loaded from gzdoom.pk3 to make them non-overridable by future definitions in mods.
Secondly, there's a special "DSP Water" entry (ID 255 255, or 0xffff) that sets a "SoftwareWater" flag, which invokes special behavior. When used, it behaves as if the listener is underwater, using the Underwater reverb effect with the lower pitch and low-pass filter applied, for when the player isn't actually underwater but should sound like it. It's actual definition is ignored as a result. Since custom reverbs can't set this flag, and built-in environments can't be overridden, this can be handled by ID checks rather than that special flag.
So from my perspective, I don't see an issue moving them to reverbs.txt in gzdoom.pk3, as long as the definitions in gzdoom.pk3 can be protected somehow, while still allowing mods to override definitions in other mods.
For one, the hard-coded/built-in environments aren't allowed to be overridden by mods (as determined by ID, not name). Attempts to do so are silently ignored. There would need to be special handling for definitions in the reverbs.txt loaded from gzdoom.pk3 to make them non-overridable by future definitions in mods.
Secondly, there's a special "DSP Water" entry (ID 255 255, or 0xffff) that sets a "SoftwareWater" flag, which invokes special behavior. When used, it behaves as if the listener is underwater, using the Underwater reverb effect with the lower pitch and low-pass filter applied, for when the player isn't actually underwater but should sound like it. It's actual definition is ignored as a result. Since custom reverbs can't set this flag, and built-in environments can't be overridden, this can be handled by ID checks rather than that special flag.
So from my perspective, I don't see an issue moving them to reverbs.txt in gzdoom.pk3, as long as the definitions in gzdoom.pk3 can be protected somehow, while still allowing mods to override definitions in other mods.
Statistics: Posted by Chris — Mon Mar 24, 2025 6:32 pm