From 88efb2d9193c16f472dd500b293d30422266081a Mon Sep 17 00:00:00 2001 From: Greelan <53196309+Greelan@users.noreply.github.com> Date: Thu, 23 Mar 2023 14:06:19 +1100 Subject: [PATCH] Wine updates for 32 bit servers (#306) --- assetto-corsa.kvp | 13 +++++++------ call-of-duty4mw.kvp | 14 +++++++------- carrier-command2.kvp | 13 +++++++------ 3 files changed, 21 insertions(+), 19 deletions(-) diff --git a/assetto-corsa.kvp b/assetto-corsa.kvp index 2f9fb9a..f65a8dc 100644 --- a/assetto-corsa.kvp +++ b/assetto-corsa.kvp @@ -12,20 +12,21 @@ Meta.ConfigRoot=assetto-corsa.kvp Meta.MinAMPVersion=2.4.0.2 Meta.SpecificDockerImage=cubecoders/ampbase:wine Meta.DockerRequired=False -Meta.ContainerPolicy=RecommendedOnLinux +Meta.ContainerPolicy=SupportedOnWindows, RecommendedOnLinux +Meta.ContainerPolicyReason=The server requires Wine to run on Linux. Using a container avoids the need to install this dependency on the host. Meta.Prerequsites=[] Meta.ConfigReleaseState=NotSpecified App.DisplayName=Assetto Corsa App.RootDir=./assetto-corsa/ App.BaseDirectory=./assetto-corsa/302550 App.ExecutableWin=302550\acServer.exe -App.ExecutableLinux=/usr/bin/xvfb-run +App.ExecutableLinux=/usr/bin/wine App.WorkingDir=302550 -App.LinuxCommandLineArgs=-a wine "./acServer.exe" +App.LinuxCommandLineArgs="./acServer.exe" App.WindowsCommandLineArgs= App.CommandLineArgs={{$PlatformArgs}} {{$FormattedArgs}} App.AppSettings={} -App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"244210"} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"244210","WINEPREFIX":"{{$FullRootDir}}.wine","WINEARCH":"win32","WINEDEBUG":"-all"} App.CommandLineParameterFormat=-{0} "{1}" App.CommandLineParameterDelimiter= App.ExitMethod=OS_CLOSE @@ -56,14 +57,14 @@ App.SteamForceLoginPrompt=False App.RapidStartup=False App.MonitorChildProcess=True App.MonitorChildProcessWaitMs=2000 -App.MonitorChildProcessName=wine +App.MonitorChildProcessName=acServer.exe App.SupportsUniversalSleep=False App.WakeupMode=Any App.ApplicationReadyMode=RegexMatch App.TemplateMatchRegex={{(\$?[\w]+)}} Console.FilterMatchRegex= Console.FilterMatchReplacement= -Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|\d+:err:ole:.*|Could not find Wine Gecko.*)$ +Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|Could not find Wine Gecko.*)$ Console.AppReadyRegex=^Server started$ Console.UserJoinRegex=^DRIVER ACCEPTED FOR CAR (?.+?)$ Console.UserLeaveRegex=^Clean exit, driver disconnected:\s+(?.+?) \[\]$ diff --git a/call-of-duty4mw.kvp b/call-of-duty4mw.kvp index abbab6a..bc6b69f 100644 --- a/call-of-duty4mw.kvp +++ b/call-of-duty4mw.kvp @@ -12,8 +12,8 @@ Meta.ConfigRoot=call-of-duty4mw.kvp Meta.MinAMPVersion=2.4.0.10 Meta.SpecificDockerImage=cubecoders/ampbase:wine Meta.DockerRequired=False -Meta.ContainerPolicy=RecommendedOnLinux -Meta.ContainerPolicyReason=The server requires Wine and Xvfb to run on Linux. Using a container avoids the need to install these dependencies on the host. +Meta.ContainerPolicy=SupportedOnWindows, RecommendedOnLinux +Meta.ContainerPolicyReason=The server requires Wine to run on Linux. Using a container avoids the need to install this dependency on the host. Meta.Prerequsites=[] Meta.ExtraContainerPackages=[] Meta.ConfigReleaseState=NotSpecified @@ -22,14 +22,14 @@ App.DisplayName=Call of Duty 4: Modern Warfare App.RootDir=./call-of-duty4mw/ App.BaseDirectory=./call-of-duty4mw/7940/ App.ExecutableWin=7940\iw3mp.exe -App.ExecutableLinux=/usr/bin/xvfb-run +App.ExecutableLinux=/usr/bin/wine App.WorkingDir=7940 -App.LinuxCommandLineArgs=-a wine "./iw3mp.exe" +App.LinuxCommandLineArgs="./iw3mp.exe" App.WindowsCommandLineArgs= App.CommandLineArgs={{$PlatformArgs}} +set sv_punkbuster 0 +exec "server.cfg" +set net_port {{$GamePort}} +set authPort {{$AuthPort}} +set masterPort {{$MasterPort}} {{map_mode}}{{$FormattedArgs}} App.UseLinuxIOREDIR=False App.AppSettings={} -App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"7940"} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"7940","WINEPREFIX":"{{$FullRootDir}}.wine","WINEARCH":"win32","WINEDEBUG":"-all"} App.CommandLineParameterFormat=+set {0} "{1}" App.CommandLineParameterDelimiter= App.ExitMethod=OS_CLOSE @@ -62,14 +62,14 @@ App.SteamForceLoginPrompt=False App.RapidStartup=False App.MonitorChildProcess=True App.MonitorChildProcessWaitMs=1000 -App.MonitorChildProcessName=wine +App.MonitorChildProcessName=iw3mp.exe App.SupportsUniversalSleep=True App.WakeupMode=Any App.ApplicationReadyMode=Immediate App.TemplateMatchRegex={{(\$?[\w]+)}} Console.FilterMatchRegex= Console.FilterMatchReplacement= -Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|\d+:err:ole:.*|Could not find Wine Gecko.*)$ +Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|Could not find Wine Gecko.*)$ Console.AppReadyRegex=^$ Console.UserJoinRegex=^$ Console.UserLeaveRegex=^$ diff --git a/carrier-command2.kvp b/carrier-command2.kvp index 0ecfae0..68010c2 100644 --- a/carrier-command2.kvp +++ b/carrier-command2.kvp @@ -12,20 +12,21 @@ Meta.ConfigRoot=carrier-command2.kvp Meta.MinAMPVersion=2.3.3.0 Meta.SpecificDockerImage=cubecoders/ampbase:wine Meta.DockerRequired=False -Meta.ContainerPolicy=Recommended +Meta.ContainerPolicy=SupportedOnWindows, RecommendedOnLinux +Meta.ContainerPolicyReason=The server requires Wine to run on Linux. Using a container avoids the need to install this dependency on the host. Meta.Prerequsites=[] Meta.ConfigReleaseState=NotSpecified App.DisplayName=Carrier Command 2 App.RootDir=./carrier-command2/ App.BaseDirectory=./carrier-command2/1489630/ App.ExecutableWin=1489630\dedicated_server.exe -App.ExecutableLinux=/usr/bin/xvfb-run +App.ExecutableLinux=/usr/bin/wine App.WorkingDir=1489630 -App.LinuxCommandLineArgs=-a wine "./dedicated_server.exe" +App.LinuxCommandLineArgs="./dedicated_server.exe" App.WindowsCommandLineArgs= App.CommandLineArgs={{$PlatformArgs}} {{$FormattedArgs}} App.AppSettings={} -App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"1489630"} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"1489630","WINEPREFIX":"{{$FullRootDir}}.wine","WINEARCH":"win32","WINEDEBUG":"-all"} App.CommandLineParameterFormat=-{0} "{1}" App.CommandLineParameterDelimiter= App.ExitMethod=OS_CLOSE @@ -56,14 +57,14 @@ App.SteamForceLoginPrompt=False App.RapidStartup=False App.MonitorChildProcess=True App.MonitorChildProcessWaitMs=1000 -App.MonitorChildProcessName=wine +App.MonitorChildProcessName=dedicated_server.exe App.SupportsUniversalSleep=False App.WakeupMode=Any App.ApplicationReadyMode=RegexMatch App.TemplateMatchRegex={{(\$?[\w]+)}} Console.FilterMatchRegex=\[\d+m Console.FilterMatchReplacement= -Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|\d+:err:ole:.*|Could not find Wine Gecko.*)$ +Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|Could not find Wine Gecko.*)$ Console.AppReadyRegex=^[\d:]+ : connected to Steam$ Console.UserJoinRegex=^[\d:]+ : (?.+?) \(steam id (?.+?)\) authenticated by Steam$ Console.UserLeaveRegex=^[\d:]+ : (?.+?) \(steam id (?.+?)\) disconnected$