- Sep 6, 2019
- 19
- 71
Has anyone had problems when game zooming the picture closer to their breast or face, but itstead of this, it just flies away to the border of screen or even beyond?
After digging a bit in the code, I found why this issue happen.I've got the same issue, does anyone know a fix for this?
The CSV files contains the position where specific parts of the body are (such as bust, thigh and so on), and the position of those parts is defined as the position on the image (e.g. (0.5, 0.5) would be right in the middle).
These values are written using a dot as the decimal separator.
In the code, the developer might have assumed that the entire world uses this character as the decimal separator (sadly for us, this is not the case).
So, for those images to be correctly displayed (or rather, for the zoom to be done properly), you need to change the regional settings of your OS to use a dot as a decimal separator instead of something else (e.g. a comma).
Changing the locale to en-US should do the trick (Control Panel > Region > Change Date/Time/Number format > Change the format to English (US) for those on Windows, you can change it back to your country/language later and it should not require a reboot).
On a side note, if someone here has a way to reach out to the developer, it might be wise to let them know that they can easily fix this by changing all calls to
float.TryParse("...", out result)
and specify a culture (e.g. the invariant culture) as an optional parameter, which would force the application to use a dot as the decimal separator, regardless of the regional settings of the end user OS.(<rant>and ideally, avoid using the
TryParse
function if they do not check whether the numbers were correctly parsed and silently return 0 without indicating that the value could not be parsed, and rather use the Parse
function that crashes with a proper message and makes it easier to debug </rant>).It might be possible to override the number format that is used with a BepInEx plugin, but I am lazy.