View Single Post
Old 03-15-23, 07:04 AM   #5342
propbeanie
CTD - it's not just a job
 
propbeanie's Avatar
 
Join Date: May 2016
Location: One hour from Music City USA!
Posts: 9,719
Downloads: 439
Uploads: 2


Default

No, not a "bug" per se, but a "design feature" of the interaction of stock SH4 in the 'modern' Windows OS. SH4 is an old DirectX v9 game, written basically to the Windows XP paradigm with single-threaded processes. No "virtual" threads and no multi-core cpus - they were only dreamed of for user computers. The 'modern' Windows (Vista version and later) can "virtualize" the computer and "sandbox" the SH4 game into a segmented area of the computer memory (hence the use of LAA or the 4Gig Patch). As such, SH4 has no idea when "the game" loses focus with Windows, such as if you shell-out and use the calculator or do email. The game assumes it has exclusive use of all hardware. The "shelling-out" can also happen from Windows itself, if you have a background process running (usually in the systray) that "interrupts" the normal operation of the User's work, such as 'Notifications' from the systray. When the game does lose focus, Windows will at times re-assign the resources, such as the video stream or the audio stream to a different process to use while SH4 is "paused" (by the OS). When you return to the game, it does not always receive its resources back at the same memory address, and that results in those little nigglies and nargles you are experiencing. The game does not like being "interrupted" like that.

It can be difficult, if you have a lot of "background" processes running, to prevent the system from shelling-out on you, but try to avoid the situation. If you do notice that the CO2 will not clear within 30 seconds of surfacing, then Save the game immediately. Exit the game to the desktop. Reload the SH4 game, and then Load the Save game to continue. The O2 should then be restored and CO2 cleared. All graphic anomalies should also clear. This applies to all of the SH series games, and probably most other DirectX v9 games.

Leaks can be a beast of a different stripe, though the shelling-out can cause a similar issue as above. At its root, the repair process has a "timer" for each repair, as found in the game's configuration files. As an example, a "Small Leak" might take fifteen minutes to repair, while a "Medium Leak" might take two hours, and a "Large Leak" might take eight hours, and this "game timer" for the repairs only begins after you put the repair team to work, either directly, or while at Battle Stations. If that "game timer" gets interrupted, the process starts all over, no matter what interrupts the "game timer" (which happens to be a DirectX v9 Library timer).

The "shelling-out" issue does interrupt the timer, as does Saving the game and exiting, both of which seem counter-intuitive, but that is the way the DirectX v9 Library stuff functions (or fails to... ). If you have CO2 building in the boat after surfacing, no matter how bad the "repair" situation is, you do have to Save the game, exit the game, reload the game, and load the save, so that your crew does not die. Then you deal with having to wait for the repairs to complete again. Now, it could be that the shelling-out that caused your CO2 build-up while surfaced also caused a graphics anomaly, and you'll know that soon enough when you load the saved game, if the compartments do show "clear" when you get back inside the boat. Just be aware, that no matter the circumstances of your loading of a saved game, that if you took any damage, or had a song playing on the radio, or any one of a number of things, including if you hit an anti-sub net and got that awful Banshee scream from it, you will hear it all over again, one right after the other, as the game loads. That can be rather rude at times, if you have the sound up too loud for your computer... - that is also an SH4 issue...
__________________

"...and bollocks to the naysayer/s" - Jimbuna
propbeanie is offline   Reply With Quote