proTyres gives you all the feedback you need about the tyres in one compact app, it’s only about the tyres, nothing else!
Inspired by the AC app Tyres and the work and concept of the brilliant apps Sidekick (by Topuz) and Tire PSI helper (by sacredaardvark). All pressures, temperatures and wear behavior are read from AC car data including curve files, for every car and each compound. Open source and mod cars is supported as well, please see text file in archive for details.
Color coding for temperature and pressures are close to AC standards. It’s all automatic, no user input needed.
So what could I expect and don’t expect?
How it looks out of the pit, with tyre blankets on:
Short overview of the main layout:
So how does it differ from AC Tyres?
Let’s see these two examples where proTyres and Tyres is compared side by side:
(each part of the tyre is visualized, dirty level bar is visible in the wear bar as an transparent overlay)
(the supersoft is a bit temp sensitive)
The python interface do not provide the instant contact temperature, so instead each part of the tyre gets its own box together with average in the center box. Visual representation of “flat spots” is not possible at the moment.
The thermal average is the shown value in main app (75% core + 25% average ring temperature). Colors of the boxes correspond to temperature grip level of the current compound, blue to red equals to 98-100-98% optimal grip.
Only shown in the overview, is the temp range indicator overlay shown in IMO boxes, the bar indicate where the current ring average is within the working range of the compound.
Pressure and wear indicators and settings
Pressure and wear is also visualized with two separate bars for each tyre.
Difference from optimal pressure is shown under actual pressure. Two horizontal lines shows when actual pressure is approximate within 2 psi from its target.
Colors of the wear bar is the same as Tyres with one difference regarding what the height of the bar actually represent:
- In Tyres -> height of the bar is virtual KM
- proTyres -> height of the bar is wear in 3 levels from none to high (green, yellow and red corresponding to levels 100, 98 and 96% )
Virtual KM is how far the tyre has traveled and could be more or less than actual distance depending on compound and driving style, this value is at the moment not available in the python interface.
Top right picture above shows the compact pressure label display mode.
For each compound there is possible to set an front and rear pressure offset from the ideal pressure that is saved with the current track temperature index as reference. White, red and blue color of the spinner text reflects the value compared to saved reference value (if any).See ini description for possible options.
One thing to remember is that all temperatures and pressures are target values on track, when leaving pit values may be incorrect.
This EOL level thing, what is that?
The app estimate the distance possible with decent grip levels on your current tyre set, it adapts to track conditions and driving style. The information is not directly available from AC, so it is an estimated end of life based on wear curve and other parameters.
Lets look a bit more in detail on the EOL level bar
For each track and tyre condition, the app needs to adapt to the wear rate and it starts when wear levels drops below 100%. This is then saved on car basis to be reused whenever the compound is used under similar conditions.
This is of great value, but I need more!
Press the info button for more details on the estimated values.
This is to much information, less is more!
Sometimes you need to focus on driving and not the app, the default display mode "Extend" can be replaced with the following ones:
You can toggle thru the modes using the green "Display Mode Button". With INI setting you can skip certain modes and/or set different default display modes for practice, qualify and race session. See INI options below for even more customization.
There is an debug window available and a short notice in the console after loading compound data (press home key), here is also error messages displayed (if any). Messages are also saved in py_log.txt
What about the options?
To create a default configuration delete existing ini and start the app, edit the config.ini and change the options to your personal liking:
range 1.0 - 3.0background
Standard -> default backgroundconfig_menu_mode
Plain -> plain black background (recomended for VR)
None -> no background
Close -> Menu is closed when leaving pitlane, open is manualdisable_button
Auto -> Menu is open/closed when in pitlane
Manual -> No automatic open/close of menu
(If Close or Auto is used, menu will be closed when not in pitlane)
None, Display, Config, Info, Allbw_buttons
(disable buttons, combinations possible i.e DisplayInfo)
If Config is disabled, pressure offsets is also disabled. For no button mode, use Auto, then button is not visible.
False -> use button with colorsuse_op_font
True -> use black & white buttons
False -> default font is usedop_font
True -> optional font is used, optional setting for VR users
font name, italic (0/1), bold (0/1)verbose_log
please see ini file for suggestion, must be available in AC fonts
false -> only errors is shown in console and py_log.txt
true -> informative and errors is shown in console and log.txt
Standard, Extend, Compact or CompactExtenddisplay_disabled
(default display mode for respective session mode)
None, Standard, Extend, Compact
(block selected display modes)
False -> no indication of new tyretemp_bar_mode
True -> indicate new tyre status, resets at wear level 100%
None -> no temp range bartop_tyre_mode
StandardRing -> average ring temp as range bar overlay in IMO box
False -> tyre ring temp is top/bottom for front/reardirty_bar_tyre
True -> tyre ring temp is always on top
False -> dirty bar is an overlay in wear baravg_peak_mode
True -> dirty bar is an overlay in average temp box
False -> thermal average is always showncenter_bar
True -> if IMO is overheating, highest temp is shown in avg box
False -> all bars is from bottom and up
True -> all bar is from center and out
Use psi, bar or kPa, affects actual and diff value. Note that AC pit options and pressure offsets is psi onlyaverage_seconds
rolling average in seconds, 0-30s, default is 5soffset_fallback
Temp (False) -> every temp range and compounds needs to be set manuallyoffset_temp_range
Track -> same as 'Temp' (no fallback) but offsets also bound to track
TempOnly (True) -> nearest saved offset for used compound will be used, if switching to another compound without any saved values, previous settings will be kept. (to save the values, the spinner needs to be clicked)
TrackTemp -> fallback as 'TempOnly', but offsets also bound to track, when used, first track closest in range will be used for fallback
TrackOnly -> fallback as 'TrackTemp', but fallback limited to current track
temperature interval for saved offset valuesbar_standard
(index reference for offset values, default 5.0 mean 0,0,5.0,10.0,15.0 and so on, to use one offset for all temps use value 100.0)
Auto -> pressure scale is dynamic 6/10/16psi depending on difflabel_practice
Scale6, Scale10, Scale16 -> fixed scale 6/10/16psi
(regardless of scale setting, marker ranges is always 2psi)
Standard -> psi, absolut and diff pressure is shown
Compact -> only diff pressure is shown
None -> no level lines in wear barmasked
Standard -> show black level lines in wear bar
Color -> show black/yellow/red level lines in wear bar
False -> new tyres will show some wear before it goes to no wear, depending on tyre it takes a few corners to a few laps (AC default behavior)
True -> new tyres show no wear from start
None -> no level lines in eol barshow_info
Standard -> show black level lines in eol bar
Color -> show black/yellow/red level lines in eol bar
False -> info labels default closedshow_gain
True -> info labels default open
False -> hide this value in the info popupdisable
True -> show eol gain, for the tyre enthusiast
False -> estimated end of life indicator is availible
True -> disable eol function and used resources is not checked, new tyre and masked wear and pressure offsets functionality is then not possible
After start of session, press home to show console and you will get an conflict error message if combination not possible.
Example, scale 1.25, no background, center_bar, dirty_tyre_bar, top_tyre_mode, kPa, Extend display mode and Color for eol_marker:
Unpack all files into your Assetta Corsa main folder (keep the structure in the zip).
If you have any questions, wishes or problems let me know here or in the AC forum thread http://www.assettocorsa.net/forum/index.php?threads/protyres-v1-0-0-it’s-all-about-the-tyre.43361/
User B-RIDDICK at the AC forum supplies many INI & LUT packs for mod cars
Save the pack folder in your "\apps\python\proTyres\cars_mod" folder.
- updated (new) ini&lut pack for AC 1.14.1, some cars was missing compound data in 1.14.0
- extended check for Nordschleife Tourist, depending on start pitbox, sometimes km fix could be missed (messing up eol gain)
- very little tweak eol gain calculation
- fix for app forced visible even if deactivated in app selection bar, even if not activated, app will need to init to keep correct behavior of pit/track condition
- updated ini&lut files for all AC cars to version 1.14.0 (only a few has changed) and new RTR DLC
- fix for broken lut handling on a few cars (currently known Race Sim Studio)
- fix for broken session reset when km fix was applied
- fix when race end to practice session, sometimes current tyre set was not reset correct (not checked)
- fix for eol color bar & markers, was sometimes not on the correct position & color
- workaround for United Racing Design (URD) mod cars wrong parameter configuration, for it to detect tyre compound correct you need to click less than 1 click/second when changing from hard to soft, that due to missing info from the URD cars. change from hard/soft in pitstop will not be detected. compound soft(s) or hard (h) is not indicated in the app summary (or in the AC pitstop app as well)
- 1 to 7-point dynamic eol, improves estimated end of life (adapts automaticly from previous 1-point format)
- fix if race is started on track and session is restarted, tyre laps/eol data was not reset correct
- fix for a few high wear compounds, sometimes eol could behave strange on 2nd run
- fix if km is reset on track messing up eol (example Nordschleife Tourist)
- fix for info eolgain, not so relevant value was shown, also shown in compact mode as well (if enabled)
- fix if tyre is overheated and out of lut range, gfx could sometimes freeze until cooldown within lut range
- pitpos is now not forced set if session changes but jump to pit does, improves new street tyre detection
- optional non verbose logging in console and pt_log.txt (only errors is shown)
- add debug info for pit position init
- fix when standing long time in pit or long countdown before race, newtyre could sometimes be reset
- fix when session (usually race) is started on track, position of pitbox is saved if entered later during session or by jump from menu
- optional black & white color mode for buttons
- optionaly bound pressure offsets from ideal target to current track (still temp based)
- optional fallback is now Temp (False), TempOnly (True), Track, TrackTemp or TrackOnly
- fix when changing compounds, sometimes wrong offset was selected
- fix when selecting compound quick back to previous, selection could get stuck on 'n/a'
- fix for some mod cars compounds not reaching 100% wear, delaying the newtyre overlay behavior (one known)
- fix for non pitlane track configurations (example Nordschleife Tourist), tyre change not detected correct
- new init of lib, previous code was sometimes incompatible with some installations (russian confirmed)
- sim_info updated according to AC 1.13.2, warning if older version loaded by previous app and is not up to date
(python seems to share this info and if an older version is loaded before proTyres it could cause app to fail)
- if app not visible, no background activity (previous EOL calculations was always active)
- readme INI updated and protyres version added to py_log
- fix of non vital app loading error
- fix for eol range bar not stable even after tuning (buffert had wrong init values)
- fix for some mod cars new tyre overlay flicker in pit (currently known Race Sim Studio)
- new tyre detection flexible sync time, could maybe reduce cpu usage non pit (less than 1%)
- fix for zero range optimal temp used by some mod cars (currently known RSS)
optimal temp range now expands around single entry according to lut file (example RSS +/- 0.2% grip)
(ERROR division by zero)
- added more track condition when modifying pressure offsets
- added config_readme.txt with description of all INI parameters
v1.0.8 170404 hotfix
- temp range was read from INI but not used during save correct
- ini and lut files from AC 1.13.2
- optional temp range bar overlay in IMO box, ring average in optimal range
- optional display mode for pressure bar, Auto or fixed Scale, for Standard and Compact display modes
- optional display mode for pressure labels, Standard or Compact for each session type
- optional ideal pressure offset front/rear configurable for each car/compound
- saved offsets uses track temp as reference for pressure offset, default range +/-2.5 degree/offset
- optional pressure offset fallback to closest temp range or previous used compound settings
- optional rolling average for pressure, 0-30s, defaults to 5s
- debug updated with offset info
- config menu behavior auto, close and manual
- disable button option is any of "None, Display, Config, Info, All" (i.e 'DisplayInfo' for only Config button)
(disable config button will disable offset functions, use auto for no button mode)
- optional show IMO ring overheat temp in AVG box
- optional start with eol info labels open
- info and config labels keeps old status when changing display mode
- minor tweak eol gain and mask during replay/pause/low speed
- background cleanup, Standard as before, Plain is now AC standard type (very similar to previous), None is no background
- disable display modes is now "None, Compact, Extend, Standard"
- new ini structure for better overview and future new options
- enhanced ini section code and other minor visual and code tweaks
- ini and lut files from AC 1.13
- extended error message for folder fallback and tyres.ini not found
- console messages written to py_log as well
- wear and eol bar marker has seperate option
- optional color mode for wear and eol marker
- new tyre detection in general tweaked for slicks/street conditions
- tyre compound with no initial scrub cycle (street) shows as new until wear starts
- fix for detect new tyres when enter pit-box
- fix for detect new street tyres during pit-stop
(at least one tyre must not be new to detect change of street tyres during pit-stop,
this is pit-stop limits only, pit-box, compound and session change is not affected)
- pit-stop info added to debug window
- new tyre not shown at all if tyre wear is disabled
- fix for rare wear curve in some mod cars (1 known)
- workaround fix for single tyre mod car with missing tyres.ini option (a few known)
(tyres.ini needs to edited to make it work as well)
- tyres.ini checked for valid file format, section and option content before access
(will not fix the error but better error handler when loading mod cars with broken ini files)
- parameters not sensitive to case
- some minor code and visual tweaks
- fix for rare wear lut double km entry in a few mod cars (1 known car)
- new estimated end of life (EOL) indicator for tyres
- standard, compact or extend display mode
- display and info button to toggle thru display modes
- selectable default display modes for practice, qualify and race
- ini and lut files from AC 1.12.6
- optional top box mode, rear tyres displayed same as top
- optional new tyre overlay
- optional font use for VR users
- optional marker for wear and eol indicator
- optional folder for mod cars, some cars included
- final folder fallback to content/car/data folder for open ini mod cars
- none, plain or standard background
- modified icon for debug
- improved pit box and new tyre detection
- move pin to standard position (top right)
- minor visual and code tweaks
- fix for error when reading a few of the curve files
- new Average Temperture in center and as displayed value, core moved to bottom
- new tyres detected and wear indicator is optionally masked
- optionally show dirty level in of mid tyre instead of wear bar
- show pressures as psi, bar or kPa (abs and diff)
- debug, new tire indicated by '|'
- car data for AC 1.12.2
- initial release
- car data for AC 1.12.1
No FPS drops whatsoever has been noted with the main app, your mileage may vary