diff --git a/renown.kvp b/renown.kvp index 9ec34646f..eb4b30410 100644 --- a/renown.kvp +++ b/renown.kvp @@ -11,7 +11,7 @@ Meta.ConfigManifest=renownconfig.json Meta.MetaConfigManifest=renownmetaconfig.json Meta.ConfigRoot=renown.kvp Meta.MinAMPVersion=2.6.2.8 -Meta.SpecificDockerImage=cubecoders/ampbase:debian +Meta.SpecificDockerImage= Meta.DockerRequired=False Meta.DockerBaseReadOnly=False Meta.ContainerPolicy=Supported @@ -24,7 +24,7 @@ Meta.NoCommercialUsage=False Meta.ConfigVersion=2 Meta.ReleaseNotes= Meta.BreakingReleaseNotes= -Meta.AppConfigId=3a94e6c8-e0f9-4008-afc8-903c7e372bad +Meta.AppConfigId=3a94e6c8-e0f9-4008-afc8-903c7e37da2b Meta.ImportableExtensions=[".ini"] Meta.AppIsMultiIPAware=False App.DisplayName=Renown diff --git a/renownconfig.json b/renownconfig.json index d3992a084..3ea4c6a08 100644 --- a/renownconfig.json +++ b/renownconfig.json @@ -1,325 +1,1149 @@ [ - { - "DisplayName": "Enable RCON", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "", - "Keywords": "", - "FieldName": "EnableRCON", - "InputType": "text", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.EnableRCON", - "Hidden": true, - "DefaultValue": "True", - "ExcludeFromImport": true, - "EnumValues": {} - }, - { - "DisplayName": "RCON Password", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "", - "Keywords": "", - "FieldName": "$RemoteAdminPassword", - "InputType": "text", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCONPassword", - "Hidden": true, - "ExcludeFromImport": true, - "EnumValues": {} - }, - { - "DisplayName": "RCON Port", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "", - "Keywords": "", - "FieldName": "$RCONPort", - "InputType": "number", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCONPort", - "Hidden": true, - "ExcludeFromImport": true, - "EnumValues": {} - }, - { - "DisplayName": "Server Name", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the name of the server that is displayed in the server browser", - "Keywords": "server,name,ServerName", - "FieldName": "ServerName", - "InputType": "text", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.ServerName", - "DefaultValue": "AMP Powered Renown Server", - "Placeholder": "AMP Powered Renown Server", - "EnumValues": {} - }, - { - "DisplayName": "Server Region", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the region tag for the server as shown in the server browser. The official tags appear in the dropdown. If 'Custom' is selected, Custom Server Region must also be set", - "Keywords": "region", - "FieldName": "Region", - "InputType": "enum", - "ParamFieldName": "Region", - "DefaultValue": "US Central", - "EnumValues": { - "US East": "US East", - "US West": "US West", - "US Central": "US Central", - "Europe": "Europe", - "South America": "South America", - "Asia": "Asia", - "Oceania": "Oceania", - "{{CustomRegion}}": "--Custom--" - } - }, - { - "DisplayName": "Custom Server Region", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets a custom region tag for the server, if 'Custom' is selected under Server Region", - "Keywords": "custom,region", - "FieldName": "CustomRegion", - "InputType": "text", - "ParamFieldName": "CustomRegion", - "DefaultValue": "", - "Placeholder": "Modded", - "EnumValues": {} - }, - { - "DisplayName": "Make Server Private", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "If set, the server will not be listed in the server browser and can only be joined via direct connect", - "Keywords": "private,session,PrivateSession", - "FieldName": "PrivateSession", - "InputType": "checkbox", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.PrivateSession", - "DefaultValue": "False", - "EnumValues": { - "False": "False", - "True": "True" - } - }, - { - "DisplayName": "Server MOTD", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the message of the day (MOTD) shown to players when they join", - "Keywords": "motd,message,day", - "FieldName": "MOTD", - "InputType": "text", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MOTD", - "DefaultValue": "Welome to my server!", - "EnumValues": {} - }, - { - "DisplayName": "Server Password", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the password required to join the server. Empty = no password", - "Keywords": "server,password,ServerPassword", - "FieldName": "ServerPassword", - "InputType": "password", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.ServerPassword", - "DefaultValue": "", - "EnumValues": {} - }, - { - "DisplayName": "Admin Password", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the password for server admins in-game", - "Keywords": "admin,password,AdminPassword", - "FieldName": "AdminPassword", - "InputType": "password", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.AdminPassword", - "DefaultValue": "", - "EnumValues": {} - }, - { - "DisplayName": "Player Limit", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the maximum number of players allowed on the server at one time", - "Keywords": "max,players,MaxPlayers", - "FieldName": "$MaxUsers", - "InputType": "number", - "MinValue": "1", - "MaxValue": "100", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MaxPlayers", - "DefaultValue": "40", - "Placeholder": "40", - "Suffix": "players", - "EnumValues": {} - }, - { - "DisplayName": "Player Limit", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "", - "Keywords": "", - "FieldName": "$MaxUsers", - "InputType": "number", - "ParamFieldName": "/Script/Engine.GameSession.MaxPlayers", - "Hidden": true, - "EnumValues": {} - }, - { - "DisplayName": "Map Rotation", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Map rotations can be set in Game.ini. Format: MapRotation=RSurv-AlgaraIsle_p. One map entry per line", - "Keywords": "map,rotation,MapRotation", - "FieldName": "MapRotation", - "InputType": "hidden", - "ParamFieldName": "MapRotation", - "EnumValues": {} - }, - { - "DisplayName": "Game Save Name", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the name of the game save", - "Keywords": "game,save,name,GameSaveName", - "FieldName": "GameSaveName", - "InputType": "text", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.GameSaveName", - "DefaultValue": "Save 1", - "Placeholder": "Save 1", - "Required": true, - "EnumValues": {} - }, - { - "DisplayName": "Maximum Ping", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the maximum ping allowed for players to join the server. 0 = no limit", - "Keywords": "max,ping,MaxPing", - "FieldName": "MaxPing", - "InputType": "number", - "MinValue": "0", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MaxPing", - "DefaultValue": "180", - "Placeholder": "180", - "EnumValues": {} - }, - { - "DisplayName": "RCON Chat Messages Limit", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the limit for RCON chat messages", - "Keywords": "rcon,chat,messages,limit", - "FieldName": "RCONChatMessagesLimit", - "InputType": "number", - "MinValue": "0", - "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCONChatMessagesLimit", - "DefaultValue": "30", - "Placeholder": "30", - "EnumValues": {} - }, - { - "DisplayName": "Network Maximum Tick Rate", - "Category": "Renown:stadia_controller", - "Subcategory": "Server:dns:1", - "Description": "Sets the maximum tick rate for the server's network driver", - "Keywords": "net,server,tick,rate,NetServerMaxTickRate", - "FieldName": "NetServerMaxTickRate", - "InputType": "number", - "MinValue": "1", - "ParamFieldName": "ini:Engine:[Script/SteamSockets.SteamSocketsNetDriver]:NetServerMaxTickRate", - "IncludeInCommandLine": true, - "SkipIfEmpty": true, - "DefaultValue": "30", - "Placeholder": "30", - "EnumValues": {} - }, - { - "DisplayName": "Resource Gain Multiplier", - "Category": "Renown:stadia_controller", - "Subcategory": "Gameplay:joystick:2", - "Description": "Sets the multiplier for resource gain, which determines how much players gather from resources", - "Keywords": "resource,gain,multiplier,ResourceGainMultiplier", - "FieldName": "ResourceGainMultiplier", - "InputType": "number", - "MinValue": "0", - "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.ResourceGainMultiplier", - "DefaultValue": "1", - "Placeholder": "1", - "EnumValues": {} - }, - { - "DisplayName": "Gold Coin Gain Multiplier", - "Category": "Renown:stadia_controller", - "Subcategory": "Gameplay:joystick:2", - "Description": "Sets the multiplier for gold coin gain, which determines how much gold players earn", - "Keywords": "gold,coin,gain,multiplier,GoldCoinGainMultiplier", - "FieldName": "GoldCoinGainMultiplier", - "InputType": "number", - "MinValue": "0", - "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GoldCoinGainMultiplier", - "DefaultValue": "1", - "Placeholder": "1", - "EnumValues": {} - }, - { - "DisplayName": "Global Crafting Multiplier", - "Category": "Renown:stadia_controller", - "Subcategory": "Gameplay:joystick:2", - "Description": "Sets the multiplier for crafting speed globally", - "Keywords": "crafting,multiplier,global,CraftingSpeedMultiplier", - "FieldName": "GlobalCraftingMultiplier", - "InputType": "number", - "MinValue": "0", - "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalCraftingMultiplier", - "DefaultValue": "1", - "Placeholder": "1", - "EnumValues": {} - }, - { - "DisplayName": "Global Smelting Multiplier", - "Category": "Renown:stadia_controller", - "Subcategory": "Gameplay:joystick:2", - "Description": "Sets the multiplier for smelting speed globally", - "Keywords": "smelting,multiplier,global,GlobalSmeltingMultiplier", - "FieldName": "GlobalSmeltingMultiplier", - "InputType": "number", - "MinValue": "0", - "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalSmeltingMultiplier", - "DefaultValue": "1", - "Placeholder": "1", - "EnumValues": {} - }, - { - "DisplayName": "Enable First Person Only", - "Category": "Renown:stadia_controller", - "Subcategory": "Gameplay:joystick:2", - "Description": "If set, the server will enforce first-person-only gameplay", - "Keywords": "first,person,only,Server.FirstPersonOnly", - "FieldName": "Server.FirstPersonOnly", - "InputType": "checkbox", - "ParamFieldName": "ini:Engine:[SystemSettings]:Server.FirstPersonOnly", - "IncludeInCommandLine": true, - "SkipIfEmpty": true, - "DefaultValue": "0", - "EnumValues": { - "False": "0", - "True": "1" - } - }, - { - "DisplayName": "Server Release Version", - "Category": "Updates", - "Subcategory": "Steam Downloads:download", - "Description": "Sets the server release version to install. Update the server after changing this setting", - "Keywords": "server,version,public,beta", - "FieldName": "ServerVersion", - "InputType": "enum", - "ParamFieldName": "ServerVersion", - "DefaultValue": "public", - "EnumValues": { - "public": "Public (default)", - "beta": "Beta" - } + { + "DisplayName": "Enable RCON", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "", + "Keywords": "", + "FieldName": "EnableRCON", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.EnableRCON", + "Hidden": true, + "DefaultValue": "True", + "ExcludeFromImport": true, + "EnumValues": {} + }, + { + "DisplayName": "RCON Password", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "", + "Keywords": "", + "FieldName": "$RemoteAdminPassword", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCONPassword", + "Hidden": true, + "ExcludeFromImport": true, + "EnumValues": {}, + "DefaultValue": "" + }, + { + "DisplayName": "RCON Port", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "", + "Keywords": "", + "FieldName": "$RCONPort", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCONPort", + "Hidden": true, + "ExcludeFromImport": true, + "EnumValues": {}, + "DefaultValue": "25575" + }, + { + "DisplayName": "Server Name", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the name of the server that is displayed in the server browser", + "Keywords": "server,name,ServerName", + "FieldName": "ServerName", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.ServerName", + "DefaultValue": "", + "Placeholder": "AMP Powered Renown Server", + "EnumValues": {} + }, + { + "DisplayName": "Server Region", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the region tag for the server as shown in the server browser. The official tags appear in the dropdown. If 'Custom' is selected, Custom Server Region must also be set", + "Keywords": "region", + "FieldName": "Region", + "InputType": "enum", + "ParamFieldName": "Region", + "DefaultValue": "", + "EnumValues": { + "": "--None--", + "US East": "US East", + "US West": "US West", + "US Central": "US Central", + "Europe": "Europe", + "South America": "South America", + "Asia": "Asia", + "Oceania": "Oceania", + "{{CustomRegion}}": "--Custom--" } -] \ No newline at end of file + }, + { + "DisplayName": "Custom Server Region", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets a custom region tag for the server, if 'Custom' is selected under Server Region", + "Keywords": "custom,region", + "FieldName": "CustomRegion", + "InputType": "text", + "ParamFieldName": "CustomRegion", + "DefaultValue": "", + "Placeholder": "Modded", + "EnumValues": {} + }, + { + "DisplayName": "Make Server Private", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If set, the server will not be listed in the server browser and can only be joined via direct connect", + "Keywords": "private,session,PrivateSession", + "FieldName": "PrivateSession", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.PrivateSession", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Server MOTD", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the message of the day (MOTD) shown to players when they join", + "Keywords": "motd,message,day", + "FieldName": "MOTD", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MOTD", + "DefaultValue": "NSLOCTEXT(\"[2CF2D1E04F419B14490A65BF06750767]\", \"F67B0BE94A3C4A2665B05284056D0757\", \"Welcome to Renown, in order to play on this server you must accept the following Rules.\\r\\n\\r\\n1. **Respect and Courtesy**: Treat fellow players and staff with respect. Harassment, hate speech, or any form of discrimination will not be tolerated.\\r\\n\\r\\n2. **Cheating and Exploits**: Any use of cheats, hacks, exploits, or any unfair advantage is strictly prohibited. Players found violating this rule will face severe consequences, including permanent bans.\\r\\n\\r\\n3. **Language and Content**: Keep chat and in-game communication appropriate for all ages. Avoid using offensive language, explicit content, or engaging in discussions that may make others uncomfortable.\\r\\n\\r\\n4. **No Spamming or Advertising**: Do not spam chat with repetitive messages or advertise external services or products without permission from server staff.\\r\\n\\r\\n5. **Bug Reporting**: If you encounter any bugs or issues, report them to server staff or file a bug report promptly. Exploiting or abusing bugs for personal gain is not allowed.\\r\\n\\r\\n6. **Impersonation**: Do not impersonate server staff or other players. This includes using similar names or pretending to have authority you do not possess.\\r\\n\\r\\n7. **Final Authority**: Server staff have the final say in all matters concerning rule enforcement and disciplinary actions. Respect their decisions and cooperate with them at all times.\\r\\n\\r\\nRemember, these rules are in place to ensure a fair, enjoyable, and respectful gaming environment for all players. Violating these rules may result in warnings, temporary suspensions, or permanent bans, depending on the severity of the offense. Enjoy your time on the server and have fun gaming!\")", + "EnumValues": {} + }, + { + "DisplayName": "Server Password", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the password required to join the server. Empty = no password", + "Keywords": "server,password,ServerPassword", + "FieldName": "ServerPassword", + "InputType": "password", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.ServerPassword", + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Admin Password", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the password for server admins in-game", + "Keywords": "admin,password,AdminPassword", + "FieldName": "AdminPassword", + "InputType": "password", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.AdminPassword", + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Player Limit", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the maximum number of players allowed on the server at one time", + "Keywords": "max,players,MaxPlayers", + "FieldName": "$MaxUsers", + "InputType": "number", + "MinValue": "1", + "MaxValue": "1000", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MaxPlayers", + "DefaultValue": "40", + "Placeholder": "40", + "Suffix": "players", + "EnumValues": {} + }, + { + "DisplayName": "Player Limit", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "", + "Keywords": "", + "FieldName": "$MaxUsers", + "InputType": "number", + "ParamFieldName": "/Script/Engine.GameSession.MaxPlayers", + "Hidden": true, + "EnumValues": {} + }, + { + "DisplayName": "Map Rotation (Game.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Map rotations can be set in Game.ini. Format: MapRotation=RSurv-AlgaraIsle_p. One map entry per line", + "Keywords": "map,rotation,MapRotation", + "FieldName": "MapRotation", + "InputType": "hidden", + "ParamFieldName": "MapRotation", + "EnumValues": {}, + "DefaultValue": "RSurv-AlgaraIsle_p" + }, + { + "DisplayName": "Game Save Name", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the name of the game save", + "Keywords": "game,save,name,GameSaveName", + "FieldName": "GameSaveName", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.GameSaveName", + "DefaultValue": "Save 1", + "Placeholder": "Save 1", + "Required": true, + "EnumValues": {} + }, + { + "DisplayName": "Maximum Ping (Game.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the maximum ping allowed for players to join the server. 0 = no limit", + "Keywords": "max,ping,MaxPing", + "FieldName": "MaxPing", + "InputType": "number", + "MinValue": "0", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MaxPing", + "DefaultValue": "195", + "Placeholder": "195", + "EnumValues": {} + }, + { + "DisplayName": "RCON Chat Messages Limit", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the limit for RCON chat messages", + "Keywords": "rcon,chat,messages,limit", + "FieldName": "RCONChatMessagesLimit", + "InputType": "number", + "MinValue": "0", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCONChatMessagesLimit", + "DefaultValue": "50", + "Placeholder": "50", + "EnumValues": {} + }, + { + "DisplayName": "Network Maximum Tick Rate (SteamSockets)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Sets the maximum tick rate for the server's SteamSockets network driver", + "Keywords": "net,server,tick,rate,NetServerMaxTickRate", + "FieldName": "NetServerMaxTickRate", + "InputType": "number", + "MinValue": "1", + "ParamFieldName": "ini:Engine:[Script/SteamSockets.SteamSocketsNetDriver]:NetServerMaxTickRate", + "IncludeInCommandLine": true, + "SkipIfEmpty": true, + "DefaultValue": "30", + "Placeholder": "30", + "EnumValues": {} + }, + { + "DisplayName": "Resource Gain Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Sets the multiplier for resource gain, which determines how much players gather from resources", + "Keywords": "resource,gain,multiplier,ResourceGainMultiplier", + "FieldName": "ResourceGainMultiplier", + "InputType": "number", + "MinValue": "0", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.ResourceGainMultiplier", + "DefaultValue": "1", + "Placeholder": "1", + "EnumValues": {} + }, + { + "DisplayName": "Gold Coin Gain Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Sets the multiplier for gold coin gain, which determines how much gold players earn", + "Keywords": "gold,coin,gain,multiplier,GoldCoinGainMultiplier", + "FieldName": "GoldCoinGainMultiplier", + "InputType": "number", + "MinValue": "0", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GoldCoinGainMultiplier", + "DefaultValue": "1", + "Placeholder": "1", + "EnumValues": {} + }, + { + "DisplayName": "Global Crafting Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Sets the multiplier for crafting speed globally", + "Keywords": "crafting,multiplier,global,CraftingSpeedMultiplier", + "FieldName": "GlobalCraftingMultiplier", + "InputType": "number", + "MinValue": "0", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalCraftingMultiplier", + "DefaultValue": "1", + "Placeholder": "1", + "EnumValues": {} + }, + { + "DisplayName": "Global Smelting Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Sets the multiplier for smelting speed globally", + "Keywords": "smelting,multiplier,global,GlobalSmeltingMultiplier", + "FieldName": "GlobalSmeltingMultiplier", + "InputType": "number", + "MinValue": "0", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalSmeltingMultiplier", + "DefaultValue": "1", + "Placeholder": "1", + "EnumValues": {} + }, + { + "DisplayName": "Enable First Person Only", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "If set, the server will enforce first-person-only gameplay", + "Keywords": "first,person,only,Server.FirstPersonOnly", + "FieldName": "Server.FirstPersonOnly", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[SystemSettings]:Server.FirstPersonOnly", + "IncludeInCommandLine": true, + "SkipIfEmpty": true, + "DefaultValue": "0", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "RCON Server Max Uptime (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If set, server will reboot after this uptime when commanded via RCON", + "Keywords": "RCON,uptime,reboot", + "FieldName": "RCON_ServerMaxUptime", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.RCON_ServerMaxUptime", + "DefaultValue": "1800", + "EnumValues": {} + }, + { + "DisplayName": "Max Server Uptime (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Hard cap on server uptime before auto-restart", + "Keywords": "max,uptime,restart", + "FieldName": "MaxServerUptime", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.MaxServerUptime", + "DefaultValue": "28800", + "EnumValues": {} + }, + { + "DisplayName": "Public Listing", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Show this server in the public server browser", + "Keywords": "public,listing", + "FieldName": "Public", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.Public", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "LAN Mode", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Run the server in LAN mode (not internet listed)", + "Keywords": "LAN,bLAN", + "FieldName": "bLAN", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.bLAN", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Anti-Cheat Enabled", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Enable built-in anti-cheat", + "Keywords": "anticheat,bAntiCheat", + "FieldName": "bAntiCheat", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.bAntiCheat", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Game Description", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Short description shown in server details (optional)", + "Keywords": "description,GameDescription", + "FieldName": "GameDescription", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.GameDescription", + "DefaultValue": "Renown", + "EnumValues": {} + }, + { + "DisplayName": "Admin Whitelist (comma-separated SteamIDs)", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Admins that can use in-game admin controls", + "Keywords": "admin,whitelist", + "FieldName": "AdminWhitelist", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.AdminWhitelist", + "DefaultValue": "", + "Placeholder": "7656119...,7656119...", + "EnumValues": {} + }, + { + "DisplayName": "Use First Map", + "Category": "Renown:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If true, load the first map from rotation on boot", + "Keywords": "UseFirstMap", + "FieldName": "UseFirstMap", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.UseFirstMap", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Ban List Path / IDs", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Ban list (file path or comma-separated IDs)", + "Keywords": "ban,BanList", + "FieldName": "BanList", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.BanList", + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Debug RCON Logs", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Verbose RCON logging", + "Keywords": "debug,DebugRCON", + "FieldName": "DebugRCON", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C.DebugRCON", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Match Time Limit (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Time limit for match-based modes", + "Keywords": "TimeLimit", + "FieldName": "TimeLimit", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.TimeLimit", + "DefaultValue": "0", + "EnumValues": {}, + "Placeholder": "0" + }, + { + "DisplayName": "Auto Balance Teams", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Automatically balance teams in team modes", + "Keywords": "AutoBalance", + "FieldName": "AutoBalance", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.AutoBalance", + "DefaultValue": "0", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "Maintenance Rate", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Tuple format for maintenance scaling. Example: (X=0.500000,Y=1.000000)", + "Keywords": "MaintenanceRate", + "FieldName": "MaintenanceRate", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.MaintenanceRate", + "DefaultValue": "(X=0.500000,Y=1.000000)", + "Placeholder": "(X=0.500000,Y=1.000000)", + "EnumValues": {} + }, + { + "DisplayName": "Global Resource Respawn Time Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Multiplier for resource respawn timers", + "Keywords": "GlobalResourceRespawnTimeMultiplier", + "FieldName": "GlobalResourceRespawnTimeMultiplier", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalResourceRespawnTimeMultiplier", + "DefaultValue": "1", + "EnumValues": {}, + "Placeholder": "1" + }, + { + "DisplayName": "Global Maintenance Cost Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Multiplier for structure upkeep costs", + "Keywords": "GlobalMaintenanceCostMultiplier", + "FieldName": "GlobalMaintenanceCostMultiplier", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalMaintenanceCostMultiplier", + "DefaultValue": "1", + "EnumValues": {}, + "Placeholder": "1" + }, + { + "DisplayName": "Global Decay Damage Multiplier", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Multiplier for decay damage to structures", + "Keywords": "GlobalDecayDamageMultiplier", + "FieldName": "GlobalDecayDamageMultiplier", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.GlobalDecayDamageMultiplier", + "DefaultValue": "1", + "EnumValues": {}, + "Placeholder": "1" + }, + { + "DisplayName": "Kick Idle Players", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Automatically kick idle players", + "Keywords": "KickIdlePlayers", + "FieldName": "KickIdlePlayers", + "InputType": "checkbox", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.KickIdlePlayers", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Idle Timeout (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Time before idle player is kicked", + "Keywords": "IdleTimeOutTime", + "FieldName": "IdleTimeOutTime", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.IdleTimeOutTime", + "DefaultValue": "300", + "EnumValues": {}, + "Placeholder": "300" + }, + { + "DisplayName": "Max Players Per Banner (clan)", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Limit of players per banner/clan (0 = unlimited)", + "Keywords": "MaxPlayersPerBanner", + "FieldName": "MaxPlayersPerBanner", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.MaxPlayersPerBanner", + "DefaultValue": "0", + "EnumValues": {}, + "Placeholder": "0" + }, + { + "DisplayName": "Auto Reboot Interval (min)", + "Category": "Renown:stadia_controller", + "Subcategory": "Maintenance:refresh-cw:5", + "Description": "Periodically reboot the server to keep performance healthy", + "Keywords": "ServerRebootTimeMinutes", + "FieldName": "ServerRebootTimeMinutes", + "InputType": "number", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.ServerRebootTimeMinutes", + "DefaultValue": "120", + "EnumValues": {}, + "Placeholder": "120" + }, + { + "DisplayName": "Raid Window Times", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Raid window in tuple format. X = start hour, Y = end hour, using 24-hour time. Example: (X=16,Y=0) means 4 PM to midnight. If Y is less than X, the window wraps past midnight.", + "Keywords": "raid,window,times,RaidWindowTimes", + "FieldName": "RaidWindowTimes", + "InputType": "text", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.RaidWindowTimes", + "DefaultValue": "(X=16,Y=0)", + "Placeholder": "(X=16,Y=0)", + "EnumValues": {} + }, +{ + "DisplayName": "Offline Raid Protection", + "Category": "Renown:stadia_controller", + "Subcategory": "Gameplay:joystick:2", + "Description": "Damage reduction applied when the defending player is offline. 1.0 = 100% damage reduction (no damage), 0.0 = no protection (full damage). Recommended: 0.99 for near-complete protection.", + "Keywords": "offline,raid,protection", + "FieldName": "OfflineRaidProtectionMultiplier", + "InputType": "number", + "MinValue": "0", + "MaxValue": ".99", + "ParamFieldName": "/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C.OfflineRaidProtectionMultiplier", + "DefaultValue": "0.99", + "Placeholder": "0.99", + "EnumValues": {} +}, + { + "DisplayName": "Enable Server Queue", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "Enable join queue when server is full or starting", + "Keywords": "queue,bEnableServerQueue", + "FieldName": "bEnableServerQueue", + "InputType": "checkbox", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:bEnableServerQueue", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Run On LAN (Queue)", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "Run queue in LAN mode", + "Keywords": "bRunOnLan", + "FieldName": "bRunOnLan", + "InputType": "checkbox", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:bRunOnLan", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Client & Server Same Machine", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "Optimizations if client and server run on same machine", + "Keywords": "bIsServerClientRunningOnSameMachine", + "FieldName": "bIsServerClientRunningOnSameMachine", + "InputType": "checkbox", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:bIsServerClientRunningOnSameMachine", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Reconnection Grace (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "How long a disconnecting player can rejoin without losing spot", + "Keywords": "ReconnectionGracePeriodSeconds", + "FieldName": "ReconnectionGracePeriodSeconds", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:ReconnectionGracePeriodSeconds", + "DefaultValue": "90", + "EnumValues": {} + }, + { + "DisplayName": "Max Join Duration (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "Time window to complete a join from queue", + "Keywords": "ServerQueueMaxJoinDuration", + "FieldName": "ServerQueueMaxJoinDuration", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:ServerQueueMaxJoinDuration", + "DefaultValue": "300", + "EnumValues": {} + }, + { + "DisplayName": "Purge Pending Connections (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "Purge half-open connections after this time", + "Keywords": "PurgePendingPlayerConnections", + "FieldName": "PurgePendingPlayerConnections", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:PurgePendingPlayerConnections", + "DefaultValue": "60", + "EnumValues": {} + }, + { + "DisplayName": "Player Slots To Consume", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "Reserved slots consumed by queue/internal services", + "Keywords": "PlayerSlotsToConsume", + "FieldName": "PlayerSlotsToConsume", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:PlayerSlotsToConsume", + "DefaultValue": "0", + "EnumValues": {} + }, + { + "DisplayName": "Max Client Reconnect Attempts", + "Category": "Renown:stadia_controller", + "Subcategory": "Queue:users:6", + "Description": "How many reconnect tries are allowed", + "Keywords": "MaxClientReconnectAttempts", + "FieldName": "MaxClientReconnectAttempts", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Renown_Combat.RenownDeveloperSettings]:MaxClientReconnectAttempts", + "DefaultValue": "0", + "EnumValues": {} + }, + { + "DisplayName": "Default Max Party Size", + "Category": "Renown:stadia_controller", + "Subcategory": "Social:users:7", + "Description": "Max party size in lobby", + "Keywords": "party,DefaultMaxPartySize", + "FieldName": "DefaultMaxPartySize", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Party.Party]:DefaultMaxPartySize", + "DefaultValue": "5", + "EnumValues": {} + }, + { + "DisplayName": "Wait For Players Time Remaining (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Social:users:7", + "Description": "Time the lobby waits before starting", + "Keywords": "Lobby,WaitForPlayersTimeRemaining", + "FieldName": "WaitForPlayersTimeRemaining", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Lobby.LobbyBeaconState]:WaitForPlayersTimeRemaining", + "DefaultValue": "20.0", + "EnumValues": {} + }, + { + "DisplayName": "Max Spectators", + "Category": "Renown:stadia_controller", + "Subcategory": "Social:users:7", + "Description": "Number of spectator slots", + "Keywords": "spectators,MaxSpectators", + "FieldName": "MaxSpectators", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Engine.GameSession]:MaxSpectators", + "DefaultValue": "2", + "EnumValues": {} + }, + { + "DisplayName": "Requires Push-To-Talk", + "Category": "Renown:stadia_controller", + "Subcategory": "Social:users:7", + "Description": "Require PTT for in-game voice", + "Keywords": "voice,bRequiresPushToTalk", + "FieldName": "bRequiresPushToTalk", + "InputType": "checkbox", + "ParamFieldName": "ini:Game:[Script/Engine.GameSession]:bRequiresPushToTalk", + "DefaultValue": "true", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Total Net Bandwidth (Game.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Server total outgoing bandwidth budget (bytes/sec)", + "Keywords": "bandwidth,TotalNetBandwidth", + "FieldName": "TotalNetBandwidth_Game", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Engine.GameNetworkManager]:TotalNetBandwidth", + "DefaultValue": "4000000", + "EnumValues": {} + }, + { + "DisplayName": "Max Dynamic Bandwidth (Game.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Max per-connection bandwidth cap", + "Keywords": "bandwidth,MaxDynamicBandwidth", + "FieldName": "MaxDynamicBandwidth_Game", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Engine.GameNetworkManager]:MaxDynamicBandwidth", + "DefaultValue": "100000", + "EnumValues": {} + }, + { + "DisplayName": "Min Dynamic Bandwidth (Game.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Min per-connection bandwidth floor", + "Keywords": "bandwidth,MinDynamicBandwidth", + "FieldName": "MinDynamicBandwidth_Game", + "InputType": "number", + "ParamFieldName": "ini:Game:[Script/Engine.GameNetworkManager]:MinDynamicBandwidth", + "DefaultValue": "40000", + "EnumValues": {} + }, + { + "DisplayName": "Max Ping (Engine.ini override)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Engine.ini override for maximum ping filter", + "Keywords": "MaxPing,override", + "FieldName": "MaxPing_Engine", + "InputType": "number", + "ParamFieldName": "ini:Engine:[/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C]:MaxPing", + "DefaultValue": "500", + "EnumValues": {} + }, + { + "DisplayName": "Smooth Frame Rate", + "Category": "Renown:stadia_controller", + "Subcategory": "Performance:activity:8", + "Description": "Enable UE frame smoothing on the server", + "Keywords": "bSmoothFrameRate", + "FieldName": "bSmoothFrameRate", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[Script/Engine.GameEngine]:bSmoothFrameRate", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Total Net Bandwidth (Engine.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Engine-level total outgoing bandwidth budget (bytes/sec)", + "Keywords": "bandwidth,TotalNetBandwidth", + "FieldName": "TotalNetBandwidth_Engine", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/Engine.GameNetworkManager]:TotalNetBandwidth", + "DefaultValue": "500000", + "EnumValues": {} + }, + { + "DisplayName": "Max Dynamic Bandwidth (Engine.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Engine-level per-connection bandwidth cap", + "Keywords": "bandwidth,MaxDynamicBandwidth", + "FieldName": "MaxDynamicBandwidth_Engine", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/Engine.GameNetworkManager]:MaxDynamicBandwidth", + "DefaultValue": "80000", + "EnumValues": {} + }, + { + "DisplayName": "Min Dynamic Bandwidth (Engine.ini)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Engine-level per-connection bandwidth floor", + "Keywords": "bandwidth,MinDynamicBandwidth", + "FieldName": "MinDynamicBandwidth_Engine", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/Engine.GameNetworkManager]:MinDynamicBandwidth", + "DefaultValue": "20000", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Allow Peer Connections", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Allow peer-to-peer client connections", + "Keywords": "IpNetDriver,AllowPeerConnections", + "FieldName": "AllowPeerConnections", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:AllowPeerConnections", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "IP Driver: Connection Timeout (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Timeout for network connections", + "Keywords": "IpNetDriver,ConnectionTimeout", + "FieldName": "ConnectionTimeout", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:ConnectionTimeout", + "DefaultValue": "60.0", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Initial Connect Timeout (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Initial connection timeout", + "Keywords": "IpNetDriver,InitialConnectTimeout", + "FieldName": "InitialConnectTimeout", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:InitialConnectTimeout", + "DefaultValue": "60.0", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Max Client Rate", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Max client rate (bytes/sec)", + "Keywords": "IpNetDriver,MaxClientRate", + "FieldName": "MaxClientRate", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:MaxClientRate", + "DefaultValue": "100000", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Max Internet Client Rate", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Max internet client rate (bytes/sec)", + "Keywords": "IpNetDriver,MaxInternetClientRate", + "FieldName": "MaxInternetClientRate", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:MaxInternetClientRate", + "DefaultValue": "100000", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Relevant Timeout (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Relevancy timeout", + "Keywords": "IpNetDriver,RelevantTimeout", + "FieldName": "RelevantTimeout", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:RelevantTimeout", + "DefaultValue": "5.0", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Spawn Priority Seconds", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Spawn priority seconds", + "Keywords": "IpNetDriver,SpawnPrioritySeconds", + "FieldName": "SpawnPrioritySeconds", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:SpawnPrioritySeconds", + "DefaultValue": "1.0", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Server Travel Pause (sec)", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Pause during seamless travel", + "Keywords": "IpNetDriver,ServerTravelPause", + "FieldName": "ServerTravelPause", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:ServerTravelPause", + "DefaultValue": "4.0", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Net Server Max Tick Rate", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Tick rate for IpNetDriver", + "Keywords": "IpNetDriver,NetServerMaxTickRate", + "FieldName": "IpNetDriver_NetServerMaxTickRate", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:NetServerMaxTickRate", + "DefaultValue": "30", + "EnumValues": {} + }, + { + "DisplayName": "IP Driver: Max Net Tick Rate", + "Category": "Renown:stadia_controller", + "Subcategory": "Networking:globe-2:3", + "Description": "Overall max network tick rate", + "Keywords": "IpNetDriver,MaxNetTickRate", + "FieldName": "MaxNetTickRate", + "InputType": "number", + "ParamFieldName": "ini:Engine:[Script/OnlineSubsystemUtils.IpNetDriver]:MaxNetTickRate", + "DefaultValue": "120", + "EnumValues": {} + }, + { + "DisplayName": "DDoS Detection Enabled", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Enable UE DDoS detection", + "Keywords": "DDoS,bDDoSDetection", + "FieldName": "bDDoSDetection", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[DDoSDetection]:bDDoSDetection", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "DDoS Analytics Enabled", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Enable DDoS analytics", + "Keywords": "DDoS,bDDoSAnalytics", + "FieldName": "bDDoSAnalytics", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[DDoSDetection]:bDDoSAnalytics", + "DefaultValue": "False", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "DDoS Log Spam Limit", + "Category": "Renown:stadia_controller", + "Subcategory": "Security:shield:4", + "Description": "Limit for DDoS log spam", + "Keywords": "DDoS,Log", + "FieldName": "DDoSLogSpamLimit", + "InputType": "number", + "ParamFieldName": "ini:Engine:[DDoSDetection]:DDoSLogSpamLimit", + "DefaultValue": "64", + "EnumValues": {} + }, + { + "DisplayName": "Hitch Time Quota (ms)", + "Category": "Renown:stadia_controller", + "Subcategory": "Performance:activity:8", + "Description": "Hitch detection time quota", + "Keywords": "HitchTimeQuotaMS", + "FieldName": "HitchTimeQuotaMS", + "InputType": "number", + "ParamFieldName": "ini:Engine:[DDoSDetection]:HitchTimeQuotaMS", + "DefaultValue": "500", + "EnumValues": {} + }, + { + "DisplayName": "Hitch Frame Tolerance", + "Category": "Renown:stadia_controller", + "Subcategory": "Performance:activity:8", + "Description": "Hitch detection frame tolerance", + "Keywords": "HitchFrameTolerance", + "FieldName": "HitchFrameTolerance", + "InputType": "number", + "ParamFieldName": "ini:Engine:[DDoSDetection]:HitchFrameTolerance", + "DefaultValue": "3", + "EnumValues": {} + }, + { + "DisplayName": "Purge Logs After (days)", + "Category": "Renown:stadia_controller", + "Subcategory": "Maintenance:refresh-cw:5", + "Description": "Delete logs older than this many days", + "Keywords": "logs,PurgeLogsDays", + "FieldName": "PurgeLogsDays", + "InputType": "number", + "ParamFieldName": "ini:Engine:[LogFiles]:PurgeLogsDays", + "DefaultValue": "5", + "EnumValues": {} + }, + { + "DisplayName": "Max Log Files On Disk", + "Category": "Renown:stadia_controller", + "Subcategory": "Maintenance:refresh-cw:5", + "Description": "Limit number of rotated log files", + "Keywords": "logs,MaxLogFilesOnDisk", + "FieldName": "MaxLogFilesOnDisk", + "InputType": "number", + "ParamFieldName": "ini:Engine:[LogFiles]:MaxLogFilesOnDisk", + "DefaultValue": "10", + "EnumValues": {} + }, + { + "DisplayName": "Log Times", + "Category": "Renown:stadia_controller", + "Subcategory": "Maintenance:refresh-cw:5", + "Description": "Include timestamps in logs", + "Keywords": "logs,LogTimes", + "FieldName": "LogTimes", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[LogFiles]:LogTimes", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Core.Log Advanced (raw block)", + "Category": "Renown:stadia_controller", + "Subcategory": "Maintenance:refresh-cw:5", + "Description": "Optional advanced Core.Log overrides; paste lines like 'Online=all off' each on new line", + "Keywords": "Core.Log,advanced", + "FieldName": "CoreLogRaw", + "InputType": "textarea", + "ParamFieldName": "ini:Engine:[Core.Log]:__raw__", + "DefaultValue": "Online=all off\nOnlineSession=log\nOnlineGame=log\nSteamCore=all off\nAssetLog=all off\nLogRedpointEOS=all off\nLogRedpointEOSIdentity=all off\nLogRedpointEOSSocket=all off\nLogRedpointEOSSocketLifecycle=all off\nLogRedpointEOSSessionListening=all off\nLogRedpointEOSNetworkTrace=all off\nLogRedpointEOSNetworkAuth=all off\nLogRedpointEOSStat=all off\nLogRedpointEOSAntiCheat=all off\nLogRedpointEOSFriends=all off\nLogRedpointEOSFileTransfer=all off\nLogRedpointEOSVoiceChat=all off\nLogBeacon=log\nLogServerQueue=log", + "EnumValues": {} + }, + { + "DisplayName": "Server Language Culture", + "Category": "Renown:stadia_controller", + "Subcategory": "Localization:languages:9", + "Description": "Set server culture/language (eg. en, es-MX)", + "Keywords": "language,culture,Internationalization", + "FieldName": "Culture", + "InputType": "text", + "ParamFieldName": "ini:GameUserSettings:[Internationalization]:Culture", + "DefaultValue": "en", + "EnumValues": {} + }, + { + "DisplayName": "EOS Voice Chat Enabled", + "Category": "Renown:stadia_controller", + "Subcategory": "Voice:mic:10", + "Description": "Enable Epic Online Services voice chat", + "Keywords": "voice,EOS,bEnabled", + "FieldName": "EOSVoiceChatEnabled", + "InputType": "checkbox", + "ParamFieldName": "ini:Engine:[EOSVoiceChat]:bEnabled", + "DefaultValue": "True", + "EnumValues": { + "False": "False", + "True": "True" + } + }, + { + "DisplayName": "Server Release Version", + "Category": "Updates", + "Subcategory": "Steam Downloads:download", + "Description": "Sets the server release version to install. Update the server after changing this setting", + "Keywords": "server,version,public,beta", + "FieldName": "ServerVersion", + "InputType": "enum", + "ParamFieldName": "ServerVersion", + "DefaultValue": "public", + "EnumValues": { + "public": "Public (default)", + "beta": "Beta" + } + } +] diff --git a/renownengine.ini b/renownengine.ini new file mode 100644 index 000000000..81997fdba --- /dev/null +++ b/renownengine.ini @@ -0,0 +1,65 @@ +[/Script/SteamSockets.SteamSocketsNetDriver] +NetServerMaxTickRate=30 + +[SystemSettings] +Server.FirstPersonOnly=0 +RollingSavesLimit=250 + +[/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C] +MaxPing=500 + +[/Script/Engine.GameEngine] +bSmoothFrameRate=True + +[/Script/Engine.GameNetworkManager] +TotalNetBandwidth=500000 +MaxDynamicBandwidth=80000 +MinDynamicBandwidth=20000 + +[/Script/OnlineSubsystemUtils.IpNetDriver] +AllowPeerConnections=False +ConnectionTimeout=60.0 +InitialConnectTimeout=60.0 +MaxClientRate=100000 +MaxInternetClientRate=100000 +RelevantTimeout=5.0 +SpawnPrioritySeconds=1.0 +ServerTravelPause=4.0 +NetServerMaxTickRate=30 +MaxNetTickRate=120 + +[DDoSDetection] +bDDoSDetection=false +bDDoSAnalytics=false +DDoSLogSpamLimit=64 +HitchTimeQuotaMS=500 +HitchFrameTolerance=3 + +[LogFiles] +PurgeLogsDays=5 +MaxLogFilesOnDisk=10 +LogTimes=True + +[Core.Log] +Online=all off +OnlineSession=log +OnlineGame=log +SteamCore=all off +AssetLog=all off +LogRedpointEOS=all off +LogRedpointEOSIdentity=all off +LogRedpointEOSSocket=all off +LogRedpointEOSSocketLifecycle=all off +LogRedpointEOSSessionListening=all off +LogRedpointEOSNetworkTrace=all off +LogRedpointEOSNetworkAuth=all off +LogRedpointEOSStat=all off +LogRedpointEOSAntiCheat=all off +LogRedpointEOSFriends=all off +LogRedpointEOSFileTransfer=all off +LogRedpointEOSVoiceChat=all off +LogBeacon=log +LogServerQueue=log + +[EOSVoiceChat] +bEnabled=True diff --git a/renowngame.ini b/renowngame.ini index 46795c155..96730d97d 100644 --- a/renowngame.ini +++ b/renowngame.ini @@ -1,24 +1,71 @@ [/Game/Core/Blueprints/Renown_GameInstance.Renown_GameInstance_C] -ServerName=AMP Powered Renown Server -MaxPlayers=40 +EnableRCON=True +RCONPort=25575 +RCONChatMessagesLimit=50 +RCONPassword= +RCON_ServerMaxUptime=1800 ServerPassword= +ServerName= +MaxPlayers=40 +bLAN=False +bAntiCheat=False +GameSaveName=Save 1 +GameDescription=Renown AdminPassword= +AdminWhitelist= +UseFirstMap=True +Public=True MapRotation=RSurv-AlgaraIsle_p +BanList= PrivateSession=False -GameSaveName=Save 1 -MaxPing=180 -EnableRCON=True -RCONPort=25575 -RCONChatMessagesLimit=30 -RCONPassword= -MOTD=Welome to my server! +MaxPing=195 +MOTD="NSLOCTEXT("[2CF2D1E04F419B14490A65BF06750767]", "F67B0BE94A3C4A2665B05284056D0757", "Welcome to Renown, in order to play on this server you must accept the following Rules.\r\n\r\n1. **Respect and Courtesy**: Treat fellow players and staff with respect. Harassment, hate speech, or any form of discrimination will not be tolerated.\r\n\r\n2. **Cheating and Exploits**: Any use of cheats, hacks, exploits, or any unfair advantage is strictly prohibited. Players found violating this rule will face severe consequences, including permanent bans.\r\n\r\n3. **Language and Content**: Keep chat and in-game communication appropriate for all ages. Avoid using offensive language, explicit content, or engaging in discussions that may make others uncomfortable.\r\n\r\n4. **No Spamming or Advertising**: Do not spam chat with repetitive messages or advertise external services or products without permission from server staff.\r\n\r\n5. **Bug Reporting**: If you encounter any bugs or issues, report them to server staff or file a bug report promptly. Exploiting or abusing bugs for personal gain is not allowed.\r\n\r\n6. **Impersonation**: Do not impersonate server staff or other players. This includes using similar names or pretending to have authority you do not possess.\r\n\r\n7. **Final Authority**: Server staff have the final say in all matters concerning rule enforcement and disciplinary actions. Respect their decisions and cooperate with them at all times.\r\n\r\nRemember, these rules are in place to ensure a fair, enjoyable, and respectful gaming environment for all players. Violating these rules may result in warnings, temporary suspensions, or permanent bans, depending on the severity of the offense. Enjoy your time on the server and have fun gaming!")" Region= - -[/Script/Engine.GameSession] -MaxPlayers=40 +MaxServerUptime=28800 +DebugRCON=True [/Game/Core/Blueprints/GameModes/Renown_Survival_GameMode.Renown_Survival_GameMode_C] +TimeLimit=0 +AutoBalance=0 +MaintenanceRate=(X=0.500000,Y=1.000000) ResourceGainMultiplier=1 GoldCoinGainMultiplier=1 GlobalCraftingMultiplier=1 GlobalSmeltingMultiplier=1 +GlobalResourceRespawnTimeMultiplier=1 +GlobalMaintenanceCostMultiplier=1 +GlobalDecayDamageMultiplier=1 +KickIdlePlayers=True +IdleTimeOutTime=300 +MaxPlayersPerBanner=0 +ServerRebootTimeMinutes=120 +RaidWindowTimes=(X=16,Y=0) +OfflineRaidProtectionMultiplier=.99 +[/Game/Core/Blueprints/GameModes/Renown_Horde_GameMode.Renown_Horde_GameMode_C] +[/Game/Core/Blueprints/GameModes/Renown_Duels_GameMode.Renown_Duels_GameMode_C] + +[/Script/Renown_Combat.RenownDeveloperSettings] +bEnableServerQueue=True +bRunOnLan=False +bIsServerClientRunningOnSameMachine=False +ReconnectionGracePeriodSeconds=90 +ServerQueueMaxJoinDuration=300 +PurgePendingPlayerConnections=60 +PlayerSlotsToConsume=0 +MaxClientReconnectAttempts=0 + +[/Script/Party.Party] +DefaultMaxPartySize=5 + +[/Script/Lobby.LobbyBeaconState] +WaitForPlayersTimeRemaining=20.0 + +[/Script/Engine.GameSession] +MaxSpectators=2 +bRequiresPushToTalk=true + + +[/Script/Engine.GameNetworkManager] +TotalNetBandwidth=4000000 +MaxDynamicBandwidth=100000 +MinDynamicBandwidth=40000 diff --git a/renowngameusersettings.ini b/renowngameusersettings.ini new file mode 100644 index 000000000..e2dd90415 --- /dev/null +++ b/renowngameusersettings.ini @@ -0,0 +1,2 @@ +[Internationalization] +Culture=en diff --git a/renownmetaconfig.json b/renownmetaconfig.json index f02299463..90367eef8 100644 --- a/renownmetaconfig.json +++ b/renownmetaconfig.json @@ -1,14 +1,38 @@ [ - { - "ConfigFile": "Renown_Combat/Saved/Config/LinuxServer/Game.ini", - "ConfigType": "ini", - "AutoMap": true, - "Importable": true - }, - { - "ConfigFile": "Renown_Combat/Saved/Config/WindowsServer/Game.ini", - "ConfigType": "ini", - "AutoMap": true, - "Importable": true - } -] \ No newline at end of file + { + "ConfigFile": "Renown_Combat/Saved/Config/LinuxServer/Game.ini", + "ConfigType": "ini", + "AutoMap": true, + "Importable": true + }, + { + "ConfigFile": "Renown_Combat/Saved/Config/WindowsServer/Game.ini", + "ConfigType": "ini", + "AutoMap": true, + "Importable": true + }, + { + "ConfigFile": "Renown_Combat/Saved/Config/LinuxServer/Engine.ini", + "ConfigType": "ini", + "AutoMap": true, + "Importable": true + }, + { + "ConfigFile": "Renown_Combat/Saved/Config/WindowsServer/Engine.ini", + "ConfigType": "ini", + "AutoMap": true, + "Importable": true + }, + { + "ConfigFile": "Renown_Combat/Saved/Config/LinuxServer/GameUserSettings.ini", + "ConfigType": "ini", + "AutoMap": true, + "Importable": true + }, + { + "ConfigFile": "Renown_Combat/Saved/Config/WindowsServer/GameUserSettings.ini", + "ConfigType": "ini", + "AutoMap": true, + "Importable": true + } +] diff --git a/renownupdates.json b/renownupdates.json index 3a7f24970..bb932904c 100644 --- a/renownupdates.json +++ b/renownupdates.json @@ -1,52 +1,83 @@ [ - { - "UpdateStageName": "SteamCMD Download", - "UpdateSourcePlatform": "All", - "UpdateSource": "SteamCMD", - "UpdateSourceData": "1512690", - "UpdateSourceArgs": "1488310", - "UpdateSourceVersion": "{{ServerVersion}}", - "SkipOnFailure": false - }, - { - "UpdateStageName": "SteamCMD Component Download", - "UpdateSourcePlatform": "Windows", - "UpdateSource": "SteamCMD", - "UpdateSourceData": "1007", - "UpdateSourceArgs": "1488310", - "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Binaries/Win64", - "SkipOnFailure": false - }, - { - "UpdateStageName": "Create Config Directory", - "UpdateSourcePlatform": "Linux", - "UpdateSource": "CreateDirectory", - "UpdateSourceArgs": "{{$FullBaseDir}}Renown_Combat/Saved/Config/LinuxServer", - "SkipOnFailure": false - }, - { - "UpdateStageName": "Create Config Directory", - "UpdateSourcePlatform": "Windows", - "UpdateSource": "CreateDirectory", - "UpdateSourceArgs": "{{$FullBaseDir}}Renown_Combat/Saved/Config/WindowsServer", - "SkipOnFailure": false - }, - { - "UpdateStageName": "Game.ini Download", - "UpdateSourcePlatform": "Linux", - "UpdateSource": "FetchURL", - "UpdateSourceData": "https://raw.githubusercontent.com/CubeCoders/AMPTemplates/main/renowngame.ini", - "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/LinuxServer", - "UpdateSourceArgs": "Game.ini", - "OverwriteExistingFiles": false - }, - { - "UpdateStageName": "Game.ini Download", - "UpdateSourcePlatform": "Windows", - "UpdateSource": "FetchURL", - "UpdateSourceData": "https://raw.githubusercontent.com/CubeCoders/AMPTemplates/main/renowngame.ini", - "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/WindowsServer", - "UpdateSourceArgs": "Game.ini", - "OverwriteExistingFiles": false - } -] \ No newline at end of file + { + "UpdateStageName": "SteamCMD Download", + "UpdateSourcePlatform": "All", + "UpdateSource": "SteamCMD", + "UpdateSourceData": "1512690", + "UpdateSourceArgs": "1488310", + "UpdateSourceVersion": "{{ServerVersion}}", + "SkipOnFailure": false + }, + { + "UpdateStageName": "SteamCMD Component Download", + "UpdateSourcePlatform": "Windows", + "UpdateSource": "SteamCMD", + "UpdateSourceData": "1007", + "UpdateSourceArgs": "1488310", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Binaries/Win64", + "SkipOnFailure": false + }, + + { "UpdateStageName": "Create Config Directory (Linux)", "UpdateSourcePlatform": "Linux", "UpdateSource": "CreateDirectory", "UpdateSourceArgs": "{{$FullBaseDir}}Renown_Combat/Saved/Config/LinuxServer", "SkipOnFailure": false }, + { "UpdateStageName": "Create Config Directory (Windows)", "UpdateSourcePlatform": "Windows", "UpdateSource": "CreateDirectory", "UpdateSourceArgs": "{{$FullBaseDir}}Renown_Combat/Saved/Config/WindowsServer", "SkipOnFailure": false }, + + // ===== Game.ini from your fork (source filename → destination Game.ini) + { + "UpdateStageName": "Game.ini Download (Linux)", + "UpdateSourcePlatform": "Linux", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/HuguesDePayens/AMPTemplates/main/renowngame.ini", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/LinuxServer", + "UpdateSourceArgs": "Game.ini", + "OverwriteExistingFiles": false + }, + { + "UpdateStageName": "Game.ini Download (Windows)", + "UpdateSourcePlatform": "Windows", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/HuguesDePayens/AMPTemplates/main/renowngame.ini", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/WindowsServer", + "UpdateSourceArgs": "Game.ini", + "OverwriteExistingFiles": false + }, + + // ===== Engine.ini from your fork (renownengine.ini → Engine.ini) + { + "UpdateStageName": "Engine.ini Download (Linux)", + "UpdateSourcePlatform": "Linux", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/HuguesDePayens/AMPTemplates/main/renownengine.ini", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/LinuxServer", + "UpdateSourceArgs": "Engine.ini", + "OverwriteExistingFiles": false + }, + { + "UpdateStageName": "Engine.ini Download (Windows)", + "UpdateSourcePlatform": "Windows", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/HuguesDePayens/AMPTemplates/main/renownengine.ini", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/WindowsServer", + "UpdateSourceArgs": "Engine.ini", + "OverwriteExistingFiles": false + }, + + // ===== GameUserSettings.ini from your fork (renowngameusersettings.ini → GameUserSettings.ini) + { + "UpdateStageName": "GameUserSettings.ini Download (Linux)", + "UpdateSourcePlatform": "Linux", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/HuguesDePayens/AMPTemplates/main/renowngameusersettings.ini", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/LinuxServer", + "UpdateSourceArgs": "GameUserSettings.ini", + "OverwriteExistingFiles": false + }, + { + "UpdateStageName": "GameUserSettings.ini Download (Windows)", + "UpdateSourcePlatform": "Windows", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/HuguesDePayens/AMPTemplates/main/renowngameusersettings.ini", + "UpdateSourceTarget": "{{$FullBaseDir}}Renown_Combat/Saved/Config/WindowsServer", + "UpdateSourceArgs": "GameUserSettings.ini", + "OverwriteExistingFiles": false + } +]