diff --git a/stormworks.kvp b/stormworks.kvp new file mode 100644 index 0000000..0fc23c5 --- /dev/null +++ b/stormworks.kvp @@ -0,0 +1,99 @@ +Meta.DisplayName=Stormworks +Meta.Description=Stormworks Dedicated Server +Meta.OS=Windows, Linux +Meta.AarchSupport=NotSupported +Meta.Arch=x86_64 +Meta.Author=SauranTheWhite,Greelan +Meta.URL=https://store.steampowered.com/app/573090/Stormworks_Build_and_Rescue/ +Meta.DisplayImageSource=steam:573090 +Meta.EndpointURIFormat=steam://connect/{0} +Meta.ConfigManifest=stormworksconfig.json +Meta.MetaConfigManifest=stormworksmetaconfig.json +Meta.ConfigRoot=stormworks.kvp +Meta.MinAMPVersion=2.4.6.0 +Meta.SpecificDockerImage=cubecoders/ampbase:wine +Meta.DockerRequired=False +Meta.ContainerPolicy=SupportedOnWindows, RecommendedOnLinux +Meta.ContainerPolicyReason=The server requires Wine to run on Linux. Using a container avoids the need to install this dependency on the host. +Meta.ExtraSetupStepsURI=https://discourse.cubecoders.com/docs?topic=5782?utm_source=ampcreate&utm_content=stormworks +Meta.Prerequsites=[] +Meta.ExtraContainerPackages=[] +Meta.ConfigReleaseState=Release +Meta.NoCommercialUsage=False +Meta.ConfigVersion=0.1.24.2 +Meta.ReleaseNotes= +Meta.BreakingReleaseNotes= +App.DisplayName=Stormworks +App.RootDir=./stormworks/ +App.BaseDirectory=./stormworks/1247090/ +App.SteamWorkshopDownloadLocation= +App.ExecutableWin=1247090\server64.exe +App.ExecutableLinux=/usr/bin/wine +App.WorkingDir=1247090 +App.LinuxCommandLineArgs="./server64.exe" +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} +server_dir "./" {{$FormattedArgs}} +App.UseLinuxIOREDIR=False +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"573090","WINEPREFIX":"{{$FullRootDir}}.wine","WINEARCH":"win64","WINEDEBUG":"-all"} +App.CommandLineParameterFormat=+{0} "{1}" +App.CommandLineParameterDelimiter= +App.ExitMethod=OS_CLOSE +App.ExitTimeout=30 +App.ExitString=stop +App.ExitFile=app_exit.lck +App.HasWriteableConsole=True +App.HasReadableConsole=True +App.SupportsLiveSettingsChanges=False +App.LiveSettingChangeCommandFormat=set {0} "{1}" +App.ApplicationIPBinding=0.0.0.0 +App.Ports=@IncludeJson[stormworksports.json] +App.AdminPortRef=0 +App.PrimaryApplicationPortRef=GamePort +App.UniversalSleepApplicationUDPPortRef=GamePort +App.UniversalSleepSteamQueryPortRef=QueryPort +App.MaxUsers=8 +App.UseRandomAdminPassword=False +App.PersistRandomPassword=True +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.LoginTransformPrefix= +App.RCONConnectDelaySeconds=30 +App.RCONConnectRetrySeconds=15 +App.RCONHeartbeatMinutes=0 +App.RCONHeartbeatCommand=ping +App.TelnetLoginFormat={0} +App.UpdateSources=@IncludeJson[stormworksupdates.json] +App.PreStartStages=[] +App.ForceUpdate=False +App.ForceUpdateReason= +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.MonitorChildProcess=True +App.DumpFullChildProcessTree=False +App.MonitorChildProcessWaitMs=1000 +App.MonitorChildProcessName=server64.exe +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +App.TemplateMatchRegex={{(\$?[\w]+)}} +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex= +Console.AppReadyRegex=^Server\s+Version\s+:\s+v\d+\.\d+\.\d+$ +Console.UserJoinRegex=^$ +Console.UserLeaveRegex=^$ +Console.UserChatRegex=^$ +Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$ +Console.MetricsRegex= +Console.SuppressLogAtStart=False +Console.ActivateLogRegex= +Console.UserActions={} +Limits.SleepMode=True +Limits.SleepOnStart=False +Limits.SleepDelayMinutes=5 +Limits.DozeDelay=2 +Limits.AutoRetryCount=5 +Limits.SleepStartThresholdSeconds=25 \ No newline at end of file diff --git a/stormworksconfig.json b/stormworksconfig.json new file mode 100644 index 0000000..45b861b --- /dev/null +++ b/stormworksconfig.json @@ -0,0 +1,917 @@ +[ + { + "DisplayName": "General Settings", + "Category": "Stormworks - General", + "Description": "These settings are for setting up the Stormworks server. They can be changed after world creation.", + "Keywords": "", + "FieldName": "GeneralSettings", + "InputType": "hidden", + "IsFlagArgument": false, + "ParamFieldName": "", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Primary Admin", + "Category": "Stormworks - General", + "Description": "Sets the [Steam64 ID](https://steamidfinder.com/) of the primary (first) admin on the server. Other admins (as well as authorized users and banned users) can be added in-game. See the [Stormworks Guide](https://discourse.cubecoders.com/docs?topic=5782?utm_source=ampcreate&utm_content=stormworks) for further information.", + "Keywords": "admin,whitelist,blacklist,white,black,list,auth,authorized", + "FieldName": "admins", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/admins/id[1]/@value", + "IncludeInCommandLine": false, + "DefaultValue": "", + "Placeholder":"9087654321234567", + "EnumValues": {} + }, + { + "DisplayName": "Player Permissions", + "Category": "Stormworks - General", + "Description": "Player permissions (and whitelisted players) can be set using in-game commands. See the [Stormworks Guide](https://discourse.cubecoders.com/docs?topic=5782?utm_source=ampcreate&utm_content=stormworks) for further information.", + "Keywords": "whitelist,blacklist,white,black,list,auth,authorized,commands", + "FieldName": "Commands", + "InputType": "hidden", + "IsFlagArgument": false, + "ParamFieldName": "", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Game Port", + "Category": "Stormworks - General", + "Description": "The starting port for the server, game will use sequential ports. Default: 25564-25565", + "Keywords": "", + "FieldName": "$GamePort", + "InputType": "number", + "Hidden": true, + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@port", + "IncludeInCommandLine": false, + "EnumValues": {} + }, + { + "DisplayName": "Server Name", + "Category": "Stormworks - General", + "Description": "Sets the name of the server as it appears in the server browser.", + "Keywords": "server,name,servername", + "FieldName": "name", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@name", + "IncludeInCommandLine": false, + "DefaultValue": "AMP Powered Stormworks Server", + "Placeholder": "AMP Powered Stormworks Server", + "EnumValues": {} + }, + { + "DisplayName": "Save Name", + "Category": "Stormworks - General", + "Description": "Sets the name of the world save, as shown in the file directory.", + "Keywords": "save,name,savename,save_name", + "FieldName": "save_name", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@save_name", + "IncludeInCommandLine": false, + "DefaultValue": "autosave_server", + "Placeholder": "autosave_server", + "EnumValues": {} + }, + { + "DisplayName": "Server Password", + "Category": "Stormworks - General", + "Description": "Sets the password required for players to join the server. Default is no password.", + "Keywords": "password", + "FieldName": "password", + "InputType": "password", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@password", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Player Limit", + "Category": "Stormworks - General", + "Description": "Sets the number of players allowed to join the server at one time.", + "Keywords": "player,limit,maxplayers,max_players", + "FieldName": "$MaxUsers", + "InputType": "number", + "MinValue": "1", + "MaxValue": "32", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@max_players", + "IncludeInCommandLine": false, + "DefaultValue": "10", + "Placeholder": "10", + "Suffix": "players", + "EnumValues": {} + }, + { + "DisplayName": "Enable Player Despawn", + "Category": "Stormworks - General", + "Description": "If enabled, players will despawn when they leave. This is recommended for public servers.", + "Keywords": "despawn,player,character,leave,despawn_on_leave", + "FieldName": "despawn_on_leave", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@despawn_on_leave", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Physics Timestep", + "Category": "Stormworks - General", + "Description": "Sets the physics resolution.", + "Keywords": "physics,timestep,resolution,physicstimestep,physics_timestep", + "FieldName": "physics_timestep", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@physics_timestep", + "IncludeInCommandLine": false, + "DefaultValue": "0", + "EnumValues": { + "0": "Auto (default)", + "60": "Low (60)", + "120": "Medium (120)", + "180": "High (180)" + } + }, + { + "DisplayName": "Enable Wildlife", + "Category": "Stormworks - General", + "Description": "If enabled, birds and fish spawn are simulated.", + "Keywords": "wildlife,wildlifeenabled,wildlife_enabled", + "FieldName": "wildlife_enabled", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@wildlife_enabled", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Fish Spawn Rate", + "Category": "Stormworks - General", + "Description": "Sets the rate of fish spawn around players. Requires Enable Wildlife to be set.", + "Keywords": "fish,spawn,rate,fishspawn,spawnrate,fishspawnrate,fishrate,fish_spawn_rate", + "FieldName": "fish_spawn_rate", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@fish_spawn_rate", + "IncludeInCommandLine": false, + "DefaultValue": "1", + "EnumValues": { + "0": "None", + "1": "Low (default)", + "2": "Medium", + "3": "High" + } + }, + { + "DisplayName": "World Creation Settings", + "Category": "Stormworks - World Creation", + "Description": "These settings are for world creation. They may not be changed after the world is created. If needed, delete the \"working_server\" and \"saves\" directories to generate a new world.", + "Keywords": "", + "FieldName": "WorldCreationSettings", + "InputType": "hidden", + "IsFlagArgument": false, + "ParamFieldName": "", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "World Seed", + "Category": "Stormworks - World Creation", + "Description": "Sets the seed that will be used for the world generation. Blank = random.", + "Keywords": "world,seed,worldseed", + "FieldName": "seed", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@seed", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Start Island", + "Category": "Stormworks - World Creation", + "Description": "Sets the player base that will be owned on start.", + "Keywords": "start,island,startisland,base,island,baseisland,base_island", + "FieldName": "base_island", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@base_island", + "IncludeInCommandLine": false, + "DefaultValue": "data/tiles/island12.xml", + "EnumValues": { + "data/tiles/island_24.xml": "Airstrip Base", + "data/tiles/arctic_island_playerbase.xml": "Arctic: Island Base", + "data/tiles/arctic_tile_22.xml": "Arctic: Mainland Outpost", + "data/tiles/arctic_tile_12_oilrig.xml": "Arctic: Oil Platform", + "data/tiles/island_15.xml": "Creative Island", + "data/tiles/mega_island_15_2.xml": "Fishing Village Dock", + "data/tiles/island_25.xml": "Harbour Base", + "data/tiles/mega_island_2_6.xml": "Harrison Airbase", + "data/tiles/test_tile.xml": "Helicopter Base", + "data/tiles/island_33_tile_33.xml": "Mainland Airstrip", + "data/tiles/island_34_military.xml": "Military Base", + "data/tiles/island_43_multiplayer_base.xml": "Multiplayer Base", + "data/tiles/mega_island_9_8.xml": "North Harbor Dock", + "data/tiles/mega_island_12_6.xml": "O'Neill Airbase", + "data/tiles/island12.xml": "Starter Base (default)", + "data/tiles/island_33_tile_end.xml": "Terminal Camodo", + "data/tiles/island_33_tile_32.xml": "Terminal Spycakes", + "data/tiles/arid_island_11_14.xml": "Arid DLC: Brainz Train Yard", + "data/tiles/arid_island_19_11.xml": "Arid DLC: Clarke Airfield", + "data/tiles/arid_island_7_5.xml": "Arid DLC: Ender Airfield", + "data/tiles/arid_island_26_14.xml": "Arid DLC: FJ Warner Docks", + "data/tiles/arid_island_24_3.xml": "Arid DLC: JSI Dock", + "data/tiles/arid_island_12_10.xml": "Arid DLC: Mauve Train Yard", + "data/tiles/arid_island_19_12.xml": "Arid DLC: Monkey Brain Launch Site", + "data/tiles/arid_island_5_14.xml": "Arid DLC: North Meier Outpost", + "data/tiles/arid_island_6_7.xml": "Arid DLC: Serpentine Trainyard", + "data/tiles/arid_island_8_15.xml": "Arid DLC: Uran Wind Power Plant Docks", + "data/tiles/island_31_playerbase_combo.xml": "Custom: Boat Base Small", + "data/tiles/island_30_playerbase_boat.xml": "Custom: Boat Base Large", + "data/tiles/island_32_playerbase_heli.xml": "Custom: Heli Base (structure workbench only)", + "data/tiles/oil_rig_playerbase.xml": "Custom: Oil Rig Base (structure workbench only)", + "data/tiles/island_29_playerbase_submarine.xml": "Custom: Submarine Base" + } + }, + { + "DisplayName": "Starting Currency", + "Category": "Stormworks - World Creation", + "Description": "Sets the amount of money the players start with at world creation.", + "Keywords": "money,starting,startingmoney,currency,startingcurrency,starting_currency", + "FieldName": "starting_currency", + "InputType": "number", + "MinValue":"0", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@starting_currency", + "DefaultValue": "20000", + "Placeholder": "20000", + "IncludeInCommandLine": false, + "EnumValues": {} + }, + { + "DisplayName": "Enable Settings Menu", + "Category": "Stormworks - World Creation", + "Description": "If set, enables the custom settings menu in-game (available only for admins if Lock Settings Menu is enabled). Otherwise, make sure to set all of the settings under the \"Stormworks - Gameplay\" menu since you won't be able to change them in-game.", + "Keywords": "settings,menu,settingsmenu,lock,menulock,settings_menu", + "FieldName": "settings_menu", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@settings_menu", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Lock Settings Menu", + "Category": "Stormworks - World Creation", + "Description": "If set, only admins can access the custom settings menu in-game (assuming it is enabled). Otherwise, all players will be able to access the menu if it is enabled.", + "Keywords": "settings,menu,settingsmenu,lock,menulock,settings_menu_lock", + "FieldName": "settings_menu_lock", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@settings_menu_lock", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Search & Destroy DLC", + "Category": "Stormworks - World Creation", + "Description": "If set, enables Search & Destroy DLC content for a new world.", + "Keywords": "dlc,search,destroy,arid,enabledlc,searchdestroy,dlc_weapons", + "FieldName": "dlc_weapons", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@dlc_weapons", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Industrial Frontier DLC", + "Category": "Stormworks - World Creation", + "Description": "If set, enables Industrial Frontier DLC content for a new world.", + "Keywords": "dlc,industrial,frontier,industrial,industrialfrontier,enabledlc,dlc_arid", + "FieldName": "dlc_arid", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@dlc_arid", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Gameplay Settings", + "Category": "Stormworks - Gameplay", + "Description": "These settings are for configuring gameplay options for a world. Note that changing them may not update a save game. These settings can also be changed in-game if \"Enable Settings Menu\" under \"Stormworks - World Creation\" is set. If needed, delete the \"working_server\" and \"saves\" directories to generate a new world, or try to edit \"scene.xml\" under each of these folders (untested).", + "Keywords": "", + "FieldName": "GameplaySettings", + "InputType": "hidden", + "IsFlagArgument": false, + "ParamFieldName": "", + "IncludeInCommandLine": false, + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Day & Night Length", + "Category": "Stormworks - Gameplay", + "Description": "Sets the length of the day (in real-time minutes).", + "Keywords": "day,night,daynight,length,day_night_length", + "FieldName": "day_night_length", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@day_night_length", + "IncludeInCommandLine": false, + "DefaultValue": "60", + "EnumValues": { + "1":"1", + "10":"10", + "20":"20", + "30":"30", + "40":"40", + "50":"50", + "60":"60 (default)", + "70":"70", + "80":"80", + "90":"90", + "100":"100", + "110":"110", + "120":"120" + } + }, + { + "DisplayName": "Sunrise Time", + "Category": "Stormworks - Gameplay", + "Description": "Sets the sunrise time (as fraction of day & night length)", + "Keywords": "sunrise,time,day,night,daynight", + "FieldName": "sunrise", + "InputType": "number", + "MinValue": "0", + "MaxValue": "1", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@sunrise", + "IncludeInCommandLine": false, + "DefaultValue": "0.25", + "Placeholder": "0.25", + "EnumValues": {} + }, + { + "DisplayName": "Sunset Time", + "Category": "Stormworks - Gameplay", + "Description": "Sets the sunset time (as fraction of day & night length)", + "Keywords": "sunset,time,day,night,daynight", + "FieldName": "sunset", + "InputType": "number", + "MinValue": "0", + "MaxValue": "1", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@sunset", + "IncludeInCommandLine": false, + "DefaultValue": "0.791", + "Placeholder": "0.791", + "Suffix": "", + "EnumValues": {} + }, + { + "DisplayName": "Override Time", + "Category": "Stormworks - Gameplay", + "Description": "If set, the option to override time will be enabled.", + "Keywords": "time,override,timeoverride,override_time,overridetime", + "FieldName": "override_time", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@override_time", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Override Weather", + "Category": "Stormworks - Gameplay", + "Description": "If set, the option to override weather (fog, wind, rain and snow) will be enabled.", + "Keywords": "weather,rain,snow,wind,fog,override,overrideweather,override_weather", + "FieldName": "override_weather", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@override_weather", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Override Wind Direction", + "Category": "Stormworks - Gameplay", + "Description": "If set, the option to override the wind direction will be enabled.", + "Keywords": "wind,direction,winddirrection,override,overridewind,override_wind", + "FieldName": "override_wind", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@override_wind", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Vehicle Damage", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, vehicles can take damaged. Otherwise, they will be indestructible.", + "Keywords": "vehicle,damage,vehicledamage,vehicle_damage", + "FieldName": "vehicle_damage", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@vehicle_damage", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Engine Overheating", + "Category": "Stormworks - Gameplay", + "Description": "If set, engine overheating simulation will be enabled, thereby allowing engine fires.", + "Keywords": "engine,over,heat,overheat,overheating,engine_overheating", + "FieldName": "engine_overheating", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@engine_overheating", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Player Damage", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, players can take damaged. Otherwise, they will be indestructible.", + "Keywords": "player,damage,playerdamage,player_damage", + "FieldName": "player_damage", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@player_damage", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable NPC Damage", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, NPCs can take damaged. Otherwise, they will be indestructible.", + "Keywords": "npc,damage,npcdamage,npc_damage", + "FieldName": "npc_damage", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@npc_damage", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Aggressive Animals", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, aggressive animals can spawn.", + "Keywords": "aggressive,agro,animals,aggressiveanimals,aggressive_animals", + "FieldName": "aggressive_animals", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@aggressive_animals", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Sea Monsters", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, sea monsters (aggressive monsters) can spawn.", + "Keywords": "aggressive,agro,animals,monsters,sea,seamonsters,sea_monsters", + "FieldName": "sea_monsters", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@sea_monsters", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Lightning", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows lightning that can hit vehicles at some altitude.", + "Keywords": "lightning", + "FieldName": "lightning", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@lightning", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Infinite Resources", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, removes money, fuel and minerals requirements for vehicle workbenches.", + "Keywords": "infinite,resources,money,fuel,minerals,infinite_resources", + "FieldName": "infinite_resources", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@infinite_resources", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Infinite Batteries", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, removes electric power requirments for vehicle components.", + "Keywords": "infinite,battery,batteries,infinite_batteries", + "FieldName": "infinite_batteries", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@infinite_batteries", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Infinite Fuel", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, removes fuel and air requirements for vehicle components.", + "Keywords": "infinite,fuel,air,infinite_fuel", + "FieldName": "infinite_fuel", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@infinite_fuel", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Infinite Ammo", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, removes ammo requirements for weapons (requires DLC).", + "Keywords": "dlc,search,destroy,arid,enabledlc,searchdestroy,ammo,ammunition,weapons,infinite,dlc_weapons,infinite_ammo", + "FieldName": "infinite_ammo", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@infinite_ammo", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Ceasefire", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, prevents weapon usage (requires DLC).", + "Keywords": "dlc,search,destroy,arid,enabledlc,searchdestroy,weapons,dlc_weapons,ceasefire", + "FieldName": "ceasefire", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@ceasefire", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Unlock Components", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, the server starts with all vehicle components researched (that is, disables research).", + "Keywords": "research,unlock,components,vehicle,unlock_components", + "FieldName": "unlock_components", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@unlock_components", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Show Players On Map", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, the server displays player icons on the map.", + "Keywords": "map,show,player,icons,map_show_players", + "FieldName": "map_show_players", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@map_show_players", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Show Vehicles On Map", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, the server displays player vehicle icons on the map.", + "Keywords": "map,show,vehicle,icons,map_show_vehicles", + "FieldName": "map_show_vehicles", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@map_show_vehicles", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Show 3D Waypoints", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, the server displays the player waypoint on the HUD.", + "Keywords": "hud,show,player,waypoint,show_3d_waypoints", + "FieldName": "show_3d_waypoints", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@show_3d_waypoints", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Third Person Player Camera", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows the third person camera for player characters.", + "Keywords": "third,person,player,camera,character,third_person", + "FieldName": "third_person", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@third_person", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Third Person Vehicle Camera", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows the third person camera for player vehicles.", + "Keywords": "third,person,camera,vehicle,third_person_vehicle", + "FieldName": "third_person_vehicle", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@third_person_vehicle", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Show Name Plates", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, the server displays player name plates above their characters.", + "Keywords": "show,player,name,plates,character,show_name_plates", + "FieldName": "show_name_plates", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@show_name_plates", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable No Clip Camera", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, prevents the camera from clipping through blocks, thereby preventing the third person view through creation.", + "Keywords": "no,clip,camera,clipping,no_clip", + "FieldName": "no_clip", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@no_clip", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Photo Mode", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows players to enter photo mode.", + "Keywords": "camera,player,photo,mode,photo_mode", + "FieldName": "photo_mode", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@photo_mode", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Map Teleport", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows players to teleport using the map.", + "Keywords": "map,teleport,fast,travel,vehicle,map_teleport", + "FieldName": "map_teleport", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@map_teleport", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Fast Travel", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows players to fast travel to bases.", + "Keywords": "map,teleport,fast,travel,vehicle,fast_travel", + "FieldName": "fast_travel", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@fast_travel", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Teleport Vehicles", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows workbench-spawned vehicles to be teleported back to bases.", + "Keywords": "map,teleport,fast,travel,vehicle,teleport_vehicle", + "FieldName": "teleport_vehicle", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@teleport_vehicle", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Vehicle Spawning", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows authorized players to spawn vehicles and use the workbench.", + "Keywords": "vehicle,workbench,spawning,spawn,authorized,vehicle_spawn", + "FieldName": "vehicle_spawn", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@vehicle_spawn", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Respawning", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows players to respawn. Disable this setting for hardcore or MMO PvP servers.", + "Keywords": "respawning,player,spawn", + "FieldName": "respawning", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@respawning", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Enable Vehicle Cleanup On Map", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, allows player vehicle cleanup using the map.", + "Keywords": "cleanup,vehicles,map,cleanup_vehicle", + "FieldName": "cleanup_vehicle", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@cleanup_vehicle", + "IncludeInCommandLine": false, + "DefaultValue": "true", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Clear Fog Of War", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, removes fog of war on the map (cannot be undone using the settings menu).", + "Keywords": "fow,clear,map,fog,war,view,reveal,clear_fow", + "FieldName": "clear_fow", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@clear_fow", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + }, + { + "DisplayName": "Unlock All Islands", + "Category": "Stormworks - Gameplay", + "Description": "If enabled, sets all bases to a purchased state (cannot be undone using the settings menu).", + "Keywords": "map,base,purchase,unlock,island,islands,unlock_all_islands", + "FieldName": "unlock_all_islands", + "InputType": "checkbox", + "IsFlagArgument": false, + "ParamFieldName": "/server_data/@unlock_all_islands", + "IncludeInCommandLine": false, + "DefaultValue": "false", + "EnumValues": { + "False": "false", + "True": "true" + } + } +] diff --git a/stormworksmetaconfig.json b/stormworksmetaconfig.json new file mode 100644 index 0000000..47ba949 --- /dev/null +++ b/stormworksmetaconfig.json @@ -0,0 +1,7 @@ +[ + { + "ConfigFile": "server_config.xml", + "ConfigType": "xml", + "AutoMap": true + } +] diff --git a/stormworksports.json b/stormworksports.json new file mode 100644 index 0000000..4ff2e07 --- /dev/null +++ b/stormworksports.json @@ -0,0 +1,16 @@ +[ + { + "Protocol": "UDP", + "Port": "25564", + "Name": "Game Port", + "Description": "Port used for main game traffic", + "Ref": "GamePort" + }, + { + "Protocol": "UDP", + "Port": "25565", + "Name": "Query Port", + "Description": "Port used for query traffic", + "Ref": "QueryPort" + } +] diff --git a/stormworksserver_config.xml b/stormworksserver_config.xml new file mode 100644 index 0000000..b298fa6 --- /dev/null +++ b/stormworksserver_config.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/stormworksupdates.json b/stormworksupdates.json new file mode 100644 index 0000000..a13ad31 --- /dev/null +++ b/stormworksupdates.json @@ -0,0 +1,26 @@ +[ + { + "UpdateStageName": "Update", + "UpdateSourcePlatform": "All", + "UpdateSource": "SteamCMD", + "UpdateSourceData": "1247090", + "UpdateSourceArgs": "573090", + "ForceDownloadPlatform": "Windows" + }, + { + "UpdateStageName": "Config Template Download", + "UpdateSourcePlatform": "All", + "UpdateSource": "FetchURL", + "OverwriteExistingFiles": false, + "UpdateSourceData": "https://raw.githubusercontent.com/CubeCoders/AMPTemplates/main/stormworksserver_config.xml", + "UpdateSourceTarget": "{{$FullBaseDir}}", + "UpdateSourceArgs": "server_config.xml" + }, + { + "UpdateStageName": "Initialise Wine", + "UpdateSourcePlatform": "Linux", + "UpdateSource": "Executable", + "UpdateSourceData": "/bin/bash", + "UpdateSourceArgs": "-c 'WINEPREFIX=\"{{$FullRootDir}}.wine\" WINEARCH=win64 /usr/bin/wineboot --init --update'" + } +]