AdvancedInterfaceOptions

AdvancedInterfaceOptions

9M Downloads

Max Camera Zoom value does not save between sessions (WoW Classic)

hardtofin opened this issue ยท 4 comments

commented

This is my first ever github report so go easy on me please :)

As of the Wow Classic stress test (8th August 2019), the game client does not save the max camera zoom out distance between sessions. Either when you simply log out or exit entirely, it is always reset back to 2 when you log back in.

commented

This is a (bug) introduced in Legion, see
https://us.forums.blizzard.com/en/wow/t/camera-distance-increased-in-classic/195109/6

image

But even with enforcing cvars it doesn't seem to stay at 4 and gets capped back to 2
@semlar does that setting even work anymore?

commented

The "Enforce CVars" setting will not override another script that changes the cvar, it only restores the previous setting for cvars that don't persist through relogging or changing characters.

This is why AIO tells the user what last modified the cvar, because this is generally from them running another addon that's changing the setting intentionally, and it's left to the user to decide what to do about it.

If the user opens the blizzard options and manually changes a cvar through the interface we don't want AIO immediately changing that back to their previous setting, which is what would happen if it truly enforced its settings.

It's showing a "Last Modified By" line in that screenshot because that file is literally calling SetCVar to restore that setting to 2, and AIO (intentionally) won't touch the cvar after it's been set that way by an external script.

This would be tricky to change the way it works, because the camera distance slider in the interface sets that cvar when it loads or gets shown, and we can't tell the difference between that and the user manually adjusting the slider themselves.

The simplest solution is to assume nobody in their right mind would lower their max camera distance and simply set it to the max at all times, but I don't like the idea of forcing a hidden setting on users.

commented

Perhaps an option to allow players to knowingly opt-in to that functionality of AIO would alleviate the concerns and allow that functionality to exist?

There are probably two issues that arise from this:

  1. AIO would need to remember the values the player set via AIO's interface. And the player would need the option to tell AIO to forget a particular setting.
  2. If AIO detects a value that's been altered and decides it needs setting back (as per the user's wishes) we still don't really know if the player did it. It should probably print something telling the player which CVar it changed so that the player player can tell AIO to forget its own version of that CVar, if necessary.

Also as a side note, I think this forgetting issue affects the ActionCam setting too.

commented

Fixed in #44