Now works with spectated cars, better standing/pitted car ignorance and takes load off the MR servers
Update helicorsa v5
...on the drawing side, I think rendering is now a bit faster and doesn't ever rely on the hard disk. So freezes because of loading indicator images on the sleeping hard drive during the sessions won't happen anymore.
MR also doesn't draw the cars manually now, they're all textured (lost hope for a car facing vector^^).
Minor calculation improvements as well, should be overall smoother now.
Fixes since v4 that were just published in a overwritable .py file are now properly worked in:
- shared opacity with Ney's maps app
- logfile error message for the broken shared memory
- removed code around the blue flag feature, after we have a Kunos blue flag for months now
- cars without drivers won't be shown around the track
Configuration & Steam Workshop compability
I'm aware that quite some of you tweak you helicorsa via the settings.py - this is not a good method as it's probably overwritten some day. One step ahead maybe some day there is a Steam Workshop integration, then it would auto-update your settings to default. As I don't want to release v6, the configuration now moved to the <you>/documents/Assetto Corsa/cfg/apps/helicorsa.ini - next to your AC config, screenshots and replays. The ini-file is created on the first launch of helicorsa v5.
You can copy most of your current settings if you have altered your heliSettings.py.
As there is no possibility for me to auto-generate the comments, have them here (you can also copy+paste this to your ini to have commented settings):
[helicorsa] #name of the skin for the Minorating display; #default package: candy, subtle, colorblind. use "off" to disable the MR integration completly minoratingskin = candy #shows the radar background on 1 showbackgroundpic = 1 #shows or hides the half circle overlap indicators showindicators = 1 #shows or hides the car representations (indicators still would work) showcars = 1 #This is the zoom factor for the whole app. #1.0-1.2 is normal on a 24" with full hd. Increase to have it bigger (e.g. 1.5), decrease to minimize (e.g. 0.7) guizoomfactor = 1.2 #We can make the whole app semi-transparent, so it's even less disturbing. 1.0 = full opacity, 0.0 = invisible maxiumalpha = 0.9 #how long is the title and background visible after helicorsa is activated (in seconds)? showtitle = 5 #world coordinates zoom, or how high the helicopter is flying above your car worldzoom = 5 #Opacity threshold: At wich distance (in meters) should the cars start to fade? #8 would be around 2 car lenghts opacitythreshold = 8.0 #fade out cars in front of the player in an arc of X degrees (0 to disable) frontfadeoutarc = 90 #if a car in front is faded out, how soft should it fade? (again in degrees, 0 to disable = on/off, 10? is default and quite nice) frontfadeangle = 10 #how big are the cars (in meters). Sorry, no data from ac available carlength = 4.3 carwidth = 1.8 #Distance threshold: How far away are the cars we paint? (meters) distancethreshold = 30.0 #Update threshold: Do calculations every X seconds. 0 would be as often as possible, higher values won't #let the map be smooth (but faster). Default is 0.03 ~= 30 fps updatethreshold = 0.03 #The background will be shortly after the app is shown (see showTitle). #Unfortunately the background will stay after you click the app while racing, e.g. in a pitstop #This is fixed by setting the background every frame, but this could affect performance. #Switch to 0 if in doubt removebackgroundeveryframe = 1
In a shameless attempt to get more drivers picking a MR server, helicorsa will now tell you something about the racecraft or danger potential of the drivers nearby (on a Minorating observed server only, of course).
I found helicorsa is a perfect place for that, and it works pretty well. Green (proven A or B driver) = go for it; orange or even red (D or W) is to handle with highest caution.
How does it work? Simply, log in any MR server (ALOOG, Marty, www.minorating.com are good first addresses here). Yes, even do it if it's empty but you like the car selection - drivers will follow you. That's it.
Helicorsa will now display the different grades in simple danger-aware colors and styles, dependent on the "skin pack" you use:
Candy is the default skin and tries to use simple colors to warn about the danger level. Turned out pretty ... candy, but well. I like it!
Subtle tries the same than candy, just ignores "the good" - signs are getting clearer the lower the grade is.
Not everybody can read different colors without problems, or maybe you just don't want helicorsa to look like a christmas tree.
If you aren't interested in this, you can turn off the feature completly by opening the documents\Assetto Corsa\cfg\apps\helicorsa.ini and switch the first value from "candy" to "off":
[helicorsa] minoratingskin = off
You are concerned about the data helicorsa sends to an unknown (=Minorating) backend? Congratulations!
I'll try to explain what happens in the background:
Everytime, helicorsa is activated (e.g. after a loading screen), it will call Minorating and send
- your name
- your car model
- the current track
Yes, unfortunately the app can't (easily) tell if this is a multiplayer or single player session. Helicorsa will call even for a replay.
If Minorating knows this as a currently active session, it sends back your steamId and the sessionId for further calls, alongside with all the driver grades.
Whenever somebody joins the race, helicorsa will do the same call again after 1-20 seconds, this time with your steamId and sessionId - so MR can be much faster to answer.
Both aren't stored on your PC.
Nothing of that will happen if you set the minoratingSkin = off.
I know you guys, the first reactions will be "you can't easily distinct between B and D in the colorblind skin", "candy looks to candy", "can we have X" - just do it.
Skins are 100% moddable, I'd suspect they could even exist in a Steam Workshop. Just invent a skin name like "example", and create the files
I've included the templates for candy, subtle + colorblind in the img folder as .psd files, so you have examples.
Publish a zip, people will only need to unzip this to the "assettocorsa\apps\python\helicorsa\img" folder and switch the skin via the .ini file:
[helicorsa] minoratingskin = example
enable / disable features with a simple line edit.
6. The blue flag doesn't work out in practice&qualifing
Fixed. Now we have zero false positives in race, and the blue-flag is shut down in P/Q.
I still have an idea regarding Qualifying blue flag, but this has to be discussed first.