Пример #1
0
def main():
    """ Uses winetricks to install the ole32 verb
    """

    log('Applying fixes for Forts')

    util.protontricks('ole32')
Пример #2
0
def main():
    """ Launcher workaround
    """
    # Fixes the startup process.
    util.protontricks('vcrun2019_ge')
    util.protontricks('d3dcompiler_47')
    util.replace_command('LariLauncher.exe', '../bin/bg3.exe')
Пример #3
0
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')
Пример #4
0
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')
Пример #5
0
def main():
    """ From: https://www.protondb.com/app/63710
    """

    util.protontricks('d3dcompiler_43')
    util.protontricks('d3dx9_43')
    util.winedll_override('openal32', 'b')
Пример #6
0
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'
        ])
Пример #7
0
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
Пример #8
0
def main():
    """ Install msxml3
    """

    # https://github.com/ValveSoftware/Proton/issues/179#issuecomment-415593087
    util.protontricks('msxml3')
    util.protontricks('msxml4')
Пример #9
0
def main():
    """ Uses installs devenum wmp9
    """

    # https://github.com/ValveSoftware/Proton/issues/703#issuecomment-416075961
    util.protontricks('devenum')
    util.protontricks('wmp9_x86_64')
Пример #10
0
def main():
    """ Requires media foundation dlls and mem_alloc mod
    """

    util.protontricks('mf_install')

    util.wine_mem_alloc_mod()
Пример #11
0
def main():
    """ Uses winetricks to install the icodecs verb
    """

    log('Applying fixes for realMyst')

    util.protontricks('icodecs')
Пример #12
0
def main():
    """ installs devenum, quartz, wmp9 and adjust pulse latency
    """

    # Fix pre-rendered cutscene playback
    util.protontricks('vcrun2019_ge')
    util.protontricks('d3dcompiler_47')
Пример #13
0
def main():
    """ Changes the proton argument from the launcher to the game
    """

    util.protontricks('win7')

    util.set_environment('PULSE_LATENCY_MSEC', '60')
Пример #14
0
def main():
    """ Installs corefonts
    """

    log('Applying fixes for You Need a Budget 4')

    # https://github.com/ValveSoftware/Proton/issues/7
    util.protontricks('corefonts')
Пример #15
0
def main():
    """ Install corefonts
    """

    log('Applying fixes for Tesla Effect')

    # https://github.com/ValveSoftware/Proton/issues/1317
    util.protontricks('corefonts')
Пример #16
0
def main():
    """ Install vcrun2015
    """

    log('Applying fixes for Doom 2016')

    # https://github.com/ValveSoftware/Proton/issues/788#issuecomment-416651267
    util.protontricks('vcrun2015')
Пример #17
0
def main():
    """ Install d3d9x
    """

    print('Applying fixes for Spacewar')

    # The game needs d3d9x, otherwise no fonts will be rendered.
    util.protontricks('d3d9x')
Пример #18
0
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')
Пример #19
0
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')
Пример #20
0
def main():
    """ Install corefonts
    """

    log('Applying fixes for Grand Theft Auto V')

    # https://github.com/ValveSoftware/Proton/issues/37
    util.protontricks('corefonts')
Пример #21
0
def main():
    """ Fix the in-game sound
    """

    util.protontricks('xact')
    util.protontricks('winxp')

    info_popup()
Пример #22
0
def main():
    """ Install xact and override xaudio2_7 to native
    """

    print('Applying fixes for Portal Knights')

    # install xact
    util.protontricks('xact')
Пример #23
0
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')
Пример #24
0
def main():
    """ Set to winxp
    """

    log('Applying fixes for EVE Online')

    # https://github.com/ValveSoftware/Proton/issues/1223#issue-356628050
    util.protontricks('winxp')
Пример #25
0
def main():
    """ Installs d3dxof
    """

    log('Applying fixes for SUGURI 2')

    # https://github.com/ValveSoftware/Proton/issues/970#issuecomment-420421289
    util.protontricks('d3dxof')
Пример #26
0
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')
Пример #27
0
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')
Пример #28
0
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()
Пример #29
0
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')
Пример #30
0
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')