From 1efd8f11b4f7d48e2019bfa6330d9a55850d1452 Mon Sep 17 00:00:00 2001 From: James Manker Date: Wed, 1 Jun 2022 21:34:19 -0500 Subject: [PATCH 1/4] Update V Rising Config This requires AMP 2.3.3 Nightly to function properly. You can obtain it here: https://archive.cubecoders.com/thread/nightly-amp-builds-are-now-available/ This release includes the following: - RCON support (affected by timeout issue: https://github.com/CubeCoders/AMP/issues/575) - Ports are updated to UDP Game and Query + TCP RCON - Linux CPU & Memory monitoring - Linux proper shutdown/startup without needing to restart the instance - Settings files moved to save-data/Settings to avoid wipe on server update. (Due to bug with game server the whitelist and banlist are still in the original location, but that shouldn't be an issue since AMP will store the settings) - Fixed the "Connect to Server" button, but the devs haven't implemented this feature yet so it's just here to look pretty. - Added v-risingupdates.json and v-risingports.json for clarity --- v-rising.kvp | 19 +- v-risingconfig.json | 850 +++++++++++++++++++++++++++------------- v-risingmetaconfig.json | 4 +- v-risingports.json | 32 ++ v-risingupdates.json | 62 +++ 5 files changed, 695 insertions(+), 272 deletions(-) create mode 100644 v-risingports.json create mode 100644 v-risingupdates.json diff --git a/v-rising.kvp b/v-rising.kvp index c3f9c7f..60bb6ff 100644 --- a/v-rising.kvp +++ b/v-rising.kvp @@ -5,7 +5,7 @@ Meta.Arch=x86_64 Meta.Author=Tempus Thales, IceOfWraith Meta.URL=https://store.steampowered.com/app/1604030/V_Rising/ Meta.DisplayImageSource=steam:1604030 -Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.ApplicationPort2} +Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.Ports.$ApplicationPort2} Meta.ConfigManifest=v-risingconfig.json Meta.MetaConfigManifest=v-risingmetaconfig.json Meta.ConfigRoot=v-rising.kvp @@ -38,20 +38,20 @@ App.HasReadableConsole=True App.SupportsLiveSettingsChanges=False App.LiveSettingChangeCommandFormat=set {0} "{1}" App.ApplicationIPBinding=0.0.0.0 -App.Ports=[{"Protocol":2,"Port":9876,"Offset":0,"Range":1,"Ref":"ApplicationPort1","Name":"Application Port 1","Description":"","ChildPorts":null},{"Protocol":2,"Port":9877,"Offset":0,"Range":1,"Ref":"ApplicationPort2","Name":"Application Port 2","Description":"","ChildPorts":null}] +App.Ports=@IncludeJSON[v-risingports.json] App.AdminPortRef=RemoteAdminPort App.PrimaryApplicationPortRef=ApplicationPort1 App.UniversalSleepApplicationUDPPortRef=ApplicationPort1 App.UniversalSleepSteamQueryPortRef=ApplicationPort2 App.MaxUsers=40 -App.UseRandomAdminPassword=False -App.RemoteAdminPassword=Password123 -App.AdminMethod=STDIO +App.UseRandomAdminPassword=True +App.RemoteAdminPassword= +App.AdminMethod=SourceRCON App.AdminLoginTransform=None -App.RCONConnectDelaySeconds=5 -App.RCONConnectRetrySeconds=5 +App.RCONConnectDelaySeconds=30 +App.RCONConnectRetrySeconds=30 App.TelnetLoginFormat={0} -App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"1829350"}] +App.UpdateSources=@IncludeJSON[v-risingupdates.json] App.Compatibility=None App.SteamUpdateAnonymousLogin=True App.SteamForceLoginPrompt=False @@ -60,6 +60,9 @@ App.SupportsUniversalSleep=True App.WakeupMode=Any App.ApplicationReadyMode=Immediate App.TemplateMatchRegex={{(\$?[\w]+)}} +App.MonitorChildProcess=True +App.MonitorChildProcessWaitMs=2000 +App.MonitorChildProcessName=wine64 Console.FilterMatchRegex= Console.FilterMatchReplacement= Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$ diff --git a/v-risingconfig.json b/v-risingconfig.json index 7a4d6bf..23c01f0 100644 --- a/v-risingconfig.json +++ b/v-risingconfig.json @@ -1,264 +1,590 @@ [ - { - "DisplayName":"Server Name", - "Category":"Host Settings", - "Description":"Whatever you want to name your server as", - "Keywords":"Server, name", - "FieldName":"Name", - "InputType":"text", - "IsFlagArgument":false, - "ParamFieldName":"Name", - "IncludeInCommandLine":false, - "DefaultValue": "AMP V Rising Server", - "EnumValues":{} - }, - { - "DisplayName":"Description", - "Category":"Host Settings", - "Description":"Short description of server purpose, rules, message of the day", - "Keywords":"Server, description", - "FieldName":"Description", - "InputType":"text", - "IsFlagArgument":false, - "ParamFieldName":"Description", - "IncludeInCommandLine":false, - "DefaultValue": "AMP V Rising Server", - "EnumValues":{} - }, - { - "DisplayName":"Port", - "Category":"Host Settings", - "Description":"UDP port for game traffic", - "Keywords":"game,port", - "FieldName":"$ApplicationPort1", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"Port", - "IncludeInCommandLine":false, - "DefaultValue":"", - "EnumValues":{}, - "Hidden": true - }, - { - "DisplayName":"Query Port", - "Category":"Host Settings", - "Description":"UDP port for Steam server list features", - "Keywords":"query,port", - "FieldName":"$ApplicationPort2", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"QueryPort", - "IncludeInCommandLine":false, - "DefaultValue":"", - "EnumValues":{}, - "Hidden": true - }, - { - "DisplayName":"Max Connected Users", - "Category":"Host Settings", - "Description":"Max number of concurrent players on server", - "Keywords":"max, users", - "FieldName":"$MaxUsers", - "InputType":"number", - "DefaultValue": "40", - "IsFlagArgument":false, - "ParamFieldName":"MaxConnectedUsers", - "IncludeInCommandLine":false - }, - { - "DisplayName":"Max Connected Admins", - "Category":"Host Settings", - "Description":"Max number of admins to allow connect even when server is full", - "Keywords":"max, admins", - "FieldName":"MaxConnectedAdmins", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"MaxConnectedAdmins", - "DefaultValue":"4", - "IncludeInCommandLine":false - }, - { - "DisplayName":"Clan Size", - "Category":"Game Settings", - "Description":"Maximum amount of players per Clan", - "Keywords":"clan, Size", - "FieldName":"ClanSize", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"ClanSize", - "DefaultValue":"4", - "IncludeInCommandLine":false - }, - { - "DisplayName":"Server FPS", - "Category":"Host Settings", - "Description":"Maximum Server FPS when idle", - "Keywords":"server, fps", - "FieldName":"ServerFps", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"ServerFps", - "DefaultValue":"30", - "IncludeInCommandLine":false - }, - { - "DisplayName":"Save Name", - "Category":"Host Settings", - "Description":"Name of save file/directory", - "Keywords":"save, name", - "FieldName":"SaveName", - "InputType":"text", - "IsFlagArgument":false, - "ParamFieldName":"SaveName", - "DefaultValue":"world1", - "IncludeInCommandLine":false - }, - { - "DisplayName":"Password", - "Category":"Host Settings", - "Description":"Set a password or leave empty", - "Keywords":"server, password", - "FieldName":"Password", - "DefaultValue": "", - "InputType":"password", - "IsFlagArgument":false, - "ParamFieldName":"Password", - "IncludeInCommandLine":false - }, - { - "DisplayName":"VAC Secure", - "Category":"Host Settings", - "Description":"Choose if you want your server to use VAC or not.", - "Keywords":"server, secure", - "FieldName":"Secure", - "InputType":"checkbox", - "IsFlagArgument":false, - "ParamFieldName":"Secure", - "IncludeInCommandLine":false, - "DefaultValue":"true", - "EnumValues":{ - "True": "true", - "False": "false" - } - }, - { - "DisplayName":"List on Master Server", - "Category":"Host Settings", - "Description":"Set to true to list on server list, else set to false", - "Keywords":"master,server", - "FieldName":"ListOnMasterServer", - "InputType":"checkbox", - "IsFlagArgument":false, - "ParamFieldName":"ListOnMasterServer", - "IncludeInCommandLine":false, - "DefaultValue":"true", - "EnumValues":{ - "True": "true", - "False": "false" - } - }, - { - "DisplayName":"Auto Save Count", - "Category":"Host Settings", - "Description":"Number of autosaves to keep", - "Keywords":"autosave, interval", - "FieldName":"AutoSaveCount", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"AutoSaveCount", - "IncludeInCommandLine":false, - "DefaultValue":"25", - "EnumValues":{} - }, - { - "DisplayName":"Auto Save Interval", - "Category":"Host Settings", - "Description":"Interval in seconds between each auto save", - "Keywords":"AutoSave, interval", - "FieldName":"AutoSaveInterval", - "InputType":"number", - "IsFlagArgument":false, - "ParamFieldName":"AutoSaveInterval", - "IncludeInCommandLine":false, - "DefaultValue":"120", - "EnumValues":{} - }, - { - "DisplayName":"Game Mode Type", - "Category":"Game Settings", - "Description":"Set Game Mode Type as PVE or PVP.", - "Keywords":"Game, Mode, Type", - "FieldName":"GameModeType", - "InputType":"enum", - "IsFlagArgument":false, - "ParamFieldName":"GameModeType", - "IncludeInCommandLine":false, - "DefaultValue":"PvP", - "EnumValues":{ - "PvE": "PvE", - "PvP": "PvP" - } - }, - { - "DisplayName":"Game Settings Ruleset", - "Category":"Host Settings", - "Description":"Change Game Mode Ruleset. Must Match Game Mode Type", - "Keywords":"Game, Ruleset", - "FieldName":"GameSettingsPreset", - "InputType":"enum", - "IsFlagArgument":false, - "ParamFieldName":"GameSettingsPreset", - "IncludeInCommandLine":false, - "DefaultValue":"", - "EnumValues":{ - "DuoPvP": "Duo PvP", - "HardcorePvP": "Full Loot PvP Rules", - "Level30PvP": "PvP Dawn - Level 30", - "Level50PvP": "PvP Noon - Level 50", - "Level70PvP": "PvP Dusk - Level 50", - "SoloPvP": "Solo PvP", - "StandardPvP": "Standard PvP Rules", - "StandardPvP_Easy": "Standard PvP Easy", - "StandardPvP_Hard": "Standard PvP Hard", - "Level30PvE": "PvE Dawn - Level 30", - "Level50PvE": "PvE Noon - Level 50", - "Level70PvE": "PvE Dusk - Level 50", - "StandardPvE": "Standard PvE Rules", - "StandardPvE_Easy": "Standard PvE Easy", - "StandardPvE_Hard": "Standard PvE Hard", - "": "Custom" - } - }, - { - "DisplayName":"Admin Only Debug Events", - "Category":"Host Settings", - "Description":"Show debug events only to admins", - "Keywords":"admin, debug, events", - "FieldName":"AdminOnlyDebugEvents", - "InputType":"checkbox", - "IsFlagArgument":false, - "ParamFieldName":"AdminOnlyDebugEvents", - "IncludeInCommandLine":false, - "DefaultValue":"true", - "EnumValues":{ - "True": "true", - "False": "false" - } - }, - { - "DisplayName":"Disable Debug Events", - "Category":"Host Settings", - "Description":"Disable Debug Events from appearing at all", - "Keywords":"disable, debug, events", - "FieldName":"DisableDebugEvents", - "InputType":"checkbox", - "IsFlagArgument":false, - "ParamFieldName":"DisableDebugEvents", - "IncludeInCommandLine":false, - "DefaultValue": "false", - "EnumValues":{ - "True": "true", - "False": "false" - } + { + "DisplayName": "Server Name", + "Category": "Host Settings", + "Description": "Whatever you want to name your server as", + "Keywords": "Server, name", + "FieldName": "Name", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Name", + "IncludeInCommandLine": false, + "DefaultValue": "AMP V Rising Server", + "EnumValues": {} + }, + { + "DisplayName": "Description", + "Category": "Host Settings", + "Description": "Short description of server purpose, rules, message of the day", + "Keywords": "Server, description", + "FieldName": "Description", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Description", + "IncludeInCommandLine": false, + "DefaultValue": "AMP V Rising Server", + "EnumValues": {} + }, + { + "DisplayName": "Port", + "Category": "Host Settings", + "Description": "UDP port for game traffic", + "Keywords": "game,port", + "FieldName": "$ApplicationPort1", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Port", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "Query Port", + "Category": "Host Settings", + "Description": "UDP port for Steam server list features", + "Keywords": "query,port", + "FieldName": "$ApplicationPort2", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "QueryPort", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "RCON Port", + "Category": "Host Settings", + "Description": "TCP port for RCON", + "Keywords": "rcon,port", + "FieldName": "$RemoteAdminPort", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Rcon.Port", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "RCON Enabled", + "Category": "Host Settings", + "Description": "RCON Enabled to allow Console input", + "Keywords": "rcon,enabled", + "FieldName": "RconEnabled", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Rcon.Enabled", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "RCON Password", + "Category": "Host Settings", + "Description": "RCON Password to allow Console input", + "Keywords": "rcon,enabled", + "FieldName": "$RemoteAdminPassword", + "InputType": "password", + "IsFlagArgument": false, + "ParamFieldName": "Rcon.Password", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "Max Connected Users", + "Category": "Host Settings", + "Description": "Max number of concurrent players on server", + "Keywords": "max, users", + "FieldName": "$MaxUsers", + "InputType": "number", + "DefaultValue": "40", + "IsFlagArgument": false, + "ParamFieldName": "MaxConnectedUsers", + "IncludeInCommandLine": false + }, + { + "DisplayName": "Max Connected Admins", + "Category": "Host Settings", + "Description": "Max number of admins to allow connect even when server is full", + "Keywords": "max, admins", + "FieldName": "MaxConnectedAdmins", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "MaxConnectedAdmins", + "DefaultValue": "4", + "IncludeInCommandLine": false + }, + { + "DisplayName": "Clan Size", + "Category": "Game Settings", + "Description": "Maximum amount of players per Clan", + "Keywords": "clan, Size", + "FieldName": "ClanSize", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "ClanSize", + "DefaultValue": "4", + "IncludeInCommandLine": false + }, + { + "DisplayName": "Admin List", + "Description": "A list of Steam64 IDs for players that are in-game admins. [Find your Steam64 ID](https://steamid.io/lookup/)", + "FieldName": "AdminList", + "Category": "Game Settings", + "InputType": "list", + "Special": "listfile:./v-rising/1829350/VRisingServer_Data/StreamingAssets/Settings/adminlist.txt" + }, + { + "DisplayName": "Ban List", + "Description": "A list of Steam64 IDs for players that are banned [Find a Steam64 ID](https://steamid.io/lookup/)", + "FieldName": "BanList", + "Category": "Game Settings", + "InputType": "list", + "Special": "listfile:./v-rising/1829350/VRisingServer_Data/StreamingAssets/Settings/banlist.txt" + }, + { + "DisplayName": "Server FPS", + "Category": "Host Settings", + "Description": "Maximum Server FPS when idle", + "Keywords": "server, fps", + "FieldName": "ServerFps", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "ServerFps", + "DefaultValue": "30", + "IncludeInCommandLine": false + }, + { + "DisplayName": "Save Name", + "Category": "Host Settings", + "Description": "Name of save file/directory", + "Keywords": "save, name", + "FieldName": "SaveName", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "SaveName", + "DefaultValue": "world1", + "IncludeInCommandLine": false + }, + { + "DisplayName": "Password", + "Category": "Host Settings", + "Description": "Set a password or leave empty", + "Keywords": "server, password", + "FieldName": "Password", + "DefaultValue": "", + "InputType": "password", + "IsFlagArgument": false, + "ParamFieldName": "Password", + "IncludeInCommandLine": false + }, + { + "DisplayName": "VAC Secure", + "Category": "Host Settings", + "Description": "Choose if you want your server to use VAC or not.", + "Keywords": "server, secure", + "FieldName": "Secure", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "Secure", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "True": "true", + "False": "false" } -] + }, + { + "DisplayName": "List on Master Server", + "Category": "Host Settings", + "Description": "Set to true to list on server list, else set to false", + "Keywords": "master,server", + "FieldName": "ListOnMasterServer", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "ListOnMasterServer", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "True": "true", + "False": "false" + } + }, + { + "DisplayName": "Auto Save Count", + "Category": "Host Settings", + "Description": "Number of autosaves to keep", + "Keywords": "autosave, interval", + "FieldName": "AutoSaveCount", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "AutoSaveCount", + "IncludeInCommandLine": false, + "DefaultValue": "25", + "EnumValues": {} + }, + { + "DisplayName": "Auto Save Interval", + "Category": "Host Settings", + "Description": "Interval in seconds between each auto save", + "Keywords": "AutoSave, interval", + "FieldName": "AutoSaveInterval", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "AutoSaveInterval", + "IncludeInCommandLine": false, + "DefaultValue": "120", + "EnumValues": {} + }, + { + "DisplayName": "Game Mode Type", + "Category": "Game Settings", + "Description": "Set Game Mode Type as PVE or PVP.", + "Keywords": "Game, Mode, Type", + "FieldName": "GameModeType", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "GameModeType", + "IncludeInCommandLine": false, + "DefaultValue": "PvP", + "EnumValues": { + "PvE": "PvE", + "PvP": "PvP" + } + }, + { + "DisplayName": "Game Settings Ruleset", + "Category": "Host Settings", + "Description": "Change Game Mode Ruleset. Must Match Game Mode Type", + "Keywords": "Game, Ruleset", + "FieldName": "GameSettingsPreset", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "GameSettingsPreset", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": { + "DuoPvP": "Duo PvP", + "HardcorePvP": "Full Loot PvP Rules", + "Level30PvP": "PvP Dawn - Level 30", + "Level50PvP": "PvP Noon - Level 50", + "Level70PvP": "PvP Dusk - Level 50", + "SoloPvP": "Solo PvP", + "StandardPvP": "Standard PvP Rules", + "StandardPvP_Easy": "Standard PvP Easy", + "StandardPvP_Hard": "Standard PvP Hard", + "Level30PvE": "PvE Dawn - Level 30", + "Level50PvE": "PvE Noon - Level 50", + "Level70PvE": "PvE Dusk - Level 50", + "StandardPvE": "Standard PvE Rules", + "StandardPvE_Easy": "Standard PvE Easy", + "StandardPvE_Hard": "Standard PvE Hard", + "": "Custom" + } + }, + { + "DisplayName": "Admin Only Debug Events", + "Category": "Host Settings", + "Description": "Show debug events only to admins", + "Keywords": "admin, debug, events", + "FieldName": "AdminOnlyDebugEvents", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "AdminOnlyDebugEvents", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "True": "true", + "False": "false" + } + }, + { + "DisplayName": "Disable Debug Events", + "Category": "Host Settings", + "Description": "Disable Debug Events from appearing at all", + "Keywords": "disable, debug, events", + "FieldName": "DisableDebugEvents", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "DisableDebugEvents", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "True": "true", + "False": "false" + } + }, + { + "DisplayName": "Server Name", + "Category": "Host Settings", + "Description": "Whatever you want to name your server as", + "Keywords": "Server, name", + "FieldName": "Name", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Name", + "IncludeInCommandLine": false, + "DefaultValue": "AMP V Rising Server", + "EnumValues": {} + }, + { + "DisplayName": "Description", + "Category": "Host Settings", + "Description": "Short description of server purpose, rules, message of the day", + "Keywords": "Server, description", + "FieldName": "Description", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Description", + "IncludeInCommandLine": false, + "DefaultValue": "AMP V Rising Server", + "Placeholder": "My V Rising Server" + }, + { + "DisplayName": "Port", + "Category": "Host Settings", + "Description": "UDP port for game traffic", + "Keywords": "game,port", + "FieldName": "$ApplicationPort1", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Port", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "Query Port", + "Category": "Host Settings", + "Description": "UDP port for Steam server list features", + "Keywords": "query,port", + "FieldName": "$ApplicationPort2", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "QueryPort", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {}, + "Hidden": true + }, + { + "DisplayName": "Max Connected Users", + "Category": "Host Settings", + "Description": "Max number of concurrent players on server", + "Keywords": "max, users", + "FieldName": "$MaxUsers", + "InputType": "number", + "DefaultValue": "40", + "IsFlagArgument": false, + "ParamFieldName": "MaxConnectedUsers", + "IncludeInCommandLine": false, + "Suffix": "players" + }, + { + "DisplayName": "Max Connected Admins", + "Category": "Host Settings", + "Description": "Max number of admins to allow connect even when server is full", + "Keywords": "max, admins", + "FieldName": "MaxConnectedAdmins", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "MaxConnectedAdmins", + "DefaultValue": "4", + "IncludeInCommandLine": false, + "Suffix": "players" + }, + { + "DisplayName": "Clan Size", + "Category": "Game Settings", + "Description": "Maximum amount of players per Clan", + "Keywords": "clan, Size", + "FieldName": "ClanSize", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "ClanSize", + "DefaultValue": "4", + "IncludeInCommandLine": false, + "Suffix": "players" + }, + { + "DisplayName": "Server FPS", + "Category": "Host Settings", + "Description": "Maximum Server FPS when idle", + "Keywords": "server, fps", + "FieldName": "ServerFps", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "ServerFps", + "DefaultValue": "30", + "IncludeInCommandLine": false, + "Suffix": "FPS" + }, + { + "DisplayName": "Save Name", + "Category": "Host Settings", + "Description": "Name of save file/directory", + "Keywords": "save, name", + "FieldName": "SaveName", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "SaveName", + "DefaultValue": "world1", + "IncludeInCommandLine": false + }, + { + "DisplayName": "Password", + "Category": "Host Settings", + "Description": "Set a password or leave empty", + "Keywords": "server, password", + "FieldName": "Password", + "DefaultValue": "", + "InputType": "password", + "IsFlagArgument": false, + "ParamFieldName": "Password", + "IncludeInCommandLine": false + }, + { + "DisplayName": "VAC Secure", + "Category": "Host Settings", + "Description": "Choose if you want your server to use VAC or not.", + "Keywords": "server, secure", + "FieldName": "Secure", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "Secure", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "True": "true", + "False": "false" + } + }, + { + "DisplayName": "List on Master Server", + "Category": "Host Settings", + "Description": "Set to true to list on server list, else set to false", + "Keywords": "master,server", + "FieldName": "ListOnMasterServer", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "ListOnMasterServer", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "True": "true", + "False": "false" + } + }, + { + "DisplayName": "Auto Save Count", + "Category": "Host Settings", + "Description": "Number of autosaves to keep", + "Keywords": "autosave, interval", + "FieldName": "AutoSaveCount", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "AutoSaveCount", + "IncludeInCommandLine": false, + "DefaultValue": "25", + "EnumValues": {}, + "Suffix": "saves" + }, + { + "DisplayName": "Auto Save Interval", + "Category": "Host Settings", + "Description": "Interval in seconds between each auto save", + "Keywords": "AutoSave, interval", + "FieldName": "AutoSaveInterval", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "AutoSaveInterval", + "IncludeInCommandLine": false, + "DefaultValue": "120", + "EnumValues": {}, + "Suffix": "seconds" + }, + { + "DisplayName": "Game Mode Type", + "Category": "Game Settings", + "Description": "Set Game Mode Type as PVE or PVP.", + "Keywords": "Game, Mode, Type", + "FieldName": "GameModeType", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "GameModeType", + "IncludeInCommandLine": false, + "DefaultValue": "PvP", + "EnumValues": { + "PvE": "PvE", + "PvP": "PvP" + } + }, + { + "DisplayName": "Game Settings Ruleset", + "Category": "Host Settings", + "Description": "Change Game Mode Ruleset. Must Match Game Mode Type", + "Keywords": "Game, Ruleset", + "FieldName": "GameSettingsPreset", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "GameSettingsPreset", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": { + "DuoPvP": "Duo PvP", + "HardcorePvP": "Full Loot PvP Rules", + "Level30PvP": "PvP Dawn - Level 30", + "Level50PvP": "PvP Noon - Level 50", + "Level70PvP": "PvP Dusk - Level 50", + "SoloPvP": "Solo PvP", + "StandardPvP": "Standard PvP Rules", + "StandardPvP_Easy": "Standard PvP Easy", + "StandardPvP_Hard": "Standard PvP Hard", + "Level30PvE": "PvE Dawn - Level 30", + "Level50PvE": "PvE Noon - Level 50", + "Level70PvE": "PvE Dusk - Level 50", + "StandardPvE": "Standard PvE Rules", + "StandardPvE_Easy": "Standard PvE Easy", + "StandardPvE_Hard": "Standard PvE Hard", + "": "Custom" + } + }, + { + "DisplayName": "Admin Only Debug Events", + "Category": "Host Settings", + "Description": "Show debug events only to admins", + "Keywords": "admin, debug, events", + "FieldName": "AdminOnlyDebugEvents", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "AdminOnlyDebugEvents", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "True": "true", + "False": "false" + } + }, + { + "DisplayName": "Disable Debug Events", + "Category": "Host Settings", + "Description": "Disable Debug Events from appearing at all", + "Keywords": "disable, debug, events", + "FieldName": "DisableDebugEvents", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "DisableDebugEvents", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "True": "true", + "False": "false" + } + } +] \ No newline at end of file diff --git a/v-risingmetaconfig.json b/v-risingmetaconfig.json index a393e2a..060cebd 100644 --- a/v-risingmetaconfig.json +++ b/v-risingmetaconfig.json @@ -1,11 +1,11 @@ [ { - "ConfigFile": "VRisingServer_Data/StreamingAssets/Settings/ServerHostSettings.json", + "ConfigFile": "save-data/Settings/ServerHostSettings.json", "AutoMap": true, "ConfigType": "json" }, { - "ConfigFile": "VRisingServer_Data/StreamingAssets/Settings/ServerGameSettings.json", + "ConfigFile": "save-data/Settings/ServerGameSettings.json", "AutoMap": true, "ConfigType": "json" } diff --git a/v-risingports.json b/v-risingports.json new file mode 100644 index 0000000..8460bab --- /dev/null +++ b/v-risingports.json @@ -0,0 +1,32 @@ +[ + { + "Protocol": "UDP", + "Port": 9876, + "Offset": 0, + "Range": 1, + "Ref": "ApplicationPort1", + "Name": "Application Port 1", + "Description": "Server Game Port", + "ChildPorts": null + }, + { + "Protocol": "UDP", + "Port": 9877, + "Offset": 0, + "Range": 1, + "Ref": "ApplicationPort2", + "Name": "Application Port 2", + "Description": "Steam Query Port", + "ChildPorts": null + }, + { + "Protocol": "TCP", + "Port": 25575, + "Offset": 0, + "Range": 1, + "Ref": "RemoteAdminPort", + "Name": "Remote Admin Port", + "Description": "RCON Connection Port", + "ChildPorts": null + } + ] \ No newline at end of file diff --git a/v-risingupdates.json b/v-risingupdates.json new file mode 100644 index 0000000..76e36ed --- /dev/null +++ b/v-risingupdates.json @@ -0,0 +1,62 @@ +[ + { + "UpdateStageName": "SteamCMD Download", + "UpdateSourcePlatform": "All", + "UpdateSource": "SteamCMD", + "UpdateSourceData": "1829350", + "UpdateSourceArgs": null, + "UpdateSourceVersion": null, + "UpdateSourceTarget": null, + "UnzipUpdateSource": false, + "OverwriteExistingFiles": false, + "ForceDownloadPlatform": "Windows", + "UpdateSourceConditionSetting": null, + "UpdateSourceConditionValue": null, + "DeleteAfterExtract": false + }, + { + "UpdateStageName": "Data Directory Creation", + "UpdateSourcePlatform": "All", + "UpdateSource": "CreateDirectory", + "UpdateSourceData": null, + "UpdateSourceArgs": "./v-rising/1829350/save-data/Settings", + "UpdateSourceVersion": null, + "UpdateSourceTarget": null, + "UnzipUpdateSource": false, + "OverwriteExistingFiles": false, + "ForceDownloadPlatform": 0, + "UpdateSourceConditionSetting": null, + "UpdateSourceConditionValue": null, + "DeleteAfterExtract": false + }, + { + "UpdateStageName": "Game Config File Copy", + "UpdateSourcePlatform": "All", + "UpdateSource": "CopyFilePath", + "UpdateSourceData": "./v-rising/1829350/save-data/Settings/ServerHostSettings.json", + "UpdateSourceArgs": "./v-rising/1829350/VRisingServer_Data/StreamingAssets/Settings/ServerHostSettings.json", + "UpdateSourceVersion": null, + "UpdateSourceTarget": null, + "UnzipUpdateSource": false, + "OverwriteExistingFiles": false, + "ForceDownloadPlatform": 0, + "UpdateSourceConditionSetting": null, + "UpdateSourceConditionValue": null, + "DeleteAfterExtract": false + }, + { + "UpdateStageName": "Game Config File Copy", + "UpdateSourcePlatform": "All", + "UpdateSource": "CopyFilePath", + "UpdateSourceData": "./v-rising/1829350/save-data/Settings/ServerGameSettings.json", + "UpdateSourceArgs": "./v-rising/1829350/VRisingServer_Data/StreamingAssets/Settings/ServerGameSettings.json", + "UpdateSourceVersion": null, + "UpdateSourceTarget": null, + "UnzipUpdateSource": false, + "OverwriteExistingFiles": false, + "ForceDownloadPlatform": 0, + "UpdateSourceConditionSetting": null, + "UpdateSourceConditionValue": null, + "DeleteAfterExtract": false + } +] \ No newline at end of file From 9d27cd7c6ff6fa72df36fc859fe8cad9009d742d Mon Sep 17 00:00:00 2001 From: James Manker Date: Thu, 2 Jun 2022 23:24:55 -0500 Subject: [PATCH 2/4] Tentative Change Waiting for the new build to test. This may be the right settings. --- v-rising.kvp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/v-rising.kvp b/v-rising.kvp index 60bb6ff..7655b1f 100644 --- a/v-rising.kvp +++ b/v-rising.kvp @@ -63,6 +63,8 @@ App.TemplateMatchRegex={{(\$?[\w]+)}} App.MonitorChildProcess=True App.MonitorChildProcessWaitMs=2000 App.MonitorChildProcessName=wine64 +App.RCONHeartBeatMInutes=4 +App.RCONHeartbeatCommand="ping" Console.FilterMatchRegex= Console.FilterMatchReplacement= Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$ From 09110eabba3b4b9b5b1c43df7535f5d8db2b341c Mon Sep 17 00:00:00 2001 From: James Manker Date: Sun, 5 Jun 2022 17:00:26 -0500 Subject: [PATCH 3/4] Add LAN Mode Added the LAN Mode startup flag for servers without internet. --- v-rising.kvp | 2 +- v-risingconfig.json | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/v-rising.kvp b/v-rising.kvp index 7655b1f..97fae4d 100644 --- a/v-rising.kvp +++ b/v-rising.kvp @@ -23,7 +23,7 @@ App.ExecutableLinux=/usr/bin/xvfb-run App.WorkingDir=1829350 App.LinuxCommandLineArgs=-a wine64 ./VRisingServer.exe App.WindowsCommandLineArgs= -App.CommandLineArgs={{$PlatformArgs}} -persistentDataPath ./save-data +App.CommandLineArgs={{$PlatformArgs}} -persistentDataPath ./save-data {{LanMode}} App.UseLinuxIOREDIR=False App.AppSettings={} App.EnvironmentVariables={"LD_LIBRARY_PATH":"./linux64:%LD_LIBRARY_PATH%","SteamAppId":"1604030","STEAM_COMPAT_DATA_PATH":"{{$FullRootDir}}1493710","STEAM_COMPAT_CLIENT_INSTALL_PATH":"{{$FullRootDir}}1493710"} diff --git a/v-risingconfig.json b/v-risingconfig.json index 23c01f0..d3b1af6 100644 --- a/v-risingconfig.json +++ b/v-risingconfig.json @@ -95,6 +95,22 @@ "EnumValues": {}, "Hidden": true }, + { + "DisplayName": "LAN Mode", + "Category": "Host Settings", + "Description": "Use this setting for a server without internet connectivity. The LAN Mode check box must also be checked in-game when connecting.", + "Keywords": "lan,mode", + "FieldName": "LanMode", + "InputType": "checkbox", + "DefaultValue": "", + "IsFlagArgument": false, + "ParamFieldName": "LanMode", + "IncludeInCommandLine": false, + "EnumValues": { + "False": "", + "True": "-lan" + } + }, { "DisplayName": "Max Connected Users", "Category": "Host Settings", From cbf53f9633e939ce0e4040511ec13665a61f3753 Mon Sep 17 00:00:00 2001 From: James Manker Date: Mon, 6 Jun 2022 11:42:22 -0500 Subject: [PATCH 4/4] Fix RCON Keepalove --- v-rising.kvp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/v-rising.kvp b/v-rising.kvp index 97fae4d..ecc0d99 100644 --- a/v-rising.kvp +++ b/v-rising.kvp @@ -63,8 +63,8 @@ App.TemplateMatchRegex={{(\$?[\w]+)}} App.MonitorChildProcess=True App.MonitorChildProcessWaitMs=2000 App.MonitorChildProcessName=wine64 -App.RCONHeartBeatMInutes=4 -App.RCONHeartbeatCommand="ping" +App.RCONHeartbeatMinutes=4 +App.RCONHeartbeatCommand="announce" Console.FilterMatchRegex= Console.FilterMatchReplacement= Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$