From e0ee1d9a9c28f21a8cbc1ba71bd1faa719d412b4 Mon Sep 17 00:00:00 2001 From: Greelan <53196309+Greelan@users.noreply.github.com> Date: Tue, 4 Oct 2022 01:08:08 +1100 Subject: [PATCH] Add Assetto Corsa (#194) --- assetto-corsa.kvp | 81 +++++ assetto-corsaconfig.json | 641 +++++++++++++++++++++++++++++++++++ assetto-corsametaconfig.json | 8 + 3 files changed, 730 insertions(+) create mode 100644 assetto-corsa.kvp create mode 100644 assetto-corsaconfig.json create mode 100644 assetto-corsametaconfig.json diff --git a/assetto-corsa.kvp b/assetto-corsa.kvp new file mode 100644 index 0000000..310af9a --- /dev/null +++ b/assetto-corsa.kvp @@ -0,0 +1,81 @@ +Meta.DisplayName=Assetto Corsa +Meta.Description=Assetto Corsa Dedicated Server +Meta.OS=Windows, Linux +Meta.Arch=x86_64 +Meta.Author=Greelan +Meta.URL=https://steamdb.info/app/244210 +Meta.DisplayImageSource=steam:244210 +Meta.EndpointURIFormat= +Meta.ConfigManifest=assetto-corsaconfig.json +Meta.MetaConfigManifest=assetto-corsametaconfig.json +Meta.ConfigRoot=assetto-corsa.kvp +Meta.MinAMPVersion=2.4.0.2 +Meta.SpecificDockerImage=cubecoders/ampbase:wine +Meta.DockerRequired=False +Meta.ContainerPolicy=RecommendedOnLinux +Meta.Prerequsites=[] +Meta.ConfigReleaseState=NotSpecified +App.DisplayName=Assetto Corsa +App.RootDir=./assetto-corsa/ +App.BaseDirectory=./assetto-corsa/302550 +App.ExecutableWin=302550\acServer.exe +App.ExecutableLinux=/usr/bin/xvfb-run +App.WorkingDir=302550 +App.LinuxCommandLineArgs=-a wine "./acServer.exe" +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} {{$FormattedArgs}} +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"244210"} +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=[{"Protocol":"Both","Port":9600,"Ref":"GamePort","Name":"Game Port","Description":"Port for game traffic"},{"Protocol":"TCP","Port":9601,"Ref":"HTTPPort","Name":"HTTP Port","Description":"Port for lobby info"}] +App.PrimaryApplicationPortRef=GamePort +App.UniversalSleepApplicationUDPPortRef=GamePort +App.UniversalSleepSteamQueryPortRef=GamePort +App.MaxUsers=18 +App.UseRandomAdminPassword=False +App.RemoteAdminPassword=Password123 +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.TelnetLoginFormat={0} +App.UpdateSources=[{"UpdateStageName":"SteamCMD Server Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"302550","ForceDownloadPlatform":"Windows"}] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=False +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.MonitorChildProcess=True +App.MonitorChildProcessWaitMs=2000 +App.MonitorChildProcessName=wine +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +App.TemplateMatchRegex={{(\$?[\w]+)}} +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex=^((WARNING|ERROR): Shader.+|\d+:err:ole:.*|Could not find Wine Gecko.*)$ +Console.AppReadyRegex=^Server started$ +Console.UserJoinRegex=^DRIVER ACCEPTED FOR CAR (?.+?)$ +Console.UserLeaveRegex=^Clean exit, driver disconnected:\s+(?.+?) \[\]$ +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 diff --git a/assetto-corsaconfig.json b/assetto-corsaconfig.json new file mode 100644 index 0000000..79777c0 --- /dev/null +++ b/assetto-corsaconfig.json @@ -0,0 +1,641 @@ +[ + { + "DisplayName":"UDP Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$GamePort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"SERVER.UDP_PORT", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"TCP Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$GamePort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"SERVER.TCP_PORT", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"HTTP Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$HTTPPort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"SERVER.HTTP_PORT", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Server Name", + "Category":"Server Settings", + "Description":"The name of the server as it appears publicly", + "Keywords":"name", + "FieldName":"SERVER_NAME", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.NAME", + "IncludeInCommandLine":false, + "DefaultValue":"Assetto Corsa Server - Powered by AMP", + "EnumValues":{} + }, + { + "DisplayName":"Make Server Public", + "Category":"Server Settings", + "Description":"If enabled, the server will be registered in the in-game lobby", + "Keywords":"public", + "FieldName":"SERVER_REGISTER_TO_LOBBY", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.REGISTER_TO_LOBBY", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "True":"1", + "False":"0" + } + }, + { + "DisplayName":"Server Password", + "Category":"Server Settings", + "Description":"Password to connect to the server. Default is no password", + "Keywords":"password", + "FieldName":"SERVER_PASSWORD", + "InputType":"password", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.PASSWORD", + "IncludeInCommandLine":false, + "DefaultValue":"", + "EnumValues":{} + }, + { + "DisplayName":"Admin Password", + "Category":"Server Settings", + "Description":"In-game \"admin\" user password (can be used to join instead of the server password). NOTE: Change this after installing the server!", + "Keywords":"admin,password", + "FieldName":"SERVER_ADMIN_PASSWORD", + "InputType":"password", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.ADMIN_PASSWORD", + "IncludeInCommandLine":false, + "DefaultValue":"mypassword", + "EnumValues":{} + }, + { + "DisplayName":"Player Limit", + "Category":"Server Settings", + "Description":"Maximum number of players that may connect to the server. Must be less than the number of pits for the selected track", + "Keywords":"players,limit", + "FieldName":"$MaxUsers", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.MAX_CLIENTS", + "IncludeInCommandLine":false, + "DefaultValue":"18", + "Suffix":"players", + "EnumValues":{} + }, + { + "DisplayName":"Blacklist Mode", + "Category":"Server Settings", + "Description":"Sets the blacklist mode", + "Keywords":"blacklist,mode", + "FieldName":"SERVER_BLACKLIST_MODE", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.BLACKLIST_MODE", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"Kick and allow rejoin", + "1":"Kick until server restart", + "2":"Kick and add to blacklist" + } + }, + { + "DisplayName":"Kick Quorum", + "Category":"Server Settings", + "Description":"Voting percentage threshold required to kick a player", + "Keywords":"kick,quorum", + "FieldName":"SERVER_KICK_QUORUM", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.KICK_QUORUM", + "IncludeInCommandLine":false, + "DefaultValue":"85", + "Suffix":"%", + "Placeholder":"85", + "EnumValues":{} + }, + { + "DisplayName":"Voting Quorum", + "Category":"Server Settings", + "Description":"Voting percentage threshold required for the SESSION vote to pass", + "Keywords":"vote,voting,quorum", + "FieldName":"SERVER_VOTING_QUORUM", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.VOTING_QUORUM", + "IncludeInCommandLine":false, + "DefaultValue":"80", + "Suffix":"%", + "Placeholder":"80", + "EnumValues":{} + }, + { + "DisplayName":"Voting Duration", + "Category":"Server Settings", + "Description":"Time during which a SESSION vote is open", + "Keywords":"vote,voting,duration", + "FieldName":"SERVER_VOTE_DURATION", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.VOTE_DURATION", + "IncludeInCommandLine":false, + "DefaultValue":"20", + "Suffix":"seconds", + "Placeholder":"20", + "EnumValues":{} + }, + { + "DisplayName":"Track Selection", + "Category":"Gameplay Settings", + "Description":"Sets the track for the server. Select a track name from \"content/tracks\"", + "Keywords":"track", + "FieldName":"SERVER_TRACK", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.TRACK", + "IncludeInCommandLine":false, + "DefaultValue":"magione", + "EnumValues":{} + }, + { + "DisplayName":"Track Variant Selection", + "Category":"Gameplay Settings", + "Description":"Sets the variant of the server track. Select a variant name for the selected track from \"content/tracks/TRACK\"", + "Keywords":"track,subversion", + "FieldName":"SERVER_CONFIG_TRACK", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.CONFIG_TRACK", + "IncludeInCommandLine":false, + "DefaultValue":"", + "EnumValues":{} + }, + { + "DisplayName":"Car Selection", + "Category":"Gameplay Settings", + "Description":"Semi-colon separated list of car types that are allowed on the server. Select car name(s) from \"content/cars\"", + "Keywords":"track", + "FieldName":"SERVER_CARS", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.CARS", + "IncludeInCommandLine":false, + "DefaultValue":"bmw_m3_e30", + "EnumValues":{} + }, + { + "DisplayName":"Race Name", + "Category":"Gameplay Settings", + "Description":"Sets the name of the race", + "Keywords":"race,name", + "FieldName":"RACE_NAME", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"RACE.NAME", + "IncludeInCommandLine":false, + "DefaultValue":"Race", + "EnumValues":{} + }, + { + "DisplayName":"Race Laps", + "Category":"Gameplay Settings", + "Description":"Sets the number of laps for the race", + "Keywords":"race,laps", + "FieldName":"RACE_LAPS", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"RACE.LAPS", + "IncludeInCommandLine":false, + "DefaultValue":"5", + "EnumValues":{} + }, + { + "DisplayName":"Race Wait Time", + "Category":"Gameplay Settings", + "Description":"Sets the period of time before the start of the session", + "Keywords":"race,wait,time", + "FieldName":"RACE_WAIT_TIME", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"RACE.WAIT_TIME", + "IncludeInCommandLine":false, + "DefaultValue":"60", + "Suffix":"seconds", + "EnumValues":{} + }, + { + "DisplayName":"Race Over Time", + "Category":"Gameplay Settings", + "Description":"Time remaining to finish the race from the moment the first player passes the finish line", + "Keywords":"race,over,time", + "FieldName":"SERVER_RACE_OVER_TIME", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.RACE_OVER_TIME", + "IncludeInCommandLine":false, + "DefaultValue":"180", + "Suffix":"seconds", + "Placeholder":"180", + "EnumValues":{} + }, + { + "DisplayName":"Race Join Status", + "Category":"Gameplay Settings", + "Description":"Sets the join status for the race", + "Keywords":"race,join,open", + "FieldName":"RACE_IS_OPEN", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"RACE.IS_OPEN", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"No join", + "1":"Free join", + "2":"Free join until 20 secs before green light" + } + }, + { + "DisplayName":"Qualifying Session Name", + "Category":"Gameplay Settings", + "Description":"Sets the name of the qualifying session", + "Keywords":"qualify,name", + "FieldName":"QUALIFY_NAME", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"QUALIFY.NAME", + "IncludeInCommandLine":false, + "DefaultValue":"Qualify", + "EnumValues":{} + }, + { + "DisplayName":"Qualifying Session Time", + "Category":"Gameplay Settings", + "Description":"Sets the period of time for the qualifying session", + "Keywords":"qualify,time", + "FieldName":"QUALIFY_TIME", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"QUALIFY.TIME", + "IncludeInCommandLine":false, + "DefaultValue":"10", + "Suffix":"minutes", + "EnumValues":{} + }, + { + "DisplayName":"Qualifying Session Join Status", + "Category":"Gameplay Settings", + "Description":"Sets the join status for the qualifying session", + "Keywords":"qualify,join,open", + "FieldName":"QUALIFY_IS_OPEN", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"QUALIFY.IS_OPEN", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"No join", + "1":"Free join" + } + }, + { + "DisplayName":"Practice Session Name", + "Category":"Gameplay Settings", + "Description":"Sets the name of the practice session", + "Keywords":"practice,name", + "FieldName":"PRACTICE_NAME", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"PRACTICE.NAME", + "IncludeInCommandLine":false, + "DefaultValue":"Practice", + "EnumValues":{} + }, + { + "DisplayName":"Practice Session Time", + "Category":"Gameplay Settings", + "Description":"Sets the period of time for the practice session", + "Keywords":"practice,time", + "FieldName":"PRACTICE_TIME", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"PRACTICE_TIME", + "IncludeInCommandLine":false, + "DefaultValue":"10", + "Suffix":"minutes", + "EnumValues":{} + }, + { + "DisplayName":"Practice Session Join Status", + "Category":"Gameplay Settings", + "Description":"Sets the join status for the practice session", + "Keywords":"practice,join,open", + "FieldName":"PRACTICE_IS_OPEN", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"PRACTICE.IS_OPEN", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"No join", + "1":"Free join" + } + }, + { + "DisplayName":"Enable Loop Mode", + "Category":"Gameplay Settings", + "Description":"If enabled, the server restarts from the first track", + "Keywords":"loop,mode", + "FieldName":"SERVER_LOOP_MODE", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.LOOP_MODE", + "IncludeInCommandLine":false, + "SkipIfEmpty":false, + "DefaultValue":"1", + "EnumValues":{ + "False":"0", + "True":"1" + } + }, + { + "DisplayName":"Fuel Rate", + "Category":"Gameplay Settings", + "Description":"Sets the fuel usage rate. 0 = no fuel usage, 100 = a realistic rate", + "Keywords":"fuel,rate", + "FieldName":"SERVER_FUEL_RATE", + "InputType":"number", + "MinValue":"0", + "MaxValue":"100", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.FUEL_RATE", + "IncludeInCommandLine":false, + "DefaultValue":"100", + "Placeholder":"100", + "EnumValues":{} + }, + { + "DisplayName":"Damage Multiplier", + "Category":"Gameplay Settings", + "Description":"Sets the damage multiplier", + "Keywords":"damage,multiplier", + "FieldName":"SERVER_DAMAGE_MULTIPLIER", + "InputType":"number", + "MinValue":"0", + "MaxValue":"100", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.DAMAGE_MULTIPLIER", + "IncludeInCommandLine":false, + "DefaultValue":"100", + "Placeholder":"0-100", + "EnumValues":{} + }, + { + "DisplayName":"Tyre Types Allowed", + "Category":"Gameplay Settings", + "Description":"Semi-colon separated list of tyre shortnames that are allowed on the server. Select from SV, ST, SM, SS, S, M, H, SH, HR, I, V", + "Keywords":"legal,tyres", + "FieldName":"SERVER_LEGAL_TYRES", + "InputType":"text", + "IsFlagArgument":false, + "Hidden":false, + "ParamFieldName":"SERVER.LEGAL_TYRES", + "IncludeInCommandLine":false, + "DefaultValue":"SV", + "Placeholder":"V;E;HR;ST", + "EnumValues":{} + }, + { + "DisplayName":"Tyre Wear Rate", + "Category":"Gameplay Settings", + "Description":"Sets the tyre wear usage rate. 0 = no tyre wear, 100 = a realistic rate", + "Keywords":"tyre,wear,rate", + "FieldName":"SERVER_TYRE_WEAR_RATE", + "InputType":"number", + "MinValue":"0", + "MaxValue":"100", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.TYRE_WEAR_RATE", + "IncludeInCommandLine":false, + "DefaultValue":"100", + "Placeholder":"0-100", + "EnumValues":{} + }, + { + "DisplayName":"Enable Tyre Blankets", + "Category":"Gameplay Settings", + "Description":"If enabled, tyres will have optimal temperature at the start of a session and after a pitstop", + "Keywords":"tyre,blankets", + "FieldName":"SERVER_TYRE_BLANKETS_ALLOWED", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.TYRE_BLANKETS_ALLOWED", + "IncludeInCommandLine":false, + "DefaultValue":"0", + "EnumValues":{ + "False":"0", + "True":"1" + } + }, + { + "DisplayName":"Allowed Tyres Out Number", + "Category":"Gameplay Settings", + "Description":"Sets the number of tyres allowed to be off-track without invalidating a lap", + "Keywords":"tyres,out", + "FieldName":"SERVER_ALLOWED_TYRES_OUT", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.ALLOWED_TYRES_OUT", + "IncludeInCommandLine":false, + "DefaultValue":"2", + "Placeholder":"2", + "EnumValues":{} + }, + { + "DisplayName":"Allow Anti-lock Braking System", + "Category":"Gameplay Settings", + "Description":"Sets whether anti-lock braking system is allowed", + "Keywords":"abs,anti-lock,braking", + "FieldName":"SERVER_ABS_ALLOWED", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.ABS_ALLOWED", + "IncludeInCommandLine":false, + "SkipIfEmpty":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"No car can use", + "1":"Only cars given ABS can use", + "2":"Any car can use" + } + }, + { + "DisplayName":"Allow Traction Control", + "Category":"Gameplay Settings", + "Description":"Sets whether traction control is allowed", + "Keywords":"tc,traction,control", + "FieldName":"SERVER_TC_ALLOWED", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.TC_ALLOWED", + "IncludeInCommandLine":false, + "SkipIfEmpty":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"No car can use", + "1":"Only cars given TC can use", + "2":"Any car can use" + } + }, + { + "DisplayName":"Enable Stability Assist", + "Category":"Gameplay Settings", + "Description":"If enabled, stability assist will apply", + "Keywords":"stability,assist", + "FieldName":"SERVER_STABILITY_ALLOWED", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.STABILITY_ALLOWED", + "IncludeInCommandLine":false, + "DefaultValue":"0", + "EnumValues":{ + "False":"0", + "True":"1" + } + }, + { + "DisplayName":"Enable Autoclutch Assist", + "Category":"Gameplay Settings", + "Description":"If enabled, autoclutch assist will apply", + "Keywords":"auto,clutch,assist", + "FieldName":"SERVER_AUTOCLUTCH_ALLOWED", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.AUTOCLUTCH_ALLOWED", + "IncludeInCommandLine":false, + "DefaultValue":"0", + "EnumValues":{ + "False":"0", + "True":"1" + } + }, + { + "DisplayName":"Enable Virtual Mirror", + "Category":"Gameplay Settings", + "Description":"If enabled, a virtual mirror will be enabled for every player", + "Keywords":"force,virtual,mirror", + "FieldName":"SERVER_FORCE_VIRTUAL_MIRROR", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.FORCE_VIRTUAL_MIRROR", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "False":"0", + "True":"1" + } + }, + { + "DisplayName":"Sun Position Angle", + "Category":"Gameplay Settings", + "Description":"Sets the angle of the position of the sun", + "Keywords":"sun,angle", + "FieldName":"SERVER_SUN_ANGLE", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"SERVER.SUN_ANGLE", + "IncludeInCommandLine":false, + "DefaultValue":"48", + "Suffix":"degrees", + "Placeholder":"48", + "EnumValues":{} + }, + { + "DisplayName":"Session Starting Grip", + "Category":"Gameplay Settings", + "Description":"Sets the percentage level of grip at the start of the session", + "Keywords":"session,start,grip", + "FieldName":"DYNAMIC_TRACK_SESSION_START", + "InputType":"number", + "MinValue":"0", + "MaxValue":"100", + "IsFlagArgument":false, + "ParamFieldName":"DYNAMIC_TRACK.SESSION_START", + "IncludeInCommandLine":false, + "DefaultValue":"95", + "Suffix":"%", + "Placeholder":"95", + "EnumValues":{} + }, + { + "DisplayName":"Session Starting Grip Randomness", + "Category":"Gameplay Settings", + "Description":"Sets the level of randomness added to the session starting grip", + "Keywords":"session,start,grip,random", + "FieldName":"DYNAMIC_TRACK_RANDOMNESS", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"DYNAMIC_TRACK.RANDOMNESS", + "IncludeInCommandLine":false, + "DefaultValue":"2", + "Suffix":"%", + "Placeholder":"2", + "EnumValues":{} + }, + { + "DisplayName":"Laps for Grip Gain", + "Category":"Gameplay Settings", + "Description":"Sets the number of laps needed to add 1% grip", + "Keywords":"grip,gain,laps", + "FieldName":"DYNAMIC_TRACK_LAP_GAIN", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"DYNAMIC_TRACK.LAP_GAIN", + "IncludeInCommandLine":false, + "DefaultValue":"10", + "Placeholder":"10", + "EnumValues":{} + }, + { + "DisplayName":"Grip Session Transfer", + "Category":"Gameplay Settings", + "Description":"Sets how much of the gained grip is to be added to the next session (as a percentage). 100 = all of the gained grip", + "Keywords":"grip,gain,session,transfer", + "FieldName":"DYNAMIC_TRACK_SESSION_TRANSFER", + "InputType":"number", + "MinValue":"0", + "MaxValue":"100", + "IsFlagArgument":false, + "ParamFieldName":"DYNAMIC_TRACK.SESSION_TRANSFER", + "IncludeInCommandLine":false, + "DefaultValue":"90", + "Suffix":"%", + "Placeholder":"90", + "EnumValues":{} + } +] \ No newline at end of file diff --git a/assetto-corsametaconfig.json b/assetto-corsametaconfig.json new file mode 100644 index 0000000..1091a3f --- /dev/null +++ b/assetto-corsametaconfig.json @@ -0,0 +1,8 @@ +[ + { + "ConfigFile":"cfg/server_cfg.ini", + "AutoMap":true, + "ConfigType":"ini", + "ConfigFormatRegex":"^(?.+?)=(?.*?)$" + } +] \ No newline at end of file