Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BetterVolume returning to 200 volume after changing it. #151

Closed
DARKBOW923 opened this issue Apr 10, 2023 · 26 comments
Closed

BetterVolume returning to 200 volume after changing it. #151

DARKBOW923 opened this issue Apr 10, 2023 · 26 comments
Labels
bug Something isn't working

Comments

@DARKBOW923
Copy link

Basically the title, if you change your volume, it will return to 200 again.

@DungeonManager3051
Copy link

same issue

@Lorderite
Copy link

Same issue with latest patch

@Zerthox Zerthox added the bug Something isn't working label Apr 20, 2023
@Zerthox
Copy link
Owner

Zerthox commented Apr 20, 2023

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?

@OnyXWolve
Copy link

hey same issue for me and at least for me "disable audio experiment" is enabled in the plugin settings

@pickanothername
Copy link

pickanothername commented May 2, 2023

I left a comment about this in issue #137 with some further info:
#137 (comment)

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.

@Enrico9431
Copy link

Still happening even though "disable audio experiment" is turned on

@HajimeSait0
Copy link

Once again occurring, switched back to 2.3.2 and its working with the older version of the plugin so far.

@Zerthox
Copy link
Owner

Zerthox commented Aug 13, 2023

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.

@pickanothername
Copy link

pickanothername commented Aug 14, 2023

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.

@Zerthox
Copy link
Owner

Zerthox commented Aug 14, 2023

Experimental version with changed experiment handling & additional logging: https://gist.github.com/Zerthox/e32580591286b4c726d36282c540e2c9
image
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.)

@wizacs
Copy link

wizacs commented Aug 20, 2023

Still resetting the volume to 200% every restart of Discord for me.

@pickanothername
Copy link

Experimental version with changed experiment handling & additional logging: gist.github.com/Zerthox/e32580591286b4c726d36282c540e2c9 image 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

@pickanothername
Copy link

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, …}

Here's the full/expanded log

@Zerthox
Copy link
Owner

Zerthox commented Sep 10, 2023

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?

@pickanothername
Copy link

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, …}

@Zerthox
Copy link
Owner

Zerthox commented Sep 11, 2023

Did you enable the experiment override in the plugin settings? The logged information suggests everything is working fine but the setting is toggled off.

@pickanothername
Copy link

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.

@pickanothername
Copy link

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, …}

Zerthox added a commit that referenced this issue Sep 25, 2023
- Improve experiment handling (#151)
- Fix issues with Discord update
@zuzumi-f
Copy link

zuzumi-f commented Oct 8, 2023

it's happening again
image

@Zerthox Zerthox changed the title BetterVolume returning to 200 volume after chanign it. BetterVolume returning to 200 volume after changing it. Nov 6, 2023
@jcliu0
Copy link

jcliu0 commented Dec 21, 2023

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.

@kaz880
Copy link

kaz880 commented Mar 1, 2024

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.

@pickanothername
Copy link

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.

@pipe01
Copy link

pipe01 commented Jun 30, 2024

FWIW Vencord's plugin works well

@Pittssburgh
Copy link

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...

@pickanothername
Copy link

pickanothername commented Aug 8, 2024 via email

Zerthox added a commit that referenced this issue Aug 9, 2024
- Store >200% volumes locally (#176)
- Attempt to fix issues with remote audio settings (#151, #177)
@Zerthox
Copy link
Owner

Zerthox commented Aug 9, 2024

Closing this, further discussion can happen in #177.

@Zerthox Zerthox closed this as completed Aug 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests