Engine Sound Tuning

Engine audio is built from several parts that are mixed together at runtime. The two main continuous layers are the engine sound and the exhaust sound. Other sounds, such as starter, shutoff, afterfire, turbo, supercharger, transmission, wind, tire, and impact sounds, are mixed around those main layers.

This page focuses on the JBeam SoundConfig values used by engine and exhaust sound configs, and on the practical workflow for balancing them.

Engine and exhaust layers

Most combustion vehicles use two sound configs:

  • soundConfig is the engine-side layer. It represents mechanical sound, induction sound, and sound emitted near the engine bay.
  • soundConfigExhaust is the exhaust-side layer. It represents the sound emitted from the exhaust outlet.

These two layers should not usually be treated as copies of each other. The engine layer is often quieter and more detailed, while the exhaust layer usually carries more of the exterior loudness and character. Interior sound depends on both layers and the vehicle’s cabin filtering.

A simple setup looks like this:

"mainEngine": {
    "soundConfig": "soundConfig",
    "soundConfigExhaust": "soundConfigExhaust",
},

"soundConfig": {
    "sampleName": "i4p_01600cc_motorsport_02_engine",
    "intakeMuffling": 1,
    "mainGain": -9,
    "onLoadGain": 1,
    "offLoadGain": 0.4,
    "maxLoadMix": 0.67,
    "minLoadMix": 0,
    "fundamentalFrequencyCylinderCount": 4,
    "eqFundamentalGain": 0,
},

"soundConfigExhaust": {
    "sampleName": "i4p_01600cc_motorsport_02_exhaust",
    "mainGain": 2,
    "onLoadGain": 1,
    "offLoadGain": 0.4,
    "maxLoadMix": 0.67,
    "minLoadMix": 0,
    "fundamentalFrequencyCylinderCount": 4,
    "eqFundamentalGain": -3,
},

The exact values depend heavily on the selected samples, vehicle body, exhaust layout, and intended sound character.

Starting point

Start from a vanilla vehicle that is close to the cylinder count, displacement, aspiration, and character you want. Copy both the engine and exhaust sound configs, then change one group of parameters at a time while testing in game.

Try to match these properties before tuning details:

  • Cylinder layout and cylinder count.
  • Gasoline, diesel, or electric motor sound type.
  • Naturally aspirated, turbocharged, or supercharged character.
  • Approximate displacement and RPM range.
  • Road car, race car, heavy truck, machinery, or other vehicle role.

If the starting sample is far away from the target, EQ and gain changes will not make it feel correct. Pick the closest sample first, then tune.

The World Editor’s Engine Audio Debug tool, found under the Audio tab, is useful for live tuning. It can adjust engine and exhaust values in real time and copy the resulting JBeam setup back to the vehicle file.

Basic workflow

For a first pass, tune the parameters in this order:

  1. Set sampleName and fundamentalFrequencyCylinderCount first. If these do not match the intended engine type, later EQ and gain changes will not fix the basic pitch and character.
  2. Balance mainGain between the engine and exhaust configs. The exhaust layer normally carries most of the exterior loudness, while the engine layer adds mechanical and intake detail.
  3. Shape throttle response with onLoadGain, offLoadGain, maxLoadMix, and minLoadMix. Use these to control how strongly the sound changes between coasting, partial throttle, and full load.
  4. Adjust muffling before heavy EQ. Use intakeMuffling on the engine config and exhaustAudioMufflingBaseCoef on the exhaust config. Exhaust parts can further change muffling and gain with exhaust node modifiers.
  5. Use EQ for tone correction. eqFundamentalGain changes the engine order emphasis, the low/high EQ parameters shape broad character, and the shelf parameters trim the extremes.
  6. Check the result from exterior, hood, and interior cameras. Interior balance is also affected by the vehicle sounds section, especially cabinFilterCoef.

