def main(): """ Uses winetricks to install the ole32 verb """ log('Applying fixes for Forts') util.protontricks('ole32')
def main(): """ Launcher workaround """ # Fixes the startup process. util.protontricks('vcrun2019_ge') util.protontricks('d3dcompiler_47') util.replace_command('LariLauncher.exe', '../bin/bg3.exe')
def main(): # Requires vcrun2019 to launch util.protontricks('vcrun2019_ge') util.protontricks('d3dcompiler_47') util.use_seccomp() util.set_environment('PROTON_NO_D3D12', '1') util.set_environment('WINEDLLOVERRIDES', 'dxgi=n')
def main(): """ Uses winetricks to install dotnet40 https://appdb.winehq.org/objectManager.php?sClass=version&iId=34014 """ # If not already installed, install dotnet40 util.protontricks('dotnet40')
def main(): """ From: https://www.protondb.com/app/63710 """ util.protontricks('d3dcompiler_43') util.protontricks('d3dx9_43') util.winedll_override('openal32', 'b')
def main(): """ Graphics API workaround """ util.protontricks('d3dcompiler_47') if not os.path.isfile('UserCfg.lua.bak'): subprocess.call(['cp', 'UserCfg.lua', 'UserCfg.lua.bak']) f = open('UserCfg.lua', "a+") f.write("gfx_strAPI = \"Direct3D12\";\nsfx_strAPI = \"OpenAL\";") f.close if not os.path.isfile('Content/SeriousSam4/Config/CheckDriver.lua.bak'): subprocess.call([ 'cp', 'Content/SeriousSam4/Config/CheckDriver.lua', 'Content/SeriousSam4/Config/CheckDriver.lua.bak' ]) pattern = "gfx_iReqDriverVersion =" file = open(r'Content/SeriousSam4/Config/CheckDriver.lua', 'r') result = open(r'Content/SeriousSam4/Config/CheckDriver2.lua', 'w') for line in file: line = line.strip( '\r\n' ) # it's always a good behave to strip what you read from files if pattern in line: line = "gfx_strAPI = \"Vulkan\";" # if match, replace line result.write(line + '\n') # write every line file.close() # don't forget to close file handle result.close() subprocess.call([ 'mv', 'Content/SeriousSam4/Config/CheckDriver2.lua', 'Content/SeriousSam4/Config/CheckDriver.lua' ])
def main(): """ for FFXIV skip intro cutscene to allow game to work. """ # Fixes the startup process. util.replace_command('ffxivboot.exe', 'ffxivboot64.exe') util.protontricks('hidewineexports=enable') # disable new character intro cutscene to prevent black screen loop configpath = os.path.join( util.protonprefix(), 'drive_c/users/steamuser/My Documents/My Games/FINAL FANTASY XIV - A Realm Reborn' ) if not os.path.exists(configpath): os.makedirs(configpath) configgame = os.path.join(configpath, 'FFXIV.cfg') if not os.path.isfile(configgame): f = open(configgame, "w+") f.write( "<FINAL FANTASY XIV Config File>\n\n<Cutscene Settings>\nCutsceneMovieOpening 1" ) f.close configpath = os.path.join( util.protonprefix(), 'drive_c/users/steamuser/My Documents/My Games/FINAL FANTASY XIV - A Realm Reborn' ) if not os.path.exists(configpath): os.makedirs(configpath) configgame = os.path.join(configpath, 'FFXIV_BOOT.cfg') if not os.path.isfile(configgame): f = open(configgame, "w+") f.write("<FINAL FANTASY XIV Boot Config File>\n\n<Version>\nBrowser 1") f.close
def main(): """ Install msxml3 """ # https://github.com/ValveSoftware/Proton/issues/179#issuecomment-415593087 util.protontricks('msxml3') util.protontricks('msxml4')
def main(): """ Uses installs devenum wmp9 """ # https://github.com/ValveSoftware/Proton/issues/703#issuecomment-416075961 util.protontricks('devenum') util.protontricks('wmp9_x86_64')
def main(): """ Requires media foundation dlls and mem_alloc mod """ util.protontricks('mf_install') util.wine_mem_alloc_mod()
def main(): """ Uses winetricks to install the icodecs verb """ log('Applying fixes for realMyst') util.protontricks('icodecs')
def main(): """ installs devenum, quartz, wmp9 and adjust pulse latency """ # Fix pre-rendered cutscene playback util.protontricks('vcrun2019_ge') util.protontricks('d3dcompiler_47')
def main(): """ Changes the proton argument from the launcher to the game """ util.protontricks('win7') util.set_environment('PULSE_LATENCY_MSEC', '60')
def main(): """ Installs corefonts """ log('Applying fixes for You Need a Budget 4') # https://github.com/ValveSoftware/Proton/issues/7 util.protontricks('corefonts')
def main(): """ Install corefonts """ log('Applying fixes for Tesla Effect') # https://github.com/ValveSoftware/Proton/issues/1317 util.protontricks('corefonts')
def main(): """ Install vcrun2015 """ log('Applying fixes for Doom 2016') # https://github.com/ValveSoftware/Proton/issues/788#issuecomment-416651267 util.protontricks('vcrun2015')
def main(): """ Install d3d9x """ print('Applying fixes for Spacewar') # The game needs d3d9x, otherwise no fonts will be rendered. util.protontricks('d3d9x')
def main(): """ Changes the proton argument from the launcher to the game """ log('Applying fixes for Mafia II: Definitive Edition') util.protontricks('dotnet452') util.replace_command('Launcher.exe', '../Mafia II Definitive Edition.exe')
def main(): """ Install corefonts, Set to win7 and override msdmo """ # https://github.com/ValveSoftware/Proton/issues/200#issuecomment-415905979 util.protontricks('win7') util.protontricks('corefonts') util.set_environment('WINEDLLOVERRIDES', 'msdmo=b')
def main(): """ Install corefonts """ log('Applying fixes for Grand Theft Auto V') # https://github.com/ValveSoftware/Proton/issues/37 util.protontricks('corefonts')
def main(): """ Fix the in-game sound """ util.protontricks('xact') util.protontricks('winxp') info_popup()
def main(): """ Install xact and override xaudio2_7 to native """ print('Applying fixes for Portal Knights') # install xact util.protontricks('xact')
def main(): """ Install dotnet40 """ # https://github.com/ValveSoftware/Proton/issues/810 # https://steamcommunity.com/app/242640/discussions/0/620700960990638817/ util.protontricks('dotnet40') util.protontricks('nocrashdialog')
def main(): """ Set to winxp """ log('Applying fixes for EVE Online') # https://github.com/ValveSoftware/Proton/issues/1223#issue-356628050 util.protontricks('winxp')
def main(): """ Installs d3dxof """ log('Applying fixes for SUGURI 2') # https://github.com/ValveSoftware/Proton/issues/970#issuecomment-420421289 util.protontricks('d3dxof')
def main(): """ Install msxml3 """ log('Applying fixes for Civilization 4 (Beyond the Sword)') # https://github.com/ValveSoftware/Proton/issues/179#issuecomment-415593087 util.protontricks('msxml3') util.protontricks('msxml4')
def main(): """ Install dotnet46 so the launcher works and fix game audio. """ # Install crypt32 (not required for Proton 3.16-3 and up) util.protontricks('dotnet46') # Install directmusic, set overrides util.winedll_override('xaudio2_7', 'n')
def main(): """ Installs d3dcompiler_43, disables esync """ # https://github.com/ValveSoftware/Proton/issues/178#issuecomment-422986182 util.protontricks('d3dcompiler_43') # https://github.com/ValveSoftware/Proton/issues/178#issuecomment-415201326 util.disable_esync()
def main(): """ Install xact """ print('Applying fixes for Rising Storm/Red Orchestra 2 Multiplayer') # Unreal Engine games needs xact, otherwise all audio will be playing at equal loudness. # https://github.com/ValveSoftware/Proton/issues/54 # https://github.com/ValveSoftware/Proton/issues/155 util.protontricks('xact')
def main(): """ Installs dotnet45 directx9 vcruntime2010 and xact_june2018 and sets to winxp """ # https://github.com/ValveSoftware/Proton/issues/1387#issuecomment-428059647 util.protontricks('winxp') util.protontricks('dotnet45') util.protontricks('directx9') util.protontricks('vcruntime2010') util.protontricks('xact_june2018')