Experimental CVT Physical Belt Driven Simulation 1.0

Hirochi Aurata CVT

  1. tamz129
    Real CVT – Physical Belt Drive for the Hirochi Aurata
    A belt CVT that shifts by physics, not by a script. Calibrated after the Can-Am Maverick X3 (pDrive / QRS-X).

    Why this mod exists
    The stock Aurata CVT feels sloppy: the rpm lags behind the throttle, wanders and overshoots, never drops below ~4500 rpm when cruising, ignores load on hills, and keeps revving for seconds after you lift. The reason is how it works under the hood: the stock CVT is a centrifugal clutch with a wide slip band (1600–3300 rpm) plus a controller that steers the ratio toward a target rpm chosen from your throttle pedal, filtered through several layers of smoothing.

    Vanilla CVT:


    A real UTV CVT doesn't have a controller at all. The ratio is the balance point between two mechanical forces. This mod brings that behaviour to BeamNG.

    Real CVT:


    (sorry for the bad quality video, i was making this mod while i was in my office, will record later for a better quality and better visualization)

    How it works
    • Primary (drive) clutch: 3 roller arms with flyweights on a profiled ramp. Clamping force grows with engine rpm².
    • Secondary (driven) clutch: spring + torque-sensing helix. More load = more clamping = automatic backshift.
    • Ratio = force balance between the two, from 3.00:1 to 0.70:1 (x1.30 internal reduction). Nothing is scripted.
    • Engagement at ~1800 rpm (stock X3 figure), fully locked at ~3500 rpm.
    • Belt thermals: slipping the belt heats it up. Too hot = it glazes and loses grip, way too hot = it blows (with smoke and a warning).

    What you get (vs. the stock CVT)
    • Full throttle
      Stock: rpm chased toward 6800 with lag and overshoot
      Real CVT: rpm locks flat at ~7100 (peak power) while the ratio sweeps
    • Light throttle / cruising
      Stock: never below ~4500 rpm
      Real CVT: lower rpm, set by the actual load
    • Hills / sand / load
      Stock: reacts only through rpm error
      Real CVT: helix backshifts on load
    • Braking
      Stock: -
      Real CVT: stays engaged with engine braking and backshifts; only freewheels near a stop
    • Back on throttle after braking
      Stock: slow recovery (sometimes launch the rpm through the limiter) (sloppy)
      Real CVT: instant pull (already in a low ratio)
    • Wheelspin / sliding
      Stock: smoothed
      Real CVT: natural rpm flare and bog as grip comes and goes
    • Belt
      Stock: not simulated
      Real CVT: slip, heat, glazing, failure
    • Tuning
      Stock: "Primary RPM / Secondary RPM" sliders
      Real CVT: real clutch-kit parameters (grams, springs, helix angle)

    Parts
    Engine > Transmission > Real CVT (Physical Belt Drive)
    • CVT Clutch Kit: X3-Spec (stock calibration) or Adjustable Clicker Clutch Kit
    • CVT Belt: Stock / Heavy Duty Kevlar / Indestructible
    • CVT Belt Cooling: Stock high-airflow housing / Ducted snorkel intake / Race electric blower
    • CVT Rev Limiter Behaviour: Soft (CVT friendly, default) / Keep ECU limiter
    Ready-made config: Turbo - Real CVT (X3 spec)

    Adjustable Clicker Clutch Kit (Tuning menu):
    • Primary weights (g per arm): heavier = lower engagement and shift rpm
    • Primary spring preload: mainly sets engagement rpm
    • Secondary helix angle: steeper = more backshift under load, higher shift rpm
    • Secondary spring preload: holds low ratio longer, more engine braking
    • Belt grip

    Telemetry
    Belt temperature shows up in the vanilla Clutch Thermal Debug app.
    Electrics for gauges/apps: cvtRatio, cvtShiftPosition, cvtBeltTemp, cvtBeltSlipRPM, cvtBeltCapacity, cvtBeltBroken.

    Data sources & honesty
    • Maverick X3 Turbo RR: 200 hp, pDrive primary + QRS-X secondary, L/H/N/R/P (BRP spec sheets).
    • Stock engagement ~1800 rpm (EVP clutch kit data).
    • BRP does not publish CVT ratios or shift rpm. The 3.00–0.70 ratio range is an estimate, and the flyweight mass is a calibration value, not the real X3 weight.
    • Calibrated so the Aurata Turbo keeps its stock performance (0–100 km/h within a few tenths of stock).

    Known limitations
    • Once engaged, the belt is modelled as a locked coupling with a torque limit (simplified on purpose for stability). It only slips during engagement, when stuck, or when overheated.
    • Cruising rpm is still a bit higher than a real X3.
    • Tested on the vanilla Aurata Turbo. Other engines/configs work but shift rpm will differ (as with a real clutch kit, re-tune with the adjustable kit).
    • May conflict with other mods that replace the Aurata transmission.

    Disclaimer – built with Claude Code
    This mod was developed with Claude Code (Anthropic's AI coding assistant). The research, physics model, Lua code, jbeam parts and calibration were produced by the AI, under the direction of Tamz129, who did all the in-game testing and reported every issue (overheating belt, neutral when braking, shudder at the limiter and while sliding) until it drove right.
    Calibration was done with an offline simulator that mimics BeamNG's formulas. It is not BeamNG itself, and real in-game behaviour was validated by playing, not by the simulator.
    Not affiliated with or endorsed by BRP / Can-Am, EVP, or BeamNG GmbH.

    Open source – feel free to use it
    This mod is open source. The Lua code (physicalCvtBelt.lua, the physicalCvt shift logic) and the jbeam parts are all in the zip, readable and commented. You're welcome to use them in your own mods: copy, modify, build on it, port it to other vehicles, or ship it inside your own releases.
    The only condition: credit Tamz129 as the original author, e.g. "CVT physics based on Real CVT by Tamz129", in your mod's description and, if you keep the files, in the code comments.

    If you make something cool with it, let me know, I'd love to see it.

    Credits: Tamz129 (idea, direction, testing) · built with Claude Code

    References & data sources

    Can-Am Maverick X3 Turbo RR (real-world target)

    Clutch / CVT data (aftermarket vendors)

    BeamNG.drive game files (Hirochi Aurata + vanilla CVT)
    • Vanilla CVT behaviour, reverse-engineered from the official Lua: cvtGearbox.lua, shiftLogic/cvtGearbox.lua, centrifugalClutch.lua, vehicleController.lua, filters.lua, combustionEngine.lua
    • Aurata data: utv_engine_i3_900.jbeam (torque curve, turbo, idle/limiter), utv_transaxle.jbeam (stock clutch, CVT, range box), utv_differential_R.jbeam, info_turbo.json (188 hp, 990 kg, 0–100 km/h 5.6 s)

    What is estimated (no official data)
    • BRP does not publish the CVT ratio range or full-throttle shift rpm. The ratio range (~3.0:1 to 0.7:1) is typical for powersports CVTs; the shift rpm was calibrated to the Aurata's own peak power (~7,100 rpm), not to a factory figure.
    • Belt geometry, sheave inertia, flyweight/spring/helix values and belt thermals are engineering estimates, tuned until the behaviour matched the real car in-game.

    Images

    1. image_2026-11-09_194539212.png
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice