Automobilista Community Cup Results

rF2 Log Analyzer ver. 2.058.18

Made by Nibo. You can contact me at unhappyhardcore@gmail.com

Get updates and news in this thread rFactor2 Log Analyzer ver. 2 at https://forum.studio-397.com

You can support me by donating on my Patreon page. Special thanks for support to wrxxy, Outlaws Racing, Scott, Tero Kokko, Knackko, Marcos Gil, Renátó Kádár, Michael B.

This application is free to use. But you can not sell it.

THIS APPLICATION IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


Auto refresh: True
Refresh period: 5 min
Last refresh: 12 Jul 2025, 09:17

Changelog

2.058.18:

  • Added export of DEDI Competitions results to "fake" xml file. You can then assign this reports as results in your championships. Press "Export to XML" button for some competition, this will create "Practice" xml report with competition results in your default .../Results directory and import it in r2la. You will see it in Results Viewer with the same name as competition plus "_". Report will be dated by competition end date.
  • Allowed zero fuel and tire wear for DEDI competitions
  • Added "server_name" to get_server_data_jsonp output. Added "mServerName" to get_full_server_data_jsonp output, in "mScoringInfo" section.

2.058.17:

  • Added all new words from top menu to internationalization. Read "Help" -> "Internationalization" for details.
  • Added possibility to clone championships. Press "Clone" button for some championship in the list on "Championships" page. You will have 2 options: "Clone with race results assignments preserved" and "Clone without results assignment". Cloned championship will have "cloned" added to its name, you can change name later with "Edit championship".
  • Allowed negative manual override points.
  • Fixed override comments not showing with 0 points.

2.058.16:

  • Added ability to assign penalty points to drivers per race (like F1 driver penalty points for causing incidents) and add comments for manual override reason. Press "More..." button in race report table "Manual" column header to add/remove penalty points and comments.
    Penalty points are visible in driver standings table (lower right corner in a cell). Comments are visible in pop-up when you click on driver points cell.

2.058.15:

  • Live Timing now shows server name in server selection buttons (for rF2 only).
  • Added started laps number to "Laps" column on Records page.
  • Sortable column headers are now marked with blue color on mouse hoover instead of arrow symbols.
  • Added sorting to "Driver stats", "All time stats" and "Car stats" tables.
  • Cell background for DNF in championship tables now is always purple, no matter if driver received points or not.

2.058.14:

  • Added Championship options to hide driver/team/stats overall and class tables.
  • Added "Clone to edit"/"Edit" buttons to Championship Race page. They have the same function as in Results Viewer. They are in "Export/Utils" dropdown menu. You can automatically assign cloned file as race result when clicking "Clone to edit" at this page. Cloned files now have "Clone" badge in session results header, visible for admin only.
  • "No-qualification" race option on "assign race result" pop-up now correctly shows value that is set in race options.
  • Race country flag will not be overwritten when you assign race results if no flag is assigned to track before.
  • Fixed manual Championship Classes and Teams names being removed from Championship when "Save changes" is pressed on Edit Championship page (without changing Class or Team options).
  • Fixed an error in visibility filter for fuel/tire info.
  • Added "Help" drop-down button in top menu for logged admin in DEDI mode.

2.058.13:

  • Added sorting options to Pit Stops Summary table (sort by position in table, driver name, lap or pit stop number).
  • Added some more flags.
  • Added another jsonp call at live/get_full_server_data_jsonp to get Live Timing server/driver data with cross-domain ajax request. This one outputs all data available to LiveTiming.

2.058.12:

  • Added possibility to edit TeamName and CarClass in results editor.
  • Added championship option "Team with this name will receive no points".
  • Fixed error message on Track Records page if track has logs but there is no lap time in that logs.

2.058.11:

  • Bonus points for completing some percent of leader distance now work correctly for classes.
  • Separated "DNS" from "All drivers (even DNF) receive no less then this points" option into checkbox, default value is "On" as before.
  • Added checkbox for "Driver must finish the race (not DNF) to receive bonus for completing percent of leaders distance", default is "Off".
  • Added checkbox for "Driver must finish the race (not DNF) to receive classification points", default is "Off" as before.
  • Driver list in Class Team Standings tables now shows only team drivers for this class (for cases when team has cars in multiple classes).

