ACSM has multiple weather systems that can be switched between when creating a race.
The stock AC weather installation is the most simple, and does not require your drivers to install any client side software.
Stock AC weather does have some noteworthy limitations:
The basic settings for weather are all described in the race form itself:
If you are hosted with emperorservers.com Sol weathers come pre-loaded to your server, so you can skip this first paragraph!
In order to activate CSP/Sol Integration you must first upload the Sol weather graphics presets to your server. You can do this by going to the Content -> Weather page, clicking the Upload Weathers tab then uploading your Sol weathers from steamapps\common\assettocorsa\content\weather
(for example the sol_12_fog
folder), you can upload multiple weathers at once with drag and drop.
CSP/Sol Integration can be activated on the server by turning on the "Custom Shaders Patch/Sol Integration" switch at the top of the Weather section of any race form. In order for this to work drivers must install Content Manager, Custom Shaders Patch (can be installed via Content Manager as well) and Sol. All of these are developed by other great independent developers from the community who keep AC kicking, please consider supporting them for their hard work.
A driver without the above content installed will still be able to connect to the server, but the weather will be completely static for them and will not match what the other drivers are seeing.
CSP/Sol integration adds the following features:
But it does have the following limitations:
CSP Weather Transitions are a more recent extension of the CSP weather system that allows for smooth transitions between weathers. CSP Weather transitions also allow for smooth transitions between different levels of rain, temperatures, wind speeds and wind directions.
In order to activate this you must first activate CSP/Sol Integration as described above, then turn on the "Use CSP Weather Transitions" switch. Now a new "CSP Weather Transition Duration" setting will appear, which lets you control the length of the transitions betweene each configured weather for a session.
In order to see proper transitions drivers must be running a recent version of CSP, and in order to see rain effects they must be using a rain-enabled version of CSP, which are only available via the paid version from Patreon at the time of writing - 2022/05/04. Again drivers without CSP will see completely static weather for the entire session.
CSP Weather Transitions have all the features and benefits of CSP/Sol integration, and add the following:
With transitions enabled the session start time of the first configured weather (per session) will be used. All other session start times will be ignored.
If enabled then the "Session Start Date/Time" input will be converted from UTC to the timezone of the selected track (using the Geo Tag location of the track) by CSP. That means you need use a time zone converter to find the correct UTC time to enter here. Also if a track has no Geo Tags defined each user may see a different time of day. Unfortunately we have no control over this behavior.
When using CSP Weather Transitions we highly recommend setting the Weather FX Weather script in Content Manager to either
Default implementation
orPure
. Using theSol
script will cause the game to hang briefly whenever a transition starts.
If using ptracker with CSP Weather Transitions active we suggest using a chat filter to exclude messages from CSP, such as:
ACP:|PLP:|\$CSP0:
. This example will also filter messages from ACP and PLP.
The weighted random system uses the CSP transitions system as described above, but instead of allowing the admin to manually define the length and order of the weather presets a weather plan is randomly generated for each session, based on the weightings given to each weather slot.
The weighted random system automatically generates these values:
Every value can vary between fixed minimum and maximum values based on weighting or session length.
The system uses a graphing function to build a set of weightings, deciding what values are most likely to be selected between a defined minimum and maximum:
Where the variables in that equation are:
a
: maximum lengthd
: minimum lengthc
: midpointb
: ratio, currently fixed by ACSM, lower values increase "randomness" by flattening the graphx
: incremented from d
to a
, with the weighting of each value being storedFor duration the minimum is 1 minute and the maximum is event length/4, but no lower than 5 minutes.
For transition duration the minimum is 3 minutes and the maximum is event length/5, but no lower than 4 minutes.
Please note that each weather preset can be selected multiple times in a session, to give an example if you had "clear" with a low weighting, "overcast" with a medium weighting and "drizzle" with a high weighting as weather presets in your event you may end up with:
"overcast" -> "drizzle" -> "drizzle" -> "drizzle" -> "clear"
Then the next session may be:
"drizzle" -> "overcast" -> "overcast" -> "drizzle" -> "drizzle"
Available from v2.3.11
These options allow an admin to specify minimum durations for a weather preset when using the weighted random system. The durations may be higher than this given value, but not lower.
An example of when you may want to use this is for a preset that has rain (with physics) configured, in that scenario the automatic system may sometimes generate a transition that is faster than you may want if you want your drivers to have some warning time before needing to pit for wet tyres as the rain starts. This is especially helpful on very long tracks where the driver may be minutes away from reaching the pit lane!
As well as the main weather settings you can control some of the conditions, such as temperature, wind and track grip, in more detail.
Each weather preset has options for temperatures and wind speed/direction. Within each preset the temperature and wind is static, but will change when you transition from one weather preset to another.
Within each session the "Final" value for each of these conditions is calculated as below:
The dynamic track grip settings can be found in the Realism section of any race form, it is in some ways separate to weather but is included here as it is related.
The dynamic track grip system allows you to set a % level of grip at the start of the event, how many laps must be completed to add 1% to the grip level and how much of the gained grip in a session should be transferred to the next session in the event.
For example, with these settings:
If the event was made up of Qualifying -> Race then the Qualifying session would start with 92% grip. Say during the session 120 laps were completed, then at the end of the session the track would have 96% grip, a gain of 4%. With Session Transfer set to 50% the Race would start with 94% grip, and would reach 100% grip after 180 laps.
By default the time of day is set by the location chosen for the Live Weather when the Live Weather option is active, but it is possible to change the time of day by adding the following to "Extra Options":
[WEATHER_FX]
TIMEZONE = -25200
LATITUDE = 34.3
LONGITUDE = 118.14
Here timezone should be the offset from UTC in seconds that you would like, so -25200 is the timezone for Los Angeles. Latitude and Longitude should be set to a location matching your time offset, so again in this example Los Angeles.
For these time offsets to work properly clients must have "Use Seasonal Adjustment" turned on in their CSP options.
It is possible to enable Custom Shaders Patch physics, but there are some requirements that you must meet:
If you meet those requirements, please follow these steps when creating a race to enable custom CSP physics (including rain physics if it is raining):
[RAIN_PREVIEW]
INTENSITY = 1
REQUIRED = 1
WITH_PHYSICS = 1
5a. If you're using CSP Weather Transitions (or Live Weather) then the "intensity" is the maximum that the physics can reach, so you most likely want to leave it at 1, then the physics will match what you see (going from dry to wet and back again works properly). If you're not using transitions and want a fixed rain level set intensity to whatever level you would like.
The weather system can be a bit complicated to get used to, but it's very powerful when you know what you're doing! Let's work through a configuration example using CSP Weather Transitions from start to finish.
Let's set up an event with two sessions, qualifying and a race. In qualifying we'll set up a single weather preset, in order to make the conditions fixed for all drivers across the session. In the race we'll transition between two different weathers half way between the session, changing the graphics, temperatures and wind.
And we're done! Here are the main settings and then all three of the weather presets I just described, starting with the main settings:
Qualifying Weather:
Race Weather 1:
Race Weather 2: