Posted December 30, 2023 by Cheeseness
Hi hi! Couldn't let 2023 pass without another FLAT update!
Alongside this work, the format for controls.rc has changed. The SettingsManager has been updated to check for old controls.rc files and handle backing up, importing, and then overwriting older files with the current format.
With gamepad axes now being processed as both axes and buttons, menus are navigable and axes can be bound to momentary actions like Heal. Gamepad support is now considered "complete" and enabled by default.
There's a new in-game Bindings menu accessible from the Settings menu, which allows primary and alternate bindings to be set for each action for keyboard, mouse, and gamepad.
I've updated the AudioManager to make volume settings feel more natural/properly distributed along the sliders. Previously, music ducking in menus was being applied as an absolute value rather than a value relative to the current music volume, resulting in the bottom half of the museum slider being silent in the settings menu.
Configuration files are now saved to an appropriate location in the player's home folder, which can be opened in a file browser using a new button in the settings menu. This location respects %XDG_CONFIG_HOME% on Linux, uses NSApplicationSupportDirectory on MacOS, and CSIDL_APPDATA on Windows.
There are also a couple of crash and memory leak fixes in this update that could occur when resetting settings, or clicking into the game when mouse grab has been toggled off.
For a more in-depth summary, see the CHANGES file, or if you're keen on all the minutiae, check the commit log.
Enjoy!