Repository navigation
v0.4.8-RC Archive Maintenance Update
Pre-release
Pre-release
Release notes for 0.4.8-RC
RC5:
- Added RTSS (RivaTuner Statistics Server) as an alternative source for FPS data.
- RTSS is a well-established tool for FPS monitoring, widely used in the gaming community and fully compatible with MSFS.
- The app will initially default to using RTSS FPS as the primary source and will automatically revert to MSFS FPS if RTSS is not running.
- Clicking the RTSS icon or not having RTSS running will revert the app back to using MSFS FPS as the primary source—the latter being temporary until a new flight session starts and RTSS is detected.
- If the user clicks the RTSS icon next to the FPS value, the app will switch to MSFS as the primary FPS source, and the icon will change accordingly.
- The app will remember the last used FPS source and restore it upon the next app launch, when a flight session begins, or when the Reset button is pressed during a flight session.
- Removed nuisance exception message when MSFS is loading in but simconnect is not yet communicating.
Progressive Release Notes for 0.4.8
Executive Summary
This update streamlines test build updates, improves window reliability, enhances FPS smoothing accuracy, introduces RTSS as an alternative FPS source, and boosts overall stability with key compatibility fixes and backend cleanup.
Summary of Changes
- Auto-Update Enhancements: Smarter auto-update handling for experimental builds and tighter alignment with app naming conventions.
- Installation Streamlining: Introduced
-quickupdatefor faster installs and smarter dependency skipping on test builds. - Config & Compatibility Fixes: Eliminated redundant config handling, corrected malformed EXE.xml files, and prevented forced reboots from VC++ installers.
- Window Visibility Improvements: App window now reliably resets and remains visible post-update, with protections against off-screen placements.
- Technical Enhancements: Upgraded to .NET 8.0, implemented robust FPS+ smoothing logic, refined FPS averaging accuracy, introduces RTSS as an alternative FPS source, and added compatibility with FSUIPC7.
- Cleanup & Stability: Removed dead code, reduced warnings, fixed incorrect target FPS logic, and remembered last-used graphics mode.
Detailed Changes
Core Functionality Changes
- None.
Auto-Update Enhancements
- Added support for auto update of experimental test versions, released to a very limited test group, to either test, RC, or formal release versions.
- Updated auto-update logic to derive the app name from the class definition, ensuring consistency with MSFS_AutoFPS.
- Added logic to detect when a preview test version, normally only made available to specific testers for a limited group test, is installed to prevent prompting for auto update to the last published test version.
Installation & Update Process Improvements
- Added
-quickupdatecommand line option to simplify the update process for users who have already installed the app and just want to update to the latest version.-quickupdatewill only install the app files and will not check .NET, VC++ runtimes, or MobiFlight dependencies, as they will be assumed to be already installed and up to date.-quickinstallwill continue to check all dependencies as before.- Auto update will install using the
-quickupdateoption for test versions and the-quickinstalloption for release versions.
- Set quick update delay to 1 second, versus 3 seconds for quick install, to speed up test update installations.
- Enhanced the installation process by detecting if Release Notes.txt is open in Notepad—likely from a recent quick update—to prevent file locking issues. Users are now prompted to close it to ensure the app's installation files update successfully.
Configuration & Compatibility Fixes
- Removed redundant saving/restoration of default MSFS settings to the config file, as MSFS CTD / unclean exit protection is now handled by the new UserCfg.opt backup/restoration code introduced in 0.4.7.
- Added file format check and fix to EXE.xml files during auto start with MSFS option installations, as it was found that some EXE.xml files were not in the correct format—especially after installing the latest versions of FSUIPC, where line breaks and spaces were deleted by its installation process.
- Added
/norestartcommand line option to the VC++ installer to prevent the installer from automatically and irrevocably restarting the system mid-installation, as it did for one user.
Window Visibility Fixes
- Added boundary checking of the app's window position to ensure that it is always within the virtual screen bounds when the app starts and to reset the window position on startup or subsequently not save such errant coordinates on detected window movements, helping prevent the app window from being positioned off-screen.
- Changed saving of window visibility state to require that the app window must also not be minimised to save a state of visible, to prevent saving a visible state when the window is actually hidden in the system tray but an auto upate message box is showing.
- Extended app window position reset on restart time window to 15 seconds starting from when the app closes to allow for more time for the user to reset the window position.
- Changed app window position reset on restart to also reset window visibility and open status to ensure the app window is visible after the reset.
- Changed auto update process to always display the app window, regardess of the initial window state, to ensure the user can see the auto update message box and interact with it.
- If the user declines the auto update, the app window's state returns to its previous state before the auto update was initiated.
- If the user accepts the auto update, the saved window state will be changed to being visible such that the user will always be presented with the app window on the first run following an update, regardless of their previous preference.
Technical Improvements & Cleanup
- Implemented functionality to store the last used graphics mode and automatically set it as the default on the next app launch.
- Updated installer to .NET 8.0.
- Replaced the existing simple rolling FPS averaging method with a new Confirmed Windowed Average FPS, known as FPS+, that is much more robust to outlier FPS values, such as those caused by sudden changes in view, panning, scenery loading or other transient events.
- FPS values within 15% of the current average are averaged over a 5 second rolling window of FPS values as per previous versions.
- FPS values outside of this range are considered outliers and are not included in the average until a sustained change over 3 seconds in the same direction is detected.
- The average will recover more quickly if the very recent trend is detected to have minimal variance.
- Changed average FPS calculation to be a real average over X seconds, rather than vary in time indirectly proportionally to the current FPS as was previously implemented.
- Default value is 5 seconds and can be changed in the config file for each MSFS version by changing the fpsAverageSeconds key.
- Config file values less than 1 second will be ignored and 1 second will be used.
- Added RTSS (RivaTuner Statistics Server) as an alternative source for FPS data.
- RTSS is a well-established tool for FPS monitoring, widely used in the gaming community and fully compatible with MSFS.
- The app will initially default to using RTSS FPS as the primary source and will automatically revert to MSFS FPS if RTSS is not running.
- Clicking the RTSS icon or not having RTSS running will revert the app back to using MSFS FPS as the primary source—the latter being temporary until a new flight session starts and RTSS is detected.
- If the user clicks the RTSS icon next to the FPS value, the app will switch to MSFS as the primary FPS source, and the icon will change accordingly.
- The app will remember the last used FPS source and restore it upon the next app launch, when a flight session begins, or when the Reset button is pressed during a flight session.
- Fixed target FPS being incorrectly set to the PC value when FSR3 or MFG were the active graphics mode.
- Added Config class module to maintain code commonality with AutoFPS.
- Cleaned up code to remove nuisance compilation warnings and unused variables.
- Added new FSUIPC7 registry keys for autostart handling to maintain compatibility with the latest FSUIPC versions.
- Removed nuisance exception message when MSFS is loading in but simconnect is not yet communicating.