Git Product home page Git Product logo

assetto-corsa-deltabar's Introduction

DeltaBar v1.30

Plugin for Assetto Corsa racing simulator

iRacing-style delta bar with variable color, uses sim_info.py from Rombik

Released at http://www.racedepartment.com/downloads/deltabar.4842/

DeltaBar shows time and speed difference compared to your best lap (or best sector).

The color of the bar shows if you are currently gaining or losing time. Exit a corner slightly better and it will glow green. Exit a corner significantly faster and the bar will be bright green.

The number displayed is the time overall loss/improvement for the current lap (or sector). The length of the color bar is a visual representation of this time loss/improvement.

OPERATION

โ— Drive a complete lap before the bar will display data.

โ— For sectors to work in multiplayer, drive the track in single player/offline mode first.

Click repeatedly on plugin to toggle the display:

  • vs all-time best lap
  • vs all-time best sectors
  • vs all-time optimal lap
  • vs session best lap
  • vs session best sectors
  • vs session optimal lap
  • Does not connect to any remote services, it's entirely local.

  • Best lap telemetry is stored locally in a JSON format.

  • Should not have a measurable effect on frame rate.

SCREENSHOTS

screenshot 1

screenshot 2

screenshot 3

screenshot 4

With "enable_timing_window": true in Documents/Assetto Corsa/plugins/deltabar/config.txt:

screenshot 5

INSTALLATION

1. Move the entire deltabar folder into:

C:\Program Files (x86)\Steam\steamapps\common\assettocorsa\apps\python

2. Run Assetto Corsa, enable the deltabar plugin:

   Options -> General -> UI Modules -> deltabar <ENABLED>

3. When in the car cockpit, activate the menus on the right side, scroll all the way near the bottom, CLICK on the icon with the deltabar tooltip.

Usage:

You should see a large rectangle appear.

Drive a lap and then it will show data.

Click on the rectangle to toggle between display modes.

CHANGELOG:

v1.30: October 12 2015

  • Support for AC 1.3
  • Improved bar look and rounded corners thanks to Alexander
  • Improved readability for delta value thanks to Alexander
  • Internal refactoring thanks to Alexander

v1.27: March 17 2015

  • Support for AC 1.1.2.
  • Support single sector tracks.
  • BETA version of timing window, 'deltabar timing'. Enable with "enable_timing_window": true in Documents/Assetto Corsa/plugins/deltabar/config.txt

v1.20: January 7 2015

  • Fix for many addon tracks, end-of-lap detection was not working.
  • Fix for session resets and transitions between practice/quali/race.
  • Fix for optimal lap mode when your early sectors were off track.
  • Click to change modes uses more visible yellow color.
  • Lightly smooth reported delta so it doesn't constantly flip between two values. You can disable this with "bar_smooth": false in Documents/Assetto Corsa/plugins/deltabar/config.txt
  • Option to keep delta text in the center of the bar. You can set "bar_moves": false in Documents/Assetto Corsa/plugins/deltabar/config.txt

v1.10: January 3 2015

  • Improved visuals
  • Optimal lap support
  • Fixed left/right sides of bar to match plus/minus of iRacing.

v1.01: December 31 2014

  • Initial release

Download:

Source browser:

assetto-corsa-deltabar's People

Contributors

jamessanford avatar stonespb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

assetto-corsa-deltabar's Issues

first multiplayer race lap after qualifying shows stale data

After qualifying, the car resets position to begin the race.

The first race lap was showing the old delta data from qualifying (+0.74) throughout the entire first lap. After crossing the finish line to begin the next race lap, the correct deltas were displayed for the remainder of the race.

In this case the car was on track when qualifying ended, approx 70% around the track, having finished ~2 qualifying laps, and the car had the first starting position at Vallelunga.

does not work on addon tracks that have no AI spline

On some tracks, the deltabar does not display any data at all.

Turns out the app does not know where the car is on the track. It uses NormalizedSplinePosition to get an approximate position, but some addon/custom tracks do not have this spline.

This could be worked around by using the 3D position of the car, not sure if it's worth the effort?

tracks where start line of track is a high AI spline position (like 0.80) don't work well

For example, the Nordshleife AI spline starts at something like 0.80, and becomes 0.00 after you've been driving a minute. The current code ties the lap start and the AI spline too closely, and also assumes the AI spline position will only increase as we drive around the track.

Here's a comment from commit d03edbe :


I think the Nordschleife doesn't work very well with DeltaBar because the AI spline doesn't "start" at the beginning of the track.

Needs some bug fixing, like "when the lap timer starts incrementing, use the current location as the start, and allow it to wrap around zero", so that a recorded Nordschleife lap can look something like "0.80", "... 0.99", "1.00", "1.10", ... "1.70", "1.79"


statusbox crash when flipping through modes

I was clicking through the various modes (best sector, optimal, ...) repeatedly and it crashed.

Looks like statusbox/format_time() expects milliseconds to only ever be an integer... There are likely more bugs in statusbox.

Exception: Thu Sep 24 05:24:46 2015
Traceback (most recent call last):
  File "apps/python/deltabar\deltabar.py", line 59, in acUpdate
    deltabar_app.acUpdate(delta_t)
  File "apps/python/deltabar\deltabar_lib\deltabar_lib.py", line 356, in acUpdate
    pos, self.lap.invalid_sectors[current_sector])
  File "apps/python/deltabar\deltabar_lib\statusbox.py", line 221, in update_frame
    self.data.textbox.set('i{}_2'.format(current_sector), format_time(current_sector_time - benchmark_sector_time, invalid=invalid, delta=True))
  File "apps/python/deltabar\deltabar_lib\statusbox.py", line 71, in format_time
    return "{}{}{}.{:03d}".format(star, sign, sec, thou)
ValueError: Unknown format code 'd' for object of type 'float'

add config.ini support for Content Manager

Here's a skeleton config_defaults.ini that renders OK in Content Manager.

This would allow people to configure deltabar from Settings -> Apps -> DeltaBar

[Mode]
MODE=0; Display mode; 0 for vs all-time best lap, 1 for vs all-time best sectors, 2 for vs all-time optimal lap, 3 for vs session best lap, 4 for vs session best sectors, 5 for vs session optimal lap

[DeltaBar]
THEME=IRACING; Color scheme; IRACING for iRacing, SPEEDSPB for SpeedSpb Alternate, COLORDEFICIENCY for Color vision deficiency
BAR_WIDTH=800; Width
BAR_HEIGHT=60; Height
BAR_FONT_SIZE=24; Font size
BAR_DURATION=2000 ; Duration; from 200 ms to 5000 ms
BAR_MOVES=1 ; Time offset moves with bar; 1 or 0

[Background]
BAR_BACKGROUND=1 ; Draw bar background; 1 or 0
BAR_OPACITY=0.65; Background opacity; from 0.0 to 1.0
BACKGROUND_COLOR=#303030; Background color RRGGBB hex

[DetailWindow]
STATUSBOX_ENABLE=1 ; Enable window; 1 or 0
STATUSBOX_BETA=1; Include BETA text; 1 or 0

[Reset]
#To reset saved laptimes, delete the files from:
#  XXX\plugins\deltabar\xxx
RESET_DIRECTORY=...\\Documents\Assetto Corsa\plugins\deltabar\laps ; To reset laptimes, remove cars or the entire track from the cfg\Assetto Corsa\plugins\deltabar\laptimes directory; directory

Making the app bigger

Is there any way to make the delta bar bigger by scaling it to a larger percentage?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.