fs2open.github.com icon indicating copy to clipboard operation
fs2open.github.com copied to clipboard

FSO new installations defaulting to legacy config if launcher dosent correct it

Open Shivansps opened this issue 1 year ago • 1 comments

As i mentioned in #6387 , there seems to be some kind of oversight on the initial config storage location reverting to legacy mode by default (at least on Windows) if there is no fs2_open.ini file were FSO expects it to be.

This is due because the initial value of old_config_exists = true https://github.com/scp-fs2open/fs2open.github.com/blob/83d12684e4be2ba7b4aadd81203f79cd2133ca1b/code/osapi/osapi.cpp#L516

This is never checked and because of the if condition for new installs were the new config location is used is impossible. At least on windows.

This results in FSO reporting (and using) ".//" pref_path if the launcher is not aware of this and correct it, or FSO is launched without a launcher (and the .ini dosent exists).

In the following days ill make some tests on linux because i remember seeing the message of "FSO is running in legacy mode" in the console. I will report back here.

Shivansps avatar Oct 13 '24 23:10 Shivansps

Update: Linux is fine, it works as expected defaulting to the new configuration on new installs.

As for Windows. after a some testing, there is a very simple way to improve things, because if the registry key does not exist and cmdline_fso.cfg dosent exist, old_config_time will always be zero what can be used to set old_config_exists to false. BUT, since FSO and FS2 share the same registry entry if someone installs Freespace 2 from Steam (it dosent even run) it will set the keys and im guessing it will be the same for the retail cd launcher.

This dosent seem to be the case for the gog version.

Shivansps avatar Oct 14 '24 23:10 Shivansps

Resolved via #6396

Goober5000 avatar Oct 28 '24 03:10 Goober5000