Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Space Engineers, pass appId as number, remove faudio and disable NVAPI workarround #1119

Open
wants to merge 36 commits into
base: master
Choose a base branch
from
Open
Changes from 27 commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
3890172
Update script.js
Zemogiter Sep 8, 2019
c4063b0
Update script.js
Zemogiter Sep 10, 2019
f8d24e5
Update script.js
Zemogiter Sep 11, 2019
c2ec5ed
Merge branch 'master' into patch-5
Zemogiter Sep 11, 2019
50b98e4
Update script.js
Zemogiter Sep 20, 2019
67c37af
Merge branch 'master' into patch-5
Zemogiter Oct 3, 2019
6c60528
Update script.js
Zemogiter Oct 4, 2019
d33f6c3
Update script.js
Zemogiter Oct 4, 2019
158baba
Merge branch 'master' into patch-5
Zemogiter Oct 29, 2019
01282f7
Update script.js
Zemogiter Nov 1, 2019
e93ad5a
Update script.js
Zemogiter Nov 10, 2019
17ec66a
Update script.js
Zemogiter Nov 17, 2019
4303a6a
Update script.js
Zemogiter Dec 24, 2019
cf9220b
Update script.js
Zemogiter Dec 24, 2019
4f05ce9
Merge branch 'master' into patch-5
Zemogiter Dec 29, 2019
1046714
Update script.js
Zemogiter Dec 29, 2019
84ff3f1
Update script.js
Zemogiter Jan 2, 2020
a7cd5d5
Update script.js
Zemogiter Jan 2, 2020
fd589bd
Update script.js
Zemogiter Jan 3, 2020
324eada
Update script.js
Zemogiter Jan 3, 2020
bde966f
Update script.js
Zemogiter Jan 3, 2020
5b469ae
Update script.js
Zemogiter Jan 3, 2020
f51200b
Update script.js
Zemogiter Jan 3, 2020
9cdf1cf
Update script.js
Zemogiter Jan 12, 2020
e30a5d3
Update script.js
Zemogiter Jan 14, 2020
7c10510
Update script.js
Zemogiter Jan 14, 2020
1f2ebae
Update script.js
Zemogiter Jan 14, 2020
79cedc2
Update script.js
Zemogiter Feb 6, 2020
a6ea880
Update script.js
Zemogiter Feb 6, 2020
2a57699
Update script.js
Zemogiter Feb 6, 2020
bc0a40d
Update script.js
Zemogiter Feb 6, 2020
80bc907
Update script.js
Zemogiter Apr 6, 2020
203f50a
Merge branch 'master' into patch-5
Zemogiter Jan 24, 2021
01f4d92
Update script.js
Zemogiter Jan 24, 2021
1afa0f1
Update script.js
Zemogiter Jan 24, 2021
2695d8d
Update script.js
Zemogiter Jan 24, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 23 additions & 42 deletions Applications/Games/Space Engineers/Steam/script.js
Original file line number Diff line number Diff line change
@@ -1,58 +1,39 @@
const SteamScript = include("engines.wine.quick_script.steam_script");

const DotNET472 = include("engines.wine.verbs.dotnet472");
const Vcrun2017 = include("engines.wine.verbs.vcrun2017");
const dotnet472 = include("engines.wine.verbs.dotnet472");
const vcrun2017 = include("engines.wine.verbs.vcrun2017");
Zemogiter marked this conversation as resolved.
Show resolved Hide resolved
Zemogiter marked this conversation as resolved.
Show resolved Hide resolved
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")
.appId(244850)
.wineVersion(getLatestDevelopmentVersion)
.wineDistribution("upstream")
.wineArchitecture("amd64")
.preInstall((wine) => {
new DotNET472(wine).go();
new Vcrun2017(wine).go();
const wizard = wine.wizard();
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";
Zemogiter marked this conversation as resolved.
Show resolved Hide resolved
touch(dxvkConfigFile);
writeToFile(dxvkConfigFile, "dxgi.nvapiHack = False");
wizard.message(tr("You may have to install libjpeg62 package if you see thumbnails in New Game menu dispalyed as magenta rectangles."));
wizard.message(tr("Due to JIT compiler issues and the way this game uses multithreating, there are audio stutters. If you are on a Debian-based distribution you can try the libFAudio package from this PPA:\nhttps://launchpad.net/~cybermax-dexter/+archive/ubuntu/sdl2-backport"));
})
.executable("Steam.exe", ["-silent", "-applaunch", "244850", "-no-cef-sandbox", "-skipintro"])
.environment((wine) => {
const dxvkConfigFile = wine.prefixDirectory() + "/drive_c/dxvk.conf";
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


const wizard = wine.wizard();

wizard.message(
tr(
"You have to install libjpeg62 and libjpeg62-dev or else the thumbnails in New Game menu will be dispalyed as magenta rectangles."
)
);
wizard.message(
tr(
"Due to JIT compiler issues and the way this game uses multithreading, there are audio stutters. This script will attempt to minimize them but you might also have to enter the alsoft-conf command in terminal and set sample depth to 32bit float and period size to 2048."
)
);
return '{"DXVK_CONFIG_FILE": "${dxvkConfigFile}", "STAGING_SHARED_MEMORY": "0", "DXVK_HUD": "compiler", "PULSE_LATENCY_MSEC": "60", "WINEESYNC": "1"}';
})
.executable("Steam.exe", ["-silent", "-applaunch", "244850", "-no-cef-sandbox", "-skipintro"]);