Zwip-Zwap Zapony
Member
Using v2.2.8 of the official Android port, the "Scale Divider" setting ("nativeresdiv" convar, cv_nativeresdiv internal source code name) gets reset to the default value of 3.0 whenever the game is rebooted.
This setting controls the game resolution if "Use Native Resolution" ("nativeres") is enabled and "Automatic Scaling" ("nativeresauto") is disabled.
The convar already has the CV_SAVE convar flag, however the src/screen.c file's SCR_ResetNativeResDivider() function resets it to its default value.
That function is called by SCR_CheckDefaultMode() in the same file, next to the comment "// Reset to default if the native width or height changed", however it also gets called on game bootup regardless of if the resolution changed since last bootup.
Relevant source code area, in which scr_nativewidth and scr_nativeheight would always be non-zero, leading to SCR_ResetNativeResDivider() being called: https://github.com/Jimita/SRB2/blob/android-port-build-v228/src/screen.c#L459-L464
This setting controls the game resolution if "Use Native Resolution" ("nativeres") is enabled and "Automatic Scaling" ("nativeresauto") is disabled.
The convar already has the CV_SAVE convar flag, however the src/screen.c file's SCR_ResetNativeResDivider() function resets it to its default value.
That function is called by SCR_CheckDefaultMode() in the same file, next to the comment "// Reset to default if the native width or height changed", however it also gets called on game bootup regardless of if the resolution changed since last bootup.
Relevant source code area, in which scr_nativewidth and scr_nativeheight would always be non-zero, leading to SCR_ResetNativeResDivider() being called: https://github.com/Jimita/SRB2/blob/android-port-build-v228/src/screen.c#L459-L464