2.058.10:

  • Added bonus points for starting the race and for completing some percent of leader distance.

2.058.9:

  • Added an option to assign user created points presets by race. Go to "Edit race" and select points preset name for that race. You can create and save your custom points presets on "Edit champoinship" page.

2.058.8:

  • Added an option to sort Track Records by Date. Press "Date" or "Time" column headers to switch between sorting options.
  • Added more track names for automatic flag assignment.

2.058.7:

  • Fixed an error in calculation of manual override points when manual points are 0.

2.058.6:

  • Optimized background refresh when editing results. Should be faster now.
  • Added kmh/mph switch button to Live Timing.
  • Added "show_tire_data" parameter to live_timing_settings.json. Set it to 0 to hide tire compound data in Live Timing. Default value is 1.
  • Added an option to show "Unofficial/Official" prefix for Race Results and Championship Standings. Check "Show "Unofficial/Official" prefix" championship option, then turn "Result is unofficial" checkbox on/off for every race on "Edit race" page as you need (default value for "Result is unofficial" is "On").
  • Added "View standings" words from "Hosted competitions" page to languages\default.py file for translations.
  • Added "Last race with result" and "Team standings" options for "Default page" in Championship.
  • Added "Copy" button to race columns at Championship "Manage Teams" page to copy teams from previous race with one click.
  • Added "Points for consistency" to Championships points system. Top N drivers from "Average deviation from drivers fastest lap" table will receive this bonus.
  • Added jsonp call at live/get_server_data_jsonp to get Live Timing server/driver data with cross-domain ajax request from your other server (may be used to create live servers/tracks/drivers widget). Data is updated once in 5 seconds, I do not recommend to request it more frequently. Example call:
    $.ajax({
        url: 'http://your-r2la-address:port/live/get_server_data_jsonp',
        type: 'GET',
        dataType: 'jsonp',
        crossDomain: true,
        data: {},
        success: function (data, textStatus, xhr) {
            console.log(data);
        },
        error: function (xhr, textStatus, errorThrown) {
            console.log(errorThrown);
        }
    });
                                
    Returned data object structure is:
    server_names_list: ['Server Name1', 'Server Name2', ...],
    server_data: {
        "Server Name1": {
            session: session code (0=testday 1-4=practice 5-8=qual 9=warmup 10-13=race),
            track_name: "Track Name",
            vehicles: [
                {best_lap_time: lap time in seconds,
                driver_name: "Driver Name1",
                vehicle_class: "Vehicle Class1",
                vehicle_name: "Vehicle Name1"},
                { ... },
            ]},
        "Server Name2": { ... },
    }
                                

2.058.5:

  • Added championship option to turn off "Ignore manual correction PTS when searching for worst result". Default was and is "On".
  • Added top speed column to Live Timing.
  • Added simple single player telemetry recording and viewer (works for rF2, rF1 and Automobilista).
    • You will need rFactor2SharedMemoryMapPlugin for rF2. Extract rFactor2SharedMemoryMapPlugin64.dll into your rFactor 2\Bin64\Plugins directory, start rF2, go into Options/Plugins and turn ON rFactor2SharedMemoryMapPlugin64.
    • For rFactor1 and Automobilista you will need rFactorSharedMemoryMap plugin 2.0 or modified version of it. Either one should work for telemetry.
    • r2la telemetry does not feature all data channels. If you need detailed rF2 telemetry analysis, use complete telemetry viewing systems, like DAMPlugin + "Motec i2".
    • To record telemetry data, start r2la by r2la_telemetry.bat. Then start rF2 and as soon as your car leaves the pit lane, data will be recorded. You don't need to start web browser to record telemetry. Telemetry data will be written to r2la database every time you return to pits.
    • You can view list of recorded telemetry laps by clicking "Live" -> "Telemetry" on top r2la nav panel. Click "Open" to open Telemetry Viewer for selected lap.
    • You can pan graphs by dragging them with LMB and zoom with mouse wheel. You can overlay other lap graphs on top of opened one or add another lap graphs to Telemetry Viewer page.
    • Recorded telemetry data will be visible at "Stints" tab in session xml report. Press "Show telemetry data" button there.
    • You can record telemetry for AI car (only for rF2). Set record_ai value to 1 in rF2 Log Analyzer ver. 2.058.5\web2py\applications\r2la\telemetry_settings.json. In-game add 1 AI car in options or on track. When AI car will leave the pit lane its data will be recorded. You have to wait for AI to return to pits for data to be recorded into database.
    • rF1 and Automobilista have some telemetry data channels at 0.
    • While recording r2la telemetry should not have effect on rF2 performance, I do not recommend using it when you are participating in important online events. Better use it for offline test sessions only.
    • Telemetry data is not transferred between r2la versions on updates.

