
Credomane
Published
protondb ruins my spacing. Pretty format is at: https://gist.github.com/credomane/05a62924aa4ac7beb9376b1b82b7209a
There are three things are absolutely required to launch the game.
First your processor must support SSE4.1. You can check with Steam. Open steam -> Top Menu -> Help -> System Information. Verify under processor information that SSE41 says supported. Second the Mafia III Launcher is borked and the real cause of all the borked reports. Rename the launcher.exe in the Mafia III folder to laucher_borked.exe. Then make a copy of mafia3.exe and name the copy launcher.exe. Third fullscreen mode is completely borked in my experience and the game will launch to a black screen where it freezes. You have to create a custom videoconfig.cfg file with the contents "0 0 1280 720 0 0 0 0" with out the quotes to launch the game in windowed mode, 720p resolution and vsync disabled.
You create this file in a rather odd place due to proton. Browse out to the "root" folder of the steamlibrary where Mafia III is installed. Then browse out to through this super long folder structure creating any folder required (steamapps/compatdata folders should exist already): {steamlibrary root}/steamapps/compatdata/360430/pfx/drive_c/users/steamuser/Local Settings/Application Data/2K Games/Mafia III/Saves/
Also once you get in the game you can change display settings. However enabling vsync will slow the game down to 30fps (from my 200+fps with it off) and it plays like stop motion with it on, no joke, 0.1fps is more accurate. Enabling fullscreen is an instant black screen freeze forcing the videoconfig.cfg modification again.
gamemoderun %command%
Loading the game to the main menu works without issue. Navigating the menus also works without issue.
Starting a new game or loading an existing game however has issues. The game will enter the loading screen and the loading animation will spin for a second before "freezing". Tabbing out of the game waiting a second or two (yes, you must wait the 1-2s) then tabbing back in will cause the loading to resume for another second. Continue to do this alt+tab out/in until the game finishes loading and stops stalling. When the loading screens starts to fade out you are almost done. Took me about 7-10 times before I was in game and playing with zero further issues. Only discovered this by accident tabing in/out looking at protondb trying to figure out why it would freeze on the loading screen.
While I am playing the game with GE-Proton7-47 this "trick" also worked for proton experimental, proton7.0-6, proton6.3-8, and the default proton for this game.