Leave some headroom when mixing. A sound that is exciting alone can become too loud once starter, afterfire, turbo, supercharger, transmission, tire, wind, and impact sounds are all playing.

Sample and pitch

sampleName selects the blend sample set used for the sound. Engine and exhaust configs usually use matching sample families, such as one sample for the engine layer and one for the exhaust layer.

sampleFolder can be used when a mod stores samples outside the default sample folder. For normal vehicle tuning, leave it unset unless the samples are intentionally stored in a custom location.

fundamentalFrequencyCylinderCount tells the audio system how to calculate the engine’s fundamental frequency from RPM. Set this to the real cylinder count of the sound source. A wrong value can make the sound feel pitched incorrectly or emphasize the wrong engine order.

Use eqFundamentalGain after the cylinder count and sample are correct. Positive values make the fundamental engine order more obvious. Negative values reduce it and can make the sound less boomy or less droning.

Mixing sample sets

Engine and exhaust samples are usually designed as pairs. Mixing the engine layer from one sample family with the exhaust layer from another can work, but it needs careful checking because the layers may have different pitch reference, load response, tone, or recording character.

Use mixed sample sets only when each layer contributes something useful. For example, one engine sample may have better mechanical detail while another exhaust sample better matches the vehicle’s tailpipe character. Avoid mixing samples only to make the sound louder or more aggressive; gain, muffling, and EQ are better tools for that.

When mixing samples, check these points before detailed tuning:

  • Match fundamentalFrequencyCylinderCount to the sound source used by each layer. Do not use the vehicle’s cylinder count to hide a sample that has the wrong engine order.
  • Keep the engine and exhaust samples close in RPM range and character. A smooth stock engine layer can feel disconnected from a sharp race exhaust layer.
  • Balance onLoadGain, offLoadGain, maxLoadMix, and minLoadMix on both layers so throttle transitions happen together.
  • Use mainGain to set the broad engine-to-exhaust balance, then use muffling and EQ to make the two layers sit together.
  • Listen for phasing, hollow tone, or sudden timbre changes during slow RPM sweeps. These are signs that the two sample sets do not blend naturally.

If two samples do not blend after basic gain, load mix, muffling, and EQ tuning, choose a closer pair instead. A coherent sample match usually sounds better than an interesting mix that only works in one RPM range or camera view.

Gain and load mix

Use mainGain to set the base loudness of each layer. It is measured in dB, so small changes matter. Avoid solving every issue with mainGain; once the rough balance is correct, use load mix, muffling, and EQ for smaller changes.

Use the two layer gains together:

  • Raise engine mainGain when the vehicle needs more mechanical or intake presence.
  • Raise exhaust mainGain when the vehicle needs more exterior tailpipe presence.
  • Lower both when the engine masks tire, wind, transmission, or environment sounds.
  • Leave enough room for afterfire, starter, forced induction, and crash sounds.

onLoadGain and offLoadGain control the relative level of loaded and unloaded parts of the sample. They are useful for making throttle application more aggressive or making lift-off quieter.

maxLoadMix and minLoadMix control the blend between off-load and on-load sound. A higher maxLoadMix gives more on-load character at full throttle. A higher minLoadMix keeps more on-load tone even when the engine is unloaded, which can be useful for some race or heavy-duty sounds but can make coasting feel unnatural if pushed too far.

Forced induction balance

Turbocharger and supercharger sounds should be mixed around the engine and exhaust layers, not used to hide problems in them. Tune the base engine and exhaust first with boost sounds at a reasonable level, then bring the forced-induction character forward.

For turbocharged engines:

  • Keep intake and turbo sounds clear enough to hear boost build-up under load.
  • Avoid making the exhaust so bright that it masks spool and bypass sounds.
  • Check quick throttle lifts, gear changes, and low-RPM boost transitions.
  • Make sure wastegate or blow-off sounds do not jump far above the engine mix unless the vehicle is intentionally extreme.