2.058.4:

  • Added options to hide tire/fuel data for Practice, Qualy or Race reports.
  • Added pace.js page load progress bar.
  • Added an option to include your custom js files in r2la pages. Use form at Options page to add your js files.

2.058.3:

  • Added track positions widget to LiveTiming.
  • Fixed LiveTiming error with non-ascii symbols. But they will not be displayed correctly.
  • Added LiveTiming suport for rFactor1 and Automobilista. You need to use modified version of rFactorSharedMemoryMap plugin. Download it here. Put rFactorSharedMemoryMapDedi.dll into rFactor or Automobilista\Plugins directory. Remove rFactorSharedMemoryMap.dll if you had it there. rF1 mode limitation - human players will have AI status when standing in pits, no vehicle names, no tire compounds info.
  • Added optional support for global memory reading for LiveTiming with rFactor2. This is only needed in case when multiple rF2 servers are started from different windows user accounts and LiveTiming is not working.
    • Set read_global_memory value to 1 in rF2 Log Analyzer ver. 2.058.2\web2py\applications\r2la\live_timing_settings.json.
    • Set rFactor2SharedMemoryMapPlugin64.dll option DedicatedServerMapGlobally to 1 in all your your player/CustomPluginVariables.JSON files.
    • You need to start r2la_live_timing.bat from admin account or from non-admin account by pressing SHIFT+RMB and selecting "Run as different user" and entering windows admin account name and password.
    • You need to start rF2 servers from admin account or from non-admin accounts by pressing SHIFT+RMB and selecting "Run as different user" and entering windows admin account name and password.

2.058.2:

  • Fixed LiveTiming Practice/Warmup time/laps values and Warmup standings table.

2.058.1:

  • LiveTiming support for multiple rFactor2 server processes.
  • Fixed weather numbers output in LiveTiming.

2.058:

  • Added LiveTiming. For server to output data - you need to download rF2 Shared Memory Tools for Developers, extract rFactor2SharedMemoryMapPlugin64.dll into your rFactor 2\Bin64\Plugins directory, start rF2, go into Options/Plugins and turn ON rFactor2SharedMemoryMapPlugin64. For LiveTiming to work you need to start r2la on server machine by r2la_live_timing.bat file. For LiveTiming to work properly always start r2la_live_timing.bat before you start rF2 session.
    Clients don`t need to do anything new, just go to server`s r2la Live page. LiveTiming also works if you use rF2 offline, just install Shared Memory plugin and start r2la by r2la_live_timing.bat.
    Special thanks to The Iron Wolf for Shared Memory plugin and to k3nny for helping me access shared memory data in Python.
  • Added an option to show Team Name instead of Car Name in Records table.
  • Added Ballast column to "Session results" table.


Used software

This application is made with Python, web2py, lxml, psutil, UIkit, Flot.js, jQuery, marked, CodeMirror, Mithril, Moment.js, Moment Duration Format Plugin, Ocanvas, pace.js, tablesort, Background pattern from subtlepatterns.com. Flags from gosquared.

LXML license

Copyright (c) 2004 Infrae. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

  1. Redistributions of source code must retain the above copyright
     notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright
     notice, this list of conditions and the following disclaimer in
     the documentation and/or other materials provided with the
     distribution.

  3. Neither the name of Infrae nor the names of its contributors may
     be used to endorse or promote products derived from this software
     without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INFRAE OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                    

psutil license

psutil is distributed under BSD license reproduced below.

Copyright (c) 2009, Jay Loden, Dave Daeschler, Giampaolo Rodola'
All rights reserved.

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

 * Redistributions of source code must retain the above copyright notice, this
   list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.
 * Neither the name of the psutil authors nor the names of its contributors
   may be used to endorse or promote products derived from this software without
   specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.