diff --git a/Applications/Games/Space Engineers/Steam/script.js b/Applications/Games/Space Engineers/Steam/script.js index 348622e713..bc6fb2b93d 100644 --- a/Applications/Games/Space Engineers/Steam/script.js +++ b/Applications/Games/Space Engineers/Steam/script.js @@ -3,45 +3,34 @@ const SteamScript = include("engines.wine.quick_script.steam_script"); const DotNET472 = include("engines.wine.verbs.dotnet472"); const Vcrun2017 = include("engines.wine.verbs.vcrun2017"); const DXVK = include("engines.wine.verbs.dxvk"); -const FAudio = include("engines.wine.verbs.faudio"); - +const xact = include("engines.wine.verbs.xact"); const OverrideDLL = include("engines.wine.plugins.override_dll"); +const { touch, writeToFile } = include("utils.functions.filesystem.files"); +const { getLatestDevelopmentVersion } = include("engines.wine.engine.versions"); new SteamScript() .name("Space Engineers") .editor("Keen Software House") .author("Zemogiter") .appId("244850") - .wineVersion("4.14") + .wineVersion(getLatestDevelopmentVersion) .wineDistribution("upstream") .wineArchitecture("amd64") .preInstall((wine) => { new DotNET472(wine).go(); new Vcrun2017(wine).go(); new DXVK(wine).go(); - new FAudio(wine).go(); + new xact(wine).go(); new OverrideDLL(wine) - .withMode("native, builtin", [ - "msvcr120", - "xaudio2_0", - "xaudio2_1", - "xaudio2_2", - "xaudio2_3", - "xaudio2_4", - "xaudio2_5", - "xaudio2_6", - "xaudio2_7", - "xaudio2_8", - "xaudio2_9", - "x3daudio1_3", - "x3daudio1_4", - "x3daudio1_5", - "x3daudio1_6", - "x3daudio1_7" - ]) + .withMode("native, builtin", ["msvcr120"]) + .withMode("disabled", ["nvapi", "nvapi64"]) .go(); + const dxvkConfigFile = wine.prefixDirectory() + "/drive_c/dxvk.conf"; + touch(dxvkConfigFile); + writeToFile(dxvkConfigFile, "dxgi.nvapiHack = False"); + const wizard = wine.wizard(); wizard.message( @@ -55,4 +44,8 @@ new SteamScript() ) ); }) - .executable("Steam.exe", ["-silent", "-applaunch", "244850", "-no-cef-sandbox", "-skipintro"]); + .executable("Steam.exe", ["-silent", "-applaunch", "244850", "-no-cef-sandbox", "-skipintro"]) + .environment((wine) => { + const dxvkConfigFile = wine.prefixDirectory() + "/drive_c/dxvk.conf"; + return '{"DXVK_CONFIG_FILE": "dxvkConfigFile", "STAGING_SHARED_MEMORY": "0", "DXVK_HUD": "compiler", "PULSE_LATENCY_MSEC": "60", "WINEESYNC": "1"}'; + })