BetterDiscord-Plugins
BetterDiscord-Plugins copied to clipboard
BetterVolume returning to 200 volume after changing it.
Basically the title, if you change your volume, it will return to 200 again.
same issue
Same issue with latest patch
Did the plugin ask about disabling the experiment the first time you started it? Is the experiment disable in the plugin settings panel toggled on, off or greyed out?
hey same issue for me and at least for me "disable audio experiment" is enabled in the plugin settings
I left a comment about this in issue #137 with some further info: https://github.com/Zerthox/BetterDiscord-Plugins/issues/137#issuecomment-1493252090
The 2.3.2-rc.1 version is still working for me, although I have to manually turn the plugin off then back on for the fix to work, every time Discord restarts.
Still happening even though "disable audio experiment" is turned on
Once again occurring, switched back to 2.3.2 and its working with the older version of the plugin so far.
Does turning the disable experiment setting off and back on work with v2.4.0? The only relevant difference between the two versions I can think of is at which point the plugin checks if the experiment is present. If that is the issue, I believe the disable toggle should end up being greyed out in the v2.4.0 settings panel.
For me, 2.4.0 doesn't ever work. Only 2.3.2-rc.1, and only when I disable and re-enable the plugin.
Experimental version with changed experiment handling & additional logging: https://gist.github.com/Zerthox/e32580591286b4c726d36282c540e2c9
Let me know how it behaves and if you can, please provide the logged information. (To do so enable DevTools in BetterDiscord developer settings and press Ctrl+Shift+I.)
Still resetting the volume to 200% every restart of Discord for me.
Experimental version with changed experiment handling & additional logging: gist.github.com/Zerthox/e32580591286b4c726d36282c540e2c9
Let me know how it behaves and if you can, please provide the logged information. (To do so enable DevTools in BetterDiscord developer settings and press Ctrl+Shift+I.)
So far, this version seems to have fixed it! Great work! Here's the log when enabling the plugin (the only log output I got):
3ec345178a3bd5d85874.js:537 [BetterVolume] (v2.5.0-rc.1) Enabled
3ec345178a3bd5d85874.js:537 [BetterVolume] (v2.5.0-rc.1) Experiments already loaded
3ec345178a3bd5d85874.js:537 [BetterVolume] (v2.5.0-rc.1) Initial experiment bucket -1
3ec345178a3bd5d85874.js:537 [BetterVolume] (v2.5.0-rc.1) Patched useUserVolumeItem
Update: Unfortunately the issue is back- looks like the behavior of v2.5.0-rc.1 is the same as v2.4.0. So for now I'll have to revert to v2.3.2-rc.1, which is the only version which consistently fixes the issue when the plugin is disabled then re-enabled.
Here's the log when the volume resets to 200%:
3ec345178a3bd5d85874.js:592 PATCH https://discord.com/api/v9/users/@me/settings-proto/1 400
5c193e4366261ef233e1.js:7916 Uncaught (in promise) {ok: false, headers: {…}, body: {…}, text: '{"message": "User Settings failed validation: p.volume is not in range (200, 0)", "code": 50105}', status: 400, …}
Update: Unfortunately the issue is back- looks like the behavior of v2.5.0-rc.1 is the same as v2.4.0. So for now I'll have to revert to v2.3.2-rc.1, which is the only version which consistently fixes the issue when the plugin is disabled then re-enabled.
Here's the log when the volume resets to 200%:
3ec345178a3bd5d85874.js:592 PATCH https://discord.com/api/v9/users/@me/settings-proto/1 400 5c193e4366261ef233e1.js:7916 Uncaught (in promise) {ok: false, headers: {…}, body: {…}, text: '{"message": "User Settings failed validation: p.volume is not in range (200, 0)", "code": 50105}', status: 400, …}
The error is your client failing to save the volume on the server because it is out of range (> 200%). This means the experiment did not turn off. Could you check for all messages in the console starting with [BetterVolume] while running v2.5.0-rc.1?
Update: Unfortunately the issue is back- looks like the behavior of v2.5.0-rc.1 is the same as v2.4.0. So for now I'll have to revert to v2.3.2-rc.1, which is the only version which consistently fixes the issue when the plugin is disabled then re-enabled. Here's the log when the volume resets to 200%:
3ec345178a3bd5d85874.js:592 PATCH https://discord.com/api/v9/users/@me/settings-proto/1 400 5c193e4366261ef233e1.js:7916 Uncaught (in promise) {ok: false, headers: {…}, body: {…}, text: '{"message": "User Settings failed validation: p.volume is not in range (200, 0)", "code": 50105}', status: 400, …}The error is your client failing to save the volume on the server because it is out of range (> 200%). This means the experiment did not turn off. Could you check for all messages in the console starting with
[BetterVolume]while running v2.5.0-rc.1?
Sure, here's the full log:
3ec3451….js:537 [BetterVolume] (v2.5.0-rc.1) Enabled
3ec3451….js:537 [BetterVolume] (v2.5.0-rc.1) Experiments already loaded
3ec3451….js:537 [BetterVolume] (v2.5.0-rc.1) Initial experiment bucket 1
3ec3451….js:537 [BetterVolume] (v2.5.0-rc.1) Patched useUserVolumeItem
3ec3451….js:537 [discord_protos.discord_users.v1.PreloadedUserSettings] Updating audioContextSettings with delay 0
3ec3451….js:537 [discord_protos.discord_users.v1.PreloadedUserSettings] Scheduling save from markDirty
3ec3451….js:537 [discord_protos.discord_users.v1.PreloadedUserSettings] Persisting proto
3ec3451….js:592
PATCH https://discord.com/api/v9/users/@me/settings-proto/1 400
3ec3451….js:537 [discord_protos.discord_users.v1.PreloadedUserSettings] Reloading do to invalid data
3ec3451….js:537 [discord_protos.discord_users.v1.PreloadedUserSettings] Loading proto
5c193e4….js:7916 Uncaught (in promise)
{ok: false, headers: {…}, body: {…}, text: '{"message": "User Settings failed validation: p.volume is not in range (200, 0)", "code": 50105}', status: 400, …}
Did you enable the experiment override in the plugin settings? The logged information suggests everything is working fine but the setting is toggled off.
Did you enable the experiment override in the plugin settings? The logged information suggests everything is working fine but the setting is toggled off.
Ah, it looks like it had been disabled, oops! Now the behavior of this version is the same as v2.3.2-rc.1.
After some further investigation, it looks like what's happening is that after some time, the experiment re-enables itself. I haven't been able to figure out when this is happening, nor find anything in the console about it.
This is why restarting the plugin resolves the issue- because it re-disables the experiment. So I guess the key is figuring out what criteria causes the experiment to re-enable, be it time-based or otherwise. Maybe it's when Discord updates? I'll check next time there's an update available.
Here's the log after trying to set a high volume, after the experiment seems to have been re-enabled. No recent Discord updates as far as I recall.
3460b9097c39621876ca.js:536 [discord_protos.discord_users.v1.PreloadedUserSettings] Updating audioContextSettings with delay 0
3460b9097c39621876ca.js:536 [discord_protos.discord_users.v1.PreloadedUserSettings] Scheduling save from markDirty
3460b9097c39621876ca.js:536 [discord_protos.discord_users.v1.PreloadedUserSettings] Persisting proto
3460b9097c39621876ca.js:591 PATCH https://discord.com/api/v9/users/@me/settings-proto/1 400
(anonymous) @ 3460b9097c39621876ca.js:591
(anonymous) @ 3460b9097c39621876ca.js:539
I._end @ 92b3cee08e721043538d.js:2048
I.end @ 92b3cee08e721043538d.js:2047
(anonymous) @ 92b3cee08e721043538d.js:2052
o.then @ 92b3cee08e721043538d.js:2052
m @ 92b3cee08e721043538d.js:10188
(anonymous) @ 92b3cee08e721043538d.js:10190
T @ 92b3cee08e721043538d.js:10190
(anonymous) @ 92b3cee08e721043538d.js:7946
(anonymous) @ 92b3cee08e721043538d.js:7944
(anonymous) @ 92b3cee08e721043538d.js:7944
y @ 92b3cee08e721043538d.js:7942
a @ 92b3cee08e721043538d.js:7942
(anonymous) @ 92b3cee08e721043538d.js:7943
(anonymous) @ 92b3cee08e721043538d.js:7942
n @ 3460b9097c39621876ca.js:565
setTimeout (async)
(anonymous) @ 3460b9097c39621876ca.js:591
t.markDirty @ 92b3cee08e721043538d.js:7948
(anonymous) @ 92b3cee08e721043538d.js:7948
(anonymous) @ 92b3cee08e721043538d.js:7944
(anonymous) @ 92b3cee08e721043538d.js:7944
y @ 92b3cee08e721043538d.js:7942
a @ 92b3cee08e721043538d.js:7942
Promise.then (async)
y @ 92b3cee08e721043538d.js:7942
a @ 92b3cee08e721043538d.js:7942
(anonymous) @ 92b3cee08e721043538d.js:7943
(anonymous) @ 92b3cee08e721043538d.js:7942
t.updateAsync @ 92b3cee08e721043538d.js:7948
V @ 92b3cee08e721043538d.js:7890
(anonymous) @ 92b3cee08e721043538d.js:7890
T @ 3460b9097c39621876ca.js:266
d @ 3460b9097c39621876ca.js:267
N @ 3460b9097c39621876ca.js:266
n @ 3460b9097c39621876ca.js:565
setTimeout (async)
(anonymous) @ 3460b9097c39621876ca.js:591
Pi @ 3460b9097c39621876ca.js:261
N @ 3460b9097c39621876ca.js:266
n @ 3460b9097c39621876ca.js:565
setTimeout (async)
(anonymous) @ 3460b9097c39621876ca.js:591
Pi @ 3460b9097c39621876ca.js:261
A @ 3460b9097c39621876ca.js:266
O @ 3460b9097c39621876ca.js:267
(anonymous) @ 92b3cee08e721043538d.js:7891
j @ 92b3cee08e721043538d.js:7891
(anonymous) @ 92b3cee08e721043538d.js:10180
(anonymous) @ 92b3cee08e721043538d.js:10180
(anonymous) @ 92b3cee08e721043538d.js:10169
t._dispatch @ 92b3cee08e721043538d.js:10180
(anonymous) @ 92b3cee08e721043538d.js:10179
i.log @ 92b3cee08e721043538d.js:10169
t._dispatchWithLogging @ 92b3cee08e721043538d.js:10179
t._dispatchWithDevtools @ 92b3cee08e721043538d.js:10179
(anonymous) @ 92b3cee08e721043538d.js:10178
t.flushWaitQueue @ 92b3cee08e721043538d.js:10179
(anonymous) @ 92b3cee08e721043538d.js:10178
t.dispatch @ 92b3cee08e721043538d.js:10178
setLocalVolume @ 92b3cee08e721043538d.js:2288
onChange @ BetterVolume.plugin.js:430
onChange @ BetterVolume.plugin.js:354
Me @ 92b3cee08e721043538d.js:1758
je @ 92b3cee08e721043538d.js:1758
(anonymous) @ 92b3cee08e721043538d.js:1779
Ur @ 92b3cee08e721043538d.js:1779
Gr @ 92b3cee08e721043538d.js:1779
(anonymous) @ 92b3cee08e721043538d.js:1785
cc @ 92b3cee08e721043538d.js:1850
Le @ 92b3cee08e721043538d.js:1757
Yr @ 92b3cee08e721043538d.js:1781
Kt @ 92b3cee08e721043538d.js:1764
Zt @ 92b3cee08e721043538d.js:1764
n @ 3460b9097c39621876ca.js:565
3460b9097c39621876ca.js:536 [discord_protos.discord_users.v1.PreloadedUserSettings] Reloading do to invalid data
3460b9097c39621876ca.js:536 [discord_protos.discord_users.v1.PreloadedUserSettings] Loading proto
92b3cee08e721043538d.js:7942 Uncaught (in promise) {ok: false, headers: {…}, body: {…}, text: '{"message": "User Settings failed validation: p.volume is not in range (200, 0)", "code": 50105}', status: 400, …}
it's happening again
Setting over 200% reverts back to 200% for me as well, resetting and reanabling the addon temporary fixes it, but restart discord breaks it again.
Hey my friend got the same-ish problem, except that if it goes over 200% it change right after to a negative value. Resetting is not working and the "Disable Audio experiment" cant be turned on.
Hey my friend got the same-ish problem, except that if it goes over 200% it change right after to a negative value. Resetting is not working and the "Disable Audio experiment" cant be turned on.
Yes, as of a recent update the volume now resets to 8.27% or something like that for me as well. Quite annoying! Restarting the plugin fixes it.
@Zerthox The more I've dealt with it, the more confident I am that it has to do with plugin loading order. On startup, something (maybe another plugin, maybe a BD/Discord script) loads after the BetterVolume plugin that breaks it. That's why restarting the BetterVolume plugin fixes it. Because it forces it to load last.
FWIW Vencord's plugin works well
Is there a fix for that issue? Since few day I also struggle with this out of a sudden and I really can't fix it. Doesn't matter which version of the plugin or if the Audio Experiment is disabled or not...
Yeah I think as of this week it’s no longer an experiment, so it can’t be disabled. We need to find another workaround.On Aug 8, 2024, at 10:36 AM, Pittssburgh @.***> wrote: Is there a fix for that issue? Since few day I also struggle with this out of a sudden and I really can't fix it. Doesn't matter which version of the plugin or if the Audio Experiment is disabled or not...
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>
Closing this, further discussion can happen in #177.
Let me know how it behaves and if you can, please provide the logged information. (To do so enable DevTools in BetterDiscord developer settings and press Ctrl+Shift+I.)