For supercharged engines:

  • The whine should follow engine speed and load without overpowering the combustion sound.
  • If the whine is harsh, reduce high-frequency content before lowering all engine audio.
  • Check interior views carefully, because supercharger whine can become tiring before it sounds too loud outside.

For high-power builds, keep the engine, exhaust, intake, and forced-induction layers distinct. If all layers are simply made louder, the result often sounds flat and noisy instead of powerful.

Muffled and open sounds

Muffling should usually be adjusted before detailed EQ. If a sound is too sharp, too open, or too distant, muffling is often the right control.

intakeMuffling applies to the engine-side layer. Lower values make the intake and engine layer sound more open. Higher values make it more subdued.

exhaustAudioMufflingBaseCoef applies to the exhaust-side layer. It sets the base muffling before exhaust parts and exhaust nodes add their own changes.

Exhaust parts can also tune the final outlet behavior with node modifiers:

["ex6", 0.0, 1.607, 0.243, {
    "afterFireAudioCoef": 0.13,
    "afterFireVisualCoef": 0.13,
    "afterFireVolumeCoef": 0.24,
    "afterFireMufflingCoef": 0.0,
    "exhaustAudioMufflingCoef": 0.02,
    "exhaustAudioGainChange": -6.5
}],

Useful exhaust node fields include:

  • exhaustAudioMufflingCoef, which changes how muffled the exhaust outlet is.
  • exhaustAudioGainChange, which changes exhaust outlet loudness.
  • afterFireAudioCoef, which changes how much afterfire audio is produced at that outlet.
  • afterFireVolumeCoef, which changes afterfire loudness.
  • afterFireMufflingCoef, which changes how muffled afterfire sounds.
  • afterFireVisualCoef, which changes visible afterfire effects.

The exhaust path should also identify which beams carry exhaust flow with isExhaust. This allows damage and exhaust routing to affect where exhaust sound and effects come from.

["ex1", "ex2", {"isExhaust": "mainEngine"}],
["ex2", "ex3", {"isExhaust": "mainEngine"}],
["ex3", "ex4", {"isExhaust": "mainEngine"}],

Exhaust routing and damage

Advanced exhaust audio depends on the physical exhaust route, not only the sound config. The exhaust path is normally a chain of beams marked with isExhaust, ending at one or more outlet nodes with audio and afterfire modifiers.

Use this setup when you want exhaust damage or part swaps to affect the sound:

  • Mark the exhaust beams that carry flow with isExhaust.
  • Put the outlet audio modifiers on the final outlet node or outlet nodes.
  • Keep structural rigidifier beams separate from the exhaust path unless they really should carry exhaust flow.
  • Use optional beams for extra visual support or alternate outlet geometry without accidentally creating a second exhaust route.

When an exhaust path is broken, the game can move sound and effects to the effective break point instead of always using the final tailpipe. This is why the exhaust path should follow the real routing from engine-side connection to outlet. If a decorative beam is marked as exhaust flow, damage behavior and sound emission can become confusing.

Dual or multi-exit exhausts can use more than one outlet node. Keep their audio values consistent unless the outlets intentionally represent different mufflers or pipe lengths. If a dual exhaust sounds too loud, reduce each outlet rather than leaving both at a single-exit value.

Exhaust variants

For advanced vehicles, stock, sport, tuned, and race exhausts should usually be separate part variants rather than one heavily edited base config. Each variant can change:

  • Outlet gain with exhaustAudioGainChange.
  • Outlet muffling with exhaustAudioMufflingCoef.
  • Afterfire amount, volume, muffling, and visual strength.
  • Exhaust EQ offsets if the vehicle uses component-driven exhaust settings.
  • Outlet count and outlet placement.

A common approach is to keep the same engine and exhaust sample family, then make the exhaust variants progressively less restrictive. For example:

