Skip to content

Releases

v0.13.0 — The spotter's chair

Choose a tag to compare

@thomasfowler thomasfowler released this 21 Aug 17:03

Two features this time, both about the moments you're not actually racing: rolling down the pit lane wondering what you're about to merge into, and the stints where you're not in the car at all.

Pit exit advisor

The one moment a race guarantees you side-by-side traffic: the pit exit. While you roll down the lane — or sit in the box mid-stop with your eyes actually free — OhShit projects your arrival at the merge point against everyone barreling down on it and grades the merge: CLEAR / TRAFFIC / TIGHT / HOT, plus the slot you're dropping into ("slot after 2 · 1.8s gap").

  • It learns the merge point live from anyone's pit stop — one observation makes it usable, and your own first exit teaches it too. Limiter speed comes from the session info, with a learned fallback if that lets us down.
  • During the stationary stop the numbers read as an "if you launched now" forecast.
  • A stopped or crawling car just past the blend line floors the level at TIGHT — no green light into a wreck scene.
  • Stays live under caution, because pitting under yellow is the busiest merge there is.
  • Renders in the rejoin band wearing your rejoin style — nothing new to place. Incident countdown, rejoin advice, and pit exit take turns; only one ever owns that band. Audio worsen/clear tones included, own toggle.

It only ever lights on pit road, for about twenty seconds per stop, so it ships enabled. The merge-point learning has been validated hard against recorded sessions (it converges to within a few meters across independent runs); live race mileage is what it wants next.

Spotter mode

The plugin that inspired OhShit kept working when its user spotted for a teammate — by accident, and it turned out to be the best thing it did. OhShit now does it on purpose.

While you're spotting — not driving, and it structurally cannot appear while you drive — a crew console lights up on its own overlay (OhShitSpotter; park it on a second monitor or over the broadcast):

  • A full-lap strip with every warned car mapped and level-colored, plus your driver's marker.
  • A three-slot incident list — countdown, kind, car, distance — nearest trouble first. That includes trouble behind your driver: a wreck 200 m back shows as a BACK row, because the cars bearing down on your driver's rear bumper care about that one too.
  • The pin is "you", not the camera. Spotters flick cameras constantly, so the reference car only moves after the camera rests on someone for 8 seconds — or instantly via mappable pin / lock / clear buttons. The chip shows who's pinned, AUTO or LOCKED, and flags TOWING and PIT.
  • Live speeds on every row plus your driver's in the header — dead stop or just slow, at a glance.
  • Pit watch: when your pinned driver hits pit road, the console runs the same pit-exit merge forecast for them, as a merge row while they roll toward the blend line.
  • Countdown tones for the nearest incident ahead, a panel opacity slider, and two styles switchable live: the full Console and a compact Ticker. Preview buttons work with no game running, same as everything else.

It auto-arms whenever you spot and drops the same frame you climb into the car. This one was built for endurance crews, and what it needs now is a real team stint — tell us how it goes: report an issue or join the Discord.

Radar and the rest

  • The rejoin advisor and the proximity radar have earned their mileage — the experimental tags are gone.
  • The radar got a taller, fatter, more readable look, and Stack bars are now car-stable: a bar keeps its slot for as long as its car is alongside, so three-wide stays countable mid-battle instead of reshuffling under you.
  • Per-overlay session gates: pick which session types (race / practice / qualifying / testing) each overlay is allowed to appear in.

Under the hood

  • The debug recorder gained camera and census columns, and the replay tool learned --spotter — a recorded spotting session replays through the real detector offline, pin moves and merge forecasts included.
  • Every new feature went through adversarial review passes; everything they caught is fixed and pinned by tests (194 of them now).
  • The 60 Hz contract holds with two more overlays in play: no allocations, no exceptions, same microsecond budget — you can check OhShit.UpdateMicroseconds yourself, it'll happily tell you.

New here? Grab OhShit-Setup-0.13.0.exe below and run it — it finds SimHub, installs the plugin and all three overlays, done. Already running OhShit? The plugin will offer you this update itself.

v0.11.0 — Car left, car right

Choose a tag to compare

@thomasfowler thomasfowler released this 14 Aug 19:25

The spotter says "car left". OhShit now shows you which side, how far alongside, and how fast that's changing.

Proximity radar (experimental)

A second overlay, shipping as its own dash (OhShitRadar) so you can park it right next to your virtual mirror, completely independent of the warning overlay. It fuses iRacing's spotter calls with raw telemetry gap math: the spotter says which side and how many, the telemetry says which car, how much overlap, and whether it's growing. It never invents a side the spotter didn't call.

Four styles, switchable live from the settings page:

  • Pills — two vertical pills flanking your view; the fill is the overlap, growing from the bottom as a car arrives and draining as it clears
  • Stack — one slim bar per car, up to three a side; three-wide vs four-wide is countable at a glance
  • Scope — the classic top-down radar, honest edition: cars as blocks placed by real gap, and cars the spotter hasn't attributed to a side stay in the center lane
  • Digits — a count per side with an arrow, colored by how tight it is; blank when clear

Extras: an approach chevron for something closing from behind before it overlaps, car-count chips, and an opt-in all-clear marker — a brief green confirmation after the last car clears, never a resting light.

It's off by default while it earns real-world mileage. Flip it on in the PROXIMITY RADAR card, add the OhShitRadar overlay from Dash Studio → Overlays, and tell us how it behaves in your races: report an issue or join the Discord.

The settings page got a reshuffle

  • Everything about a feature now lives in its own card: enable, style, extras, the preview buttons (every row has its own Off now), and the tuning sliders tucked into a collapsed expander at the bottom. No more hunting through ADVANCED for the radar knobs.
  • "Restore defaults" asks for a confirming second click before wiping your tuning. It also actually applies the default audio settings immediately now.
  • The last few controls without tooltips got them — including the little µs chip, which finally explains itself.

Under the hood

A full review pass over the 60 Hz path, because performance is sacred around here:

  • Starting a telemetry recording can no longer hiccup the sim: all file work moved off the data thread, so even Windows Defender deciding to inspect the new file costs you nothing mid-race.
  • One glitched telemetry sample can no longer permanently silence detection for a car (a NaN could poison that car's speed model for the rest of the session — guarded now, with a regression test).
  • Killed the last per-frame allocation in the hot path. The steady state is now genuinely allocation-free.
  • A handful of smaller hardening fixes: tear-proof published values for the overlay, preview mode is now covered by the crash circuit breaker, the audio engine no longer spins up on the exact frame your first warning fires, the warning thresholds can't be configured upside down anymore, and an unplugged USB audio device no longer loses its saved selection when you touch an unrelated slider.

New here? Grab OhShit-Setup-0.11.0.exe below and run it — it finds SimHub, installs the plugin and both overlays, done. Already running OhShit? The plugin will offer you this update itself.

v0.10.0 — The Rejoin Advisor

Choose a tag to compare

@thomasfowler thomasfowler released this 10 Aug 14:20

You've binned it. You're in the gravel, and the only question that matters is: can I go, or is half the field about to arrive?

OhShit now answers it. The same detection it points at everyone else, pointed back at you — when you're the incident, the overlay flips into the Rejoin Advisor: WAIT / SOON / GO, a countdown to the next car, and the gap worth waiting for ("8s gap after 2").

  • Knows the difference between stopped dead and still rolling — the thresholds move with your momentum, because a rolling car pulls away from traffic and a parked one doesn't
  • Understands trains: how many cars to let by, and how big the gap behind them is
  • The go bar fills as the road opens — full exactly when GO appears
  • Its own audio language: low blips while it's not safe, a rising "clear" when it is
  • Four looks — Strip, Mirror, Frame, Tower — chosen separately from your incident style, so the two overlays never look alike at a glance
  • Works under caution, pace car included

It's experimental, and OFF by default. Turn it on in the OhShit settings page → REJOIN ADVISOR. It advises, you decide: green means "no traffic reaches you inside your crossing window", not a promise.

It's been tuned against deliberately-crashed test sessions, but it's young. When it calls one wrong, tell us — every report makes it better:

Also in this release

  • Preview buttons for every rejoin state (including a full cycle with the tones) — position and style the overlay without crashing once
  • Feedback & support links right on the settings page
  • For the tinkerers: the whole rejoin model is tunable under ADVANCED, and the offline replay tool now traces rejoin decisions alongside incident warnings

v0.9.3 — Box box box

Choose a tag to compare

@thomasfowler thomasfowler released this 09 Aug 18:08

Box box box — new parts are ready.

From this version on, OhShit watches for its own updates: it checks this page once when SimHub starts, and when something newer is out you get one amber button on the settings page. Click it and the rest is a pit stop — download, checksum, installer, back out on track.

What's new

  • 🔔 Update alerts — OhShit checks for a new release at SimHub startup, plus a Check for updates button for the impatient. One click downloads the installer, verifies it, and runs it. Rather we never radio in at all? Untick one box and we'll sit in silence like a proper #2 driver.
  • ⏫ New livery — the warning triangle is gone. Three amber chevrons now mark OhShit everywhere: SimHub menu, settings page, installer. Same warning underneath, better paint.
  • 🧰 Installer manners — while it closes SimHub it now shows you exactly what it's doing, instead of impersonating a frozen sim rig. Silent installs (/VERYSILENT) no longer hang on a question nobody can see.
  • 📊 For the dash tinkerers — two new properties: OhShit.UpdateAvailable and OhShit.LatestVersion. Wire up your own "new parts available" light.

The fine print

  • Still on v0.9.2? That version never learned to check for updates — this is the one that teaches it. Grab this installer by hand one last time, and every release after this finds you.
  • The installer is still unsigned, so SmartScreen will give it the stink-eye: More info → Run anyway. The .sha256 next to the download is there if you want to inspect the fuel sample yourself.

Something misbehaving? Open an issue or come shout at us on the JT-Racing Discord. Warnings before wreckage. 🏁

Initial Release

Choose a tag to compare

@thomasfowler thomasfowler released this 09 Aug 17:20

First version I'm willing to kinda distribute. Still untested by the public at large. But that'll change. And we'll make it better. Together. Probably. Maybe