Conan Exiles Regex and Exit (#279)

* Regex and Exit

Changed commandline args as suggested by @Greelan which makes it possible to search for regex
Added regex for join leave and chat. Modified regex for ready.
Modified exit mode to string and set timeout to 60s so that the server can properply shutdown

* keep rcon alive

* tune rcon keepalive and ready regex

* Update launch args, "-log" isn't needed

* Update conan-exiles.kvp

Filtering ping errors for RCON keepalive

* Update conan-exiles.kvp

Streamlined the regex thanks to Greelan!

---------

Co-authored-by: IceOfWraith <96364530+IceOfWraith@users.noreply.github.com>
This commit is contained in:
rezor92 2023-03-26 04:45:59 +02:00 committed by GitHub
parent 827dee2570
commit d8364858bd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2,7 +2,7 @@ Meta.DisplayName=Conan Exiles
Meta.Description=Conan Exiles Dedicated Server Meta.Description=Conan Exiles Dedicated Server
Meta.OS=Windows, Linux Meta.OS=Windows, Linux
Meta.Arch=x86_64 Meta.Arch=x86_64
Meta.Author=IceOfWraith, Greelan, eNcrypt Meta.Author=IceOfWraith, Greelan, eNcrypt, rezor92
Meta.URL=https://store.steampowered.com/app/440900/Conan_Exiles/ Meta.URL=https://store.steampowered.com/app/440900/Conan_Exiles/
Meta.DisplayImageSource=steam:440900 Meta.DisplayImageSource=steam:440900
Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.ApplicationPort3} Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.ApplicationPort3}
@ -24,13 +24,13 @@ App.ExecutableLinux=/usr/bin/xvfb-run
App.WorkingDir=443030/ConanSandbox/Binaries/Win64 App.WorkingDir=443030/ConanSandbox/Binaries/Win64
App.LinuxCommandLineArgs=-a wine "./ConanSandboxServer-Win64-Test.exe" App.LinuxCommandLineArgs=-a wine "./ConanSandboxServer-Win64-Test.exe"
App.WindowsCommandLineArgs= App.WindowsCommandLineArgs=
App.CommandLineArgs={{$PlatformArgs}} {{Map}}{{CustomMap}} -log -Port={{$ApplicationPort1}} -QueryPort={{$ApplicationPort3}} -RconPort={{$RemoteAdminPort}} -RconEnabled=1 -RconPassword="{{$RemoteAdminPassword}}" -MaxPlayers={{$MaxUsers}} {{$FormattedArgs}} App.CommandLineArgs={{$PlatformArgs}} {{Map}}{{CustomMap}} -stdout -FullStdOutLogOutput -Port={{$ApplicationPort1}} -QueryPort={{$ApplicationPort3}} -RconPort={{$RemoteAdminPort}} -RconEnabled=1 -RconPassword="{{$RemoteAdminPassword}}" -MaxPlayers={{$MaxUsers}} {{$FormattedArgs}}
App.AppSettings={} App.AppSettings={}
App.EnvironmentVariables={"LD_LIBRARY_PATH":"./linux64:%LD_LIBRARY_PATH%","SteamAppId":"440900"} App.EnvironmentVariables={"LD_LIBRARY_PATH":"./linux64:%LD_LIBRARY_PATH%","SteamAppId":"440900"}
App.CommandLineParameterFormat=-{0}="{1}" App.CommandLineParameterFormat=-{0}="{1}"
App.CommandLineParameterDelimiter= App.CommandLineParameterDelimiter=
App.ExitMethod=OS_CLOSE App.ExitMethod=String
App.ExitTimeout=30 App.ExitTimeout=60
App.ExitString=exit App.ExitString=exit
App.ExitFile=app_exit.lck App.ExitFile=app_exit.lck
App.HasWriteableConsole=True App.HasWriteableConsole=True
@ -49,6 +49,8 @@ App.AdminMethod=SourceRCON
App.AdminLoginTransform=None App.AdminLoginTransform=None
App.RCONConnectDelaySeconds=5 App.RCONConnectDelaySeconds=5
App.RCONConnectRetrySeconds=5 App.RCONConnectRetrySeconds=5
App.RCONHeartbeatMinutes=3
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0} App.TelnetLoginFormat={0}
App.UpdateSources=[{"UpdateStageName":"SteamCMD and Conan Exiles Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"443030","UpdateSourceArgs":"440900","ForceDownloadPlatform":"Windows"},{"UpdateStageName":"Config Directory Creation","UpdateSourcePlatform":"All","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./conan-exiles/443030/ConanSandbox/Saved/Config/WindowsServer","OverwriteExistingFiles":false},{"UpdateStageName":"ServerSettings File Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://github.com/CubeCoders/AMPTemplates/raw/main/conan-exilesconfigsettings.ini","UpdateSourceTarget":"./443030/ConanSandbox/Saved/Config/WindowsServer/","UpdateSourceArgs":"ServerSettings.ini","OverwriteExistingFiles":false}] App.UpdateSources=[{"UpdateStageName":"SteamCMD and Conan Exiles Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"443030","UpdateSourceArgs":"440900","ForceDownloadPlatform":"Windows"},{"UpdateStageName":"Config Directory Creation","UpdateSourcePlatform":"All","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./conan-exiles/443030/ConanSandbox/Saved/Config/WindowsServer","OverwriteExistingFiles":false},{"UpdateStageName":"ServerSettings File Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://github.com/CubeCoders/AMPTemplates/raw/main/conan-exilesconfigsettings.ini","UpdateSourceTarget":"./443030/ConanSandbox/Saved/Config/WindowsServer/","UpdateSourceArgs":"ServerSettings.ini","OverwriteExistingFiles":false}]
App.Compatibility=None App.Compatibility=None
@ -66,11 +68,11 @@ App.MonitorChildProcessWaitMs=3000
App.MonitorChildProcessName=wine64 App.MonitorChildProcessName=wine64
Console.FilterMatchRegex= Console.FilterMatchRegex=
Console.FilterMatchReplacement= Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|\d+:err:ole:.*|Could not find Wine Gecko.*)$ Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|\d+:err:ole:.*|Could not find Wine Gecko.*)|.*LogRcon:Warning: Received Rcon: ping, from PeerAddr: [\d\.:]+|.*Couldn't find the command: ping\. Try "help"$
Console.AppReadyRegex=^LogGameMode:Display: Match State Changed from WaitingToStart to InProgress$ Console.AppReadyRegex=^.*LogGameState: Match State Changed from WaitingToStart to InProgress$
Console.UserJoinRegex=^$ Console.UserJoinRegex=^.*LogNet: Join succeeded: (?<username>.+?#\d+)$
Console.UserLeaveRegex=^$ Console.UserLeaveRegex=^.*LogNet: Player disconnected: (?<username>.+?#\d+)$
Console.UserChatRegex=^$ Console.UserChatRegex=^.*ChatWindow: Character (?<username>.+?) said: (?<message>.+?)$
Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$ Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$
Console.SuppressLogAtStart=False Console.SuppressLogAtStart=False
Console.ActivateLogRegex= Console.ActivateLogRegex=