// Stock outlet: quiet, controlled, low afterfire.
["ex6", 0.0, 1.607, 0.243, {
    "afterFireAudioCoef": 0.13,
    "afterFireVisualCoef": 0.13,
    "afterFireVolumeCoef": 0.24,
    "afterFireMufflingCoef": 0.0,
    "exhaustAudioMufflingCoef": 0.02,
    "exhaustAudioGainChange": -6.5
}],

// Sport outlet: louder, more open, more afterfire.
["ex6", 0.0, 1.607, 0.243, {
    "afterFireAudioCoef": 0.43,
    "afterFireVisualCoef": 0.03,
    "afterFireVolumeCoef": 0.55,
    "afterFireMufflingCoef": 0.26,
    "exhaustAudioMufflingCoef": 0.24,
    "exhaustAudioGainChange": -5.7
}],

Do not make every upgraded exhaust louder in every band. A sport exhaust may need more midrange and less high-frequency harshness. A race exhaust may need less muffling but still need lower mainGain or lower outlet gain to avoid masking tire and wind noise.

Component-driven variants

Some vehicles share exhaust parts across several engines. In that case, the engine can define component values, and the exhaust part can read those values for each variant. This lets an I3, I4, I5, diesel, and race engine use the same exhaust part while still getting appropriate muffling, EQ, and afterfire behavior.

The engine-side data can be grouped by exhaust variant:

"components": {
    "soundConfigExhaustComponents": {
        "base": {
            "nodeAfterFireAudioCoef": 0.15,
            "nodeAfterFireVolumeCoef": 0.24,
            "nodeExhaustAudioMufflingCoef": 0.0,
            "nodeExhaustAudioGainChange": -6.5
        },
        "sport": {
            "nodeAfterFireAudioCoef": 0.4,
            "nodeAfterFireVolumeCoef": 0.55,
            "nodeExhaustAudioMufflingCoef": 0.25,
            "nodeExhaustAudioGainChange": -5.7
        }
    }
},

The exhaust part can then read those values with fallbacks:

["ex6", 0.0, 1.607, 0.243, {
    "afterFireAudioCoef": "$=$components.soundConfigExhaustComponents.sport.nodeAfterFireAudioCoef or 0.43",
    "afterFireVolumeCoef": "$=$components.soundConfigExhaustComponents.sport.nodeAfterFireVolumeCoef or 0.55",
    "exhaustAudioMufflingCoef": "$=$components.soundConfigExhaustComponents.sport.nodeExhaustAudioMufflingCoef or 0.24",
    "exhaustAudioGainChange": "$=$components.soundConfigExhaustComponents.sport.nodeExhaustAudioGainChange or -5.7"
}],

Use this pattern when a vehicle has many engine options sharing the same exhaust slots. It keeps the exhaust part reusable while still letting each engine family define sensible defaults.

EQ and tone shaping

Use EQ after sample choice, gain, load mix, and muffling are close. EQ is best for tone correction, not for changing the basic identity of the engine.

The fundamental EQ controls the engine-order emphasis:

  • Increase eqFundamentalGain if the sound lacks engine-order definition.
  • Decrease it if the sound drones, booms, or feels too synthetic.

The low EQ controls body and weight:

  • eqLowFreq sets the center frequency.
  • eqLowGain boosts or cuts that area.
  • eqLowWidth controls how wide the affected range is.

The high EQ controls bite and brightness:

  • eqHighFreq sets the center frequency.
  • eqHighGain boosts or cuts that area.
  • eqHighWidth controls how wide the affected range is.

Shelf controls are useful for broad trimming:

  • Use the low shelf to reduce excessive rumble or add weight.
  • Use the high shelf to reduce harshness or add brightness.

Make EQ changes in small steps. Large boosts can make the sound tiring, distort more easily, or mask other vehicle sounds.

Smoothing

Engine RPM and load can change quickly, especially during shifts, throttle lifts, rev limiter contact, and wheelspin. Smoothing values control how quickly the audio follows those changes.

rpmSmootherInRate and rpmSmootherOutRate affect how fast RPM changes are followed by the sound.

loadSmootherInRate and loadSmootherOutRate affect how fast load changes are followed by the sound.

If the sound chatters or flickers during quick throttle changes, increase smoothing. If the sound feels delayed or disconnected from the engine, reduce smoothing. Tune this after the main mix is close, because gain and load mix problems can sound like smoothing problems.

Starters and shutoff sounds

Starter and shutoff events are separate from the continuous engine and exhaust loops. They should match the same vehicle character and not jump sharply in level when the loop starts or stops.

Common fields include:

  • starterSample for the engine-side starter sound.
  • starterSampleExhaust for the exhaust-side starter sound.
  • starterVolume and starterVolumeExhaust for starter loudness.
  • shutOffSampleEngine and shutOffSampleExhaust for shutdown sounds.
  • shutOffVolumeEngine and shutOffVolumeExhaust for shutdown loudness.

When tuning, repeatedly start and stop the engine from different camera views. The transition from starter to idle should feel continuous, and the shutoff should not be much louder than the running engine unless that is intentional.

Afterfire tuning

Afterfire has two sides: how much afterfire the engine produces, and how that afterfire is emitted by the exhaust outlet.

Engine-level afterfire settings control when and how strongly afterfire is generated. These include the event paths for instant, sustained, and shift afterfire sounds, plus coefficients and thresholds for each type. Use those values to decide whether the engine should produce occasional pops, sustained crackle on overrun, or aggressive shift bangs.

Outlet-level afterfire settings control how the generated afterfire behaves at a specific exhaust outlet:

  • afterFireAudioCoef changes how much generated afterfire audio reaches that outlet.
  • afterFireVolumeCoef changes the loudness of the afterfire at that outlet.
  • afterFireMufflingCoef changes how filtered or muffled the afterfire sounds.
  • afterFireVisualCoef changes visible flames separately from audio.

This separation is important for variants. A stock exhaust can use the same engine afterfire generation as a sport exhaust, but with lower outlet volume and more muffling. A race exhaust can let more of the same generated afterfire through without changing the engine itself.

Tune afterfire after the main engine and exhaust loop balance is close. Otherwise it is easy to make afterfire too loud just because the continuous exhaust layer is too quiet.

Use these checks:

  • Lift off from high RPM and listen for sustained overrun crackle.
  • Shift at high load and listen for shift afterfire.
  • Rev the engine in neutral and check individual pops.
  • Compare close exterior, distant exterior, and interior views.
  • Check that visual flames do not imply a much louder or quieter sound than what is heard.

Interior checks

Interior sound is not only the engine sound config. It is also affected by the vehicle sounds section and body parts that increase cabin filtering.

cabinFilterCoef controls how strongly the vehicle interior filters outside sound. A body may define a base value, then doors, roof panels, windows, or other cabin-closing parts can add to it.

Check these views before considering the mix finished:

  • Exterior orbit camera near the front of the vehicle.
  • Exterior orbit camera near the exhaust outlet.
  • Hood camera.
  • Driver or cockpit camera.
  • Distant exterior camera during acceleration and fly-by.

If the sound is good outside but too loud inside, adjust cabin filtering before making the whole engine quieter. If the sound is good inside but weak outside, adjust the exterior layer balance before raising everything.

Common problems

If the engine sounds like the wrong cylinder count, check sampleName and fundamentalFrequencyCylinderCount first.

If the engine is loud but has no throttle character, tune onLoadGain, offLoadGain, maxLoadMix, and minLoadMix.

If coasting is too loud, reduce offLoadGain or lower minLoadMix.

If full throttle is not aggressive enough, increase onLoadGain, increase maxLoadMix, or rebalance toward the exhaust layer.

If the exhaust is painfully sharp, increase muffling or reduce high EQ before lowering the whole exhaust.

If the sound is boomy or drones at steady RPM, reduce eqFundamentalGain, reduce low EQ, or trim the low shelf.

If afterfire is too loud compared with the engine, lower the afterfire volume coefficients on the engine or exhaust outlet instead of lowering the main exhaust layer.

If interior audio feels unrealistic, check cabinFilterCoef and test with all relevant body panels installed.

Debug workflow

Use a repeatable test loop when tuning advanced engine audio. Changing values randomly makes it hard to know whether a problem is sample choice, gain, load mix, muffling, EQ, or routing.

Start with the vehicle stationary:

  1. Start the engine and listen for the starter-to-idle transition.
  2. Hold idle from exterior and interior cameras.
  3. Slowly raise RPM with light throttle.
  4. Snap the throttle open and closed.
  5. Hit the rev limiter briefly if the vehicle is expected to reach it in normal use.
  6. Shut the engine off and listen for the shutdown transition.

Then test under load:

  1. Accelerate gently from low RPM.
  2. Accelerate at full throttle through several gears.
  3. Hold steady cruise at low, medium, and high speed.
  4. Lift off from high RPM.
  5. Downshift under braking.
  6. Drive past a fixed camera or listen from a distant exterior camera.

For each pass, write down one problem at a time. For example, “too much high-frequency exhaust on lift-off” is easier to fix than “sounds bad.” Make one small change, then repeat the same test.

When using Engine Audio Debug, copy values back to the JBeam only after a complete test pass. Live tuning is useful, but it is easy to overtune a value for one camera angle or one RPM range.

Setup patterns

These are starting points, not strict rules.

For a stock road car:

  • Keep exhaust mainGain moderate and outlet exhaustAudioGainChange reduced.
  • Use enough muffling to avoid harsh high-frequency exhaust.
  • Keep afterfire low or disabled unless the real vehicle type calls for it.
  • Use cabin filtering so the interior is quieter than exterior views.

For a sport exhaust:

  • Add exterior presence with outlet gain and moderate muffling changes.
  • Keep the engine layer audible so the sound does not become only tailpipe noise.
  • Add some afterfire audio if appropriate, but keep visual flames restrained for normal street parts.
  • Check highway cruise for drone.

For a race exhaust:

  • Reduce muffling and increase load character, but preserve mix headroom.
  • Use stronger afterfire only if it fits the engine and fuel setup.
  • Check distant exterior sound, because race exhausts can become harsh when heard away from the vehicle.
  • Do not rely only on mainGain; shape the tone with muffling and EQ.

For a diesel truck:

  • Keep low-frequency body, but avoid excessive fundamental drone.
  • Let load changes be obvious, especially at low and medium RPM.
  • Keep high-frequency exhaust controlled unless the vehicle uses a very open exhaust.
  • Balance turbo sounds so spool is audible under load but not louder than the engine itself.

For a quiet interior-focused vehicle:

  • Tune the exterior first, then reduce interior harshness with cabin filtering.
  • Avoid lowering both engine and exhaust so far that exterior cameras become weak.
  • Check wind and tire balance at speed.
  • Make starter and shutdown sounds quieter inside than outside.

Final pass

Do a final pass with the complete vehicle configuration, not only the engine installed in isolation. Engine audio has to sit with the rest of the vehicle:

  • Tires should still be audible during cornering and braking.
  • Wind should become noticeable at high speed.
  • Transmission and differential sounds should not disappear.
  • Starter, shutoff, and afterfire events should not clip or jump out of the mix.
  • Damaged or missing exhaust parts should change the sound in a believable way.

Good engine audio is usually the result of many small changes. Tune one group of values at a time, test from multiple cameras, and keep enough mix headroom for the rest of the vehicle.

Last modified: June 8, 2026

Any further questions?

Join our discord
Our documentation is currently incomplete and undergoing active development. If you have any questions or feedback, please visit this forum thread.