Troubleshooting and FAQ

Table of Contents

This guide covers the most common issues you may encounter when using Realistic Car Controller Pro, organized by category. Each entry includes the problem, its likely cause, and a step-by-step solution.

Tip: Always check Unity's Console window (Window > General > Console) first. Most RCCP errors include descriptive messages that point directly to the cause.


Installation Issues

Import and Package Errors

ProblemCauseSolution
"Input System not found" error after importUnity's Input System package is not installedOpen Window > Package Manager, select Unity Registry, search for Input System, and click Install. See Installation.
"Newtonsoft.Json not found" errorMissing package dependencyOpen Window > Package Manager, select Unity Registry, search for Newtonsoft Json, and click Install.
Compilation errors immediately after importConflicting packages or missing dependenciesRead the full error in Console. Ensure both Input System and Newtonsoft Json packages are installed. If errors persist, try deleting the Library folder and reopening the project.
"Editor Coroutines not found" errorMissing editor coroutines packageOpen Window > Package Manager, select Unity Registry, search for Editor Coroutines, and click Install.
Pink or magenta materials everywhereWrong render pipeline shadersYou need to import the correct shader package for your pipeline (URP or HDRP). See Render Pipelines. Built-in pipeline works without additional imports.
Missing layers warning on first runRCCP layers not yet createdOpen Tools > BoneCracker Games > Realistic Car Controller Pro > Settings. RCCP creates its three layers (RCCP_Vehicle, RCCP_DetachablePart, RCCP_Prop) automatically. If this fails, restart Unity.
"All allowed layers have been filled"Unity has no free layer slots (max 32)Remove unused layers in Edit > Project Settings > Tags and Layers to free up at least 3 slots for RCCP.
NullReferenceException on entering Play modeRCCP_Settings asset missing from ResourcesVerify the file Assets/Realistic Car Controller Pro/Resources/RCCP_Settings.asset exists. If missing, reimport the package.
"Missing script" warnings on prefabsA previously installed addon was removed but references remainEither reimport the addon, or select the affected prefab and remove the missing script components manually via the Inspector context menu.
Duplicate class or namespace errorsMultiple versions of RCCP in the projectEnsure you only have one copy of the RCCP folder. Delete any older versions before importing a new one.

Upgrade Issues

ProblemCauseSolution
Errors after upgrading RCCP versionOld cached data or renamed scriptsDelete the Library folder and reopen the project. Unity will reimport everything.
Vehicle prefabs broken after upgradeSerialized references changed between versionsRe-run the Setup Wizard on affected vehicles, or recreate them from fresh models. See Vehicle Setup.
Behavior presets reset after upgradeSettings asset was overwrittenReconfigure your behavior presets in Tools > BoneCracker Games > Realistic Car Controller Pro > Settings. See Settings.

Vehicle Setup Issues

Vehicle Does Not Move

ProblemCauseSolution
Vehicle does not move at allNo power reaching the wheelsCheck the RCCP_Differential component's drive type (FWD, RWD, or AWD). Verify that the RCCP_Engine component exists on the vehicle. Confirm axles have isPower set correctly (this is controlled by the Differential, not set directly).
Engine starts but wheels do not spinClutch or gearbox misconfigurationCheck that RCCP_Clutch and RCCP_Gearbox components exist. Verify gear ratios are not zero.
Vehicle moves only in reverseGear ratios invertedCheck the gear ratios in RCCP_Gearbox. Forward gears should have positive ratios.
Vehicle barely moves, very slowTorque too low or gear ratios too tallIncrease maxTorqueAsNM on RCCP_Engine. Lower the final drive ratio on RCCP_Gearbox for more acceleration.

Vehicle Behaves Incorrectly

ProblemCauseSolution
Vehicle flips immediately on PlayWheel colliders intersecting the ground planeIncrease suspension distance on RCCP_Axle components. Verify wheel collider radius matches the visual wheel size. Check that the wheel collider center offset is correct.
Vehicle bounces continuouslySuspension damper force too lowIncrease the damper value on RCCP_Axle components. A good starting range is 2000-5000 for normal cars.
Wheels floating above the groundSuspension distance too large or center offset wrongDecrease suspension distance on RCCP_Axle. Check the wheel collider center Y offset.
Vehicle slides sideways excessivelySideways friction too lowAdjust sideways friction values in the active behavior preset (RCCP_Settings > Behavior Types). Increase sidewaysExtremumValue and sidewaysAsymptoteValue.
Vehicle is too fast or too slowEngine torque or speed limiter settingsAdjust maxTorqueAsNM and maxEngineRPM on RCCP_Engine. Check if RCCP_Limiter is attached and capping speed.
Wheels spinning in the wrong visual directionIncorrect wheel model pivot orientationThe wheel mesh pivot must be centered on the wheel. Check your 3D model's axis orientation -- the rotation axis should align with Unity's conventions.
Steering feels unresponsive at low speedSteering curve dropping off too earlyCheck the steering curve on the behavior preset or RCCP_Axle. The Y value at low speeds (left side of the curve) should be close to 1.0. The curve format is X = speed in km/h, Y = steering multiplier (0 to 1).
Steering too sensitive at high speedSteering curve not reducing at high speedEdit the steering curve so the Y value drops toward 0.2-0.4 at higher X (speed) values.

Component Hierarchy Errors

ProblemCauseSolution
"Couldn't find RCCP_CarController in parent"Subsystem component placed on the wrong GameObjectAll RCCP subsystem components (Engine, Gearbox, Axle, etc.) must be placed on child GameObjects of the root GameObject that has RCCP_CarController. Move the component to the correct hierarchy position.
"This component is missing RCCP_CarController on parent"Same as aboveSame fix -- ensure the component is a child of the RCCP_CarController GameObject.
"Customizer component couldn't found"RCCP_Customizer not added to the vehicleAdd an RCCP_Customizer component to the vehicle before adding upgrade components. See Customization.

Input Issues

No Input Response

ProblemCauseSolution
Vehicle ignores all inputcanControl is false on RCCP_CarControllerSelect the vehicle in the Inspector and set canControl = true. This flag is also toggled by RCCP.SetControl().
Vehicle ignores player input but AI worksexternalControl is trueSet externalControl = false on RCCP_CarController. When true, the vehicle ignores RCCP_InputManager and expects external input (AI, replay, network).
Input works in editor but not in buildInput System not included in buildGo to Edit > Project Settings > Player > Other Settings and ensure Active Input Handling is set to Both or Input System Package (New).
RCCP_InputActions.Instance is nullInput Actions asset missing from ResourcesCheck that Assets/Realistic Car Controller Pro/Resources/RCCP_InputActions.asset exists. Reimport the package if missing.

Specific Input Problems

ProblemCauseSolution
Gamepad not detectedInput System not recognizing the deviceOpen Window > Analysis > Input Debugger to see connected devices. Ensure your gamepad is listed. Try disconnecting and reconnecting.
Key rebindings not saving between sessionsAuto-save disabled in settingsEnable autoSaveLoadInputRebind in RCCP_Settings. See Settings.
Mobile controls not appearingMobile controller not enabledSet mobileControllerEnabled = true in RCCP_Settings > Mobile Input section. See Mobile.
Both keyboard and mobile controls activeMobile controller enabled on desktopSet mobileControllerEnabled = false in RCCP_Settings for desktop platforms. Use platform-specific checks or preprocessor directives.
Vehicle drives itself without inputoverridePlayerInputs is true on RCCP_InputCheck the RCCP_Input component and set overridePlayerInputs = false. Also verify externalControl is false on the car controller.
Logitech wheel not respondingSDK not initialized or wrong mappingSee Logitech Steering Wheels for detailed setup instructions.

Physics Issues

Unrealistic Behavior

ProblemCauseSolution
Unrealistic drifting on every turnDrift mode enabled in behavior presetCheck the active behavior preset in RCCP_Settings. Set driftMode = false if you want realistic grip driving.
Vehicle jitters or vibrates at low speedPhysics timestep too largeLower fixedTimeStep in RCCP_Settings. Try 0.01 instead of the default 0.02. Do not go below 0.005 as this severely impacts performance.
Vehicle flies off ramps unrealisticallyMax angular velocity too highLower maxAngularVelocity in RCCP_Settings. The default is 6. Try values between 4-7 for realistic behavior.
Wheels clip through the groundWheel collider mass too low or fixed colliders disabledEnable useFixedWheelColliders in RCCP_Settings. This uses higher-mass wheel colliders that resist sinking.
Car spins out too easilyRear friction too low or stability aids disabledEnable ESP/TCS in the behavior preset. Increase rear sideways friction values. Check the RCCP_Stability component settings.

Stability and Aids

ProblemCauseSolution
ABS not working (wheels lock up)ABS disabled in behavior presetEnable ABS in the active behavior preset under RCCP_Settings.
TCS not working (wheels spin freely)TCS disabled in behavior presetEnable TCS in the active behavior preset.
ESP not working (car oversteers)ESP disabled on the vehicleEnable ESP on the RCCP_Stability component. If it is already on, raise ESP Intensity (default 0.5) or lower ESP Deadband (default 10 deg/s → try 4 deg/s).
ESP dashboard light flickers on and offESPIndicatorEngaged threshold or hold time too lowRaise Min Noticeable Brake Torque (default 200 Nm) and/or UI Min Hold Time (default 0.25 s) on RCCP_Stability. Or bind your dashboard lamp to ESPIndicatorEngaged, not ESPEngaged. See Telemetry and Debug.
ESP engages on every small steering inputDeadband too low for the target vehicleRaise ESP Deadband to 6–10 deg/s (default 10). Alternatively, widen hysteresis by also raising ESP Deactivation Deadband (default 2 deg/s).
ESP brakes the wrong wheel during rapid transitionsClassification flipping between oversteer and understeerRaise ESP Mode Commit Time (default 0.15s). Check that Understeer Gradient (K_us) matches the vehicle archetype — 0.0035 for a typical sedan, 0.002 for a sporty car, 0.005+ for an SUV.
ESP bleeds too much speed through corners in arcade gamesESP brake deceleration not compensatedRaise Preserve Speed Factor on RCCP_Stability (0 = realistic, 1 = full cancellation of ESP brake drag). Set ESP Mode to Sport to also disable the motor-torque cut.
ESP never engages at high speedψ̇_ref being clamped by friction limit before the error mattersRaise Estimated Mu (μ) (default 0.9) toward 1.0 for dry asphalt gameplay. Lower it (0.3–0.6) only if the game surface is genuinely wet/icy.
Stability aids too aggressiveAid strength values too highLower ESP Intensity / TCS Intensity / ABS Intensity (all on RCCP_Stability) and the behavior-preset steering helper strengths. See Settings.
Motor torque and ESP brake torque fight on the same driven wheelScript execution order corruptedRun Tools > BoneCracker Games > Realistic Car Controller Pro > Debug > Validate Script Execution Order. The expected order is Axle (-2) → Stability (-1) → WheelCollider (0). See Architecture.

Differential Problems

ProblemCauseSolution
One wheel spins while the other does notOpen differential behaviorThis is correct for Open differential type. Switch to Limited or FullLocked on RCCP_Differential for more equal power distribution.
Both wheels always spin at the same rateFull locked differentialThis is correct for FullLocked type. Switch to Limited or Open for more natural behavior on turns.
Car pulls to one side under accelerationUnequal torque splitCheck differential type. Direct gives equal split. Limited with a low slip ratio can cause slight pull.

Differential types explained:

TypeBehaviorBest For
OpenTorque shifts based on wheel slipRealistic street driving
LimitedPartially locks based on slip ratio (0-100%)General purpose, most common
FullLockedBoth wheels always receive equal torqueDrift setups, off-road
DirectEqual 50/50 split regardless of conditionsSimplified physics

Visual and Audio Issues

Skidmarks and Particles

ProblemCauseSolution
Skidmarks not appearingSkidmark prefab not assigned for the surface typeOpen RCCP_GroundMaterials asset and verify each ground material has a skidmark prefab assigned. See Ground Materials.
Particles not showing on wheel slipParticle prefab not assigned for the surface typeOpen RCCP_GroundMaterials asset and assign particle prefabs for each ground material.
Skidmarks appear but are invisibleSkidmark material or shader issueCheck that the skidmark prefab's material uses a shader compatible with your render pipeline.
Wrong surface effects on terrainTerrain splatmap not recognizedEnsure your terrain's splat textures are listed in RCCP_GroundMaterials in the correct order matching the terrain layers.

Lights

ProblemCauseSolution
Vehicle lights not workingRCCP_Lights component missing or no RCCP_Light childrenAdd RCCP_Lights to the vehicle, then add RCCP_Light components to individual light GameObjects. See Vehicle Setup.
Lens flares not showingWrong flare component for your pipelineBuilt-in pipeline uses Unity's LensFlare component. URP and HDRP require LensFlareComponentSRP. See Render Pipelines.
Headlights illuminate the vehicle bodyLight culling mask includes vehicle layerExclude the RCCP_Vehicle layer from the headlight's culling mask in the Light component.

Damage

ProblemCauseSolution
Damage not deforming the meshRCCP_Damage not configured or mesh has too few verticesCheck that automaticInstallation is true on RCCP_Damage, or manually assign mesh filters. The mesh needs sufficient vertex density to show visible deformation.
Detachable parts not falling offRCCP_DetachablePart not configuredAdd RCCP_DetachablePart to each part that should detach. Configure the break force threshold. See Damage System.
"Configurable Joint not found" warningJoint setup incomplete on detachable partEnsure the detachable part has a properly configured ConfigurableJoint with a connected body.

Audio

ProblemCauseSolution
No engine soundRCCP_Audio component missing or no audio clipsAdd RCCP_Audio to the vehicle. Check RCCP_Settings to ensure engine audio clips are assigned in the audio section.
Engine sound pitch is wrongRPM-to-pitch mapping incorrectAdjust the audio settings on RCCP_Audio. The pitch scales with engine RPM.
Audio cuts out at distanceAudio source max distance too shortIncrease the max distance on the AudioSource components attached to the vehicle's audio child objects.

Decals and Neons

ProblemCauseSolution
Decals not visibleUsing Built-in Render PipelineDecals require URP or HDRP. They are not supported on the Built-in pipeline. See Render Pipelines.
Neon lights not visibleUsing Built-in Render PipelineNeons also require URP or HDRP.

Camera Issues

ProblemCauseSolution
No camera following the vehicleRCCP_Camera not in the sceneAdd an RCCP_Camera prefab to your scene, or ensure RCCP_SceneManager is present (it can auto-create the camera). See Camera System.
Camera clips through objectsOcclusion layer mask not configuredSet the occlusionLayerMask on RCCP_Camera to include environment layers but exclude RCCP vehicle layers.
Camera mode not switchingCamera mode disabled in settingsCheck useHoodCameraMode, useWheelCameraMode, useFixedCameraMode, useCinematicCameraMode, useTopCameraMode on RCCP_Camera. Disabled modes are skipped when cycling.
"UniversalAdditionalCameraData component couldn't found"URP camera data missingSelect the actual Camera child of RCCP_Camera in the Inspector. Unity should auto-add the UniversalAdditionalCameraData component. If not, add it manually. This is required for URP post-processing and lens flares.
Hood camera shaking violentlyConfigurableJoint misconfigurationCheck the RCCP_HoodCamera component. If you see "has a ConfigurableJoint with no connected body," remove the joint and rigidbody, then reconfigure.

Available camera modes:

ModeDescription
TPSThird-person chase camera (default)
FPSFirst-person hood camera
WHEELWheel-level camera
FIXEDFixed position camera
CINEMATICCinematic angle camera
TOPTop-down camera
TRUCKTRAILERTruck and trailer view

Performance Issues

ProblemCauseSolution
Low FPS with many vehiclesToo many physics calculations per frameAdd RCCP_Lod to each vehicle to automatically disable expensive logic (audio, skidmarks, wheel alignment) at distance. Enable multithreading in RCCP_Settings. Reduce total vehicle count.
High CPU usage from physicsFixed timestep too low (too many physics steps per frame)Increase fixedTimeStep in RCCP_Settings. The default 0.02 is a good balance. Never go below 0.005.
Memory spike on scene loadTerrain splatmap cachingThis is normal. RCCP_SceneManager caches terrain data on the first frame for ground material detection. The spike is temporary.
Skidmark rendering is slowToo many skidmark sectionsSkidmarks are managed by RCCP_SkidmarksManager. If multithreading is supported and enabled, mesh rebuilds happen on background threads. If performance is still an issue, reduce the maximum skidmark count in the skidmark prefab settings.
"Multithreading is disabled on this platform"Platform does not support async operationsThis is a warning, not an error. RCCP falls back to synchronous methods automatically. Performance may be slightly lower on single-threaded platforms.

Performance Optimization Checklist

  1. Enable multithreading in RCCP_Settings (on by default)
  2. Add RCCP_Lod to all vehicles, especially AI/traffic vehicles
  3. Keep fixedTimeStep at 0.02 or higher for large vehicle counts
  4. Limit the number of simultaneously active vehicles
  5. Use LOD Groups on vehicle meshes (standard Unity LOD, separate from RCCP_Lod)
  6. Disable useTelemetry and useInputDebugger in builds

Customization Issues

ProblemCauseSolution
Customization loadout not savingsaveFileName is empty or not uniqueSet a unique saveFileName on the RCCP_Customizer component for each vehicle. If left empty, it defaults to the GameObject name, but duplicates will overwrite each other. Loadouts are stored in PlayerPrefs.
Paint color not applyingMaterial does not support color changesEnsure the vehicle body material uses a shader with a _Color or _BaseColor property. The RCCP_VehicleUpgrade_Paint component needs the body material reference assigned.
Wheel swap not workingNo wheels in the changeable wheels listAdd wheel prefabs to the RCCP_ChangableWheels asset located in Assets/Realistic Car Controller Pro/Resources/. See Customization.
"RCCP_ChangableWheels doesn't have wheelIndex" errorRequesting a wheel index that does not existCheck that the wheel index you are requesting is within the range of the wheels array in RCCP_ChangableWheels.
Upgrade components not workingMissing upgrade managerAdd RCCP_VehicleUpgrade_UpgradeManager to the vehicle before adding individual upgrade components (Engine, Brake, Handling, Speed).
"Engine couldn't found in the vehicle"Upgrade component missing a required dependencyRCCP_VehicleUpgrade_Engine and RCCP_VehicleUpgrade_Speed require an RCCP_Engine component. RCCP_VehicleUpgrade_Brake requires RCCP_Axle components. RCCP_VehicleUpgrade_Handling requires RCCP_Stability.
Spoiler not appearingBody renderer not assignedSet the body renderer reference on RCCP_VehicleUpgrade_Spoiler. Without it, the spoiler cannot position itself correctly.
Customization resets on scene loadautoInitialize is false or loadout not savedEnsure autoInitialize = true on RCCP_Customizer and that Save() was called after changes.

Networking Issues

Photon PUN 2

ProblemCauseSolution
Remote vehicles jitteringHigh latency or low sync rateIncrease the sync rate on RCCP_PhotonSync. Enable interpolation for smoother visual updates. See Photon PUN 2.
Input not working for local playerOwnership not assigned correctlyEnsure photonView.IsMine is true before sending input. Only the owner should send control inputs.
Customization not syncing across networkautoInitialize on for remote vehiclesSet RCCP_Customizer.autoInitialize = false for non-local (remote) vehicles. Sync customization data separately via RPC.

Mirror

ProblemCauseSolution
Authority errors on vehicle controlWrong ownership modelCheck isLocalPlayer before sending input commands. Only the local player should control the vehicle. See Mirror Networking.
Vehicle snapping on remote clientsSync interval too low or no interpolationIncrease the sync interval and enable interpolation on RCCP_MirrorSync.

AI Vehicle Issues

ProblemCauseSolution
AI vehicle does not follow waypointsWaypoint container not assignedAssign an RCCP_AIWaypointsContainer to the RCCP_AI component. See AI Vehicles.
AI vehicle gets stuckStuck detection not configured or obstacles blockingCheck the stuck detection settings on RCCP_AI. Ensure the waypoint path is clear. The AI has a built-in stuck timer that triggers reverse.
AI vehicle ignores brake zonesBrake zone container not assignedAssign an RCCP_AIBrakeZonesContainer to the RCCP_AI component. Brake zone triggers must be on the "Ignore Raycast" layer.
AI vehicle collides with obstaclesDynamic obstacle avoidance not configuredAdd RCCP_AIDynamicObstacleAvoidance to the AI vehicle. Set dynamicObstacleLayers to include layers with obstacles.
AI drives erratically at intersectionsWaypoint spacing too tightIncrease spacing between waypoints at intersections. Use the waypoint editor to smooth the path.

Demo Scene Issues

ProblemCauseSolution
"This scene couldn't found in the Build Settings"Demo scene not added to build settingsGo to Tools > BoneCracker Games > Realistic Car Controller Pro > Welcome Window and click Add Demo Scenes To Build Settings.
Demo scene works but my scene does notMissing scene manager or cameraYour scene needs at minimum: an RCCP_SceneManager (auto-created via singleton), an RCCP_Camera, and a properly set up vehicle. Compare your scene to RCCP_Scene_Blank_Prototype.
Demo vehicles not spawningRCCP_DemoVehicles asset not configuredCheck Assets/Realistic Car Controller Pro/Resources/RCCP_DemoVehicles.asset. Ensure it has vehicle prefabs assigned.

Common Error Messages Reference

This table lists the most frequently seen error and warning messages, what they mean, and how to fix them.

Error MessageMeaningFix
"Couldn't find RCCP_CarController in parent, this component named X is disabled!"A subsystem component is not a child of an RCCP_CarControllerMove the component to be under the RCCP_CarController hierarchy
"This component named X is missing RCCP_CarController on parent"Same as aboveSame fix
"Customizer component couldn't found on the X!"An upgrade component cannot find RCCP_CustomizerAdd RCCP_Customizer to the vehicle
"Engine couldn't found in the vehicle"Engine upgrade/speed upgrade missing RCCP_EngineAdd RCCP_Engine to the vehicle
"Axles couldn't found in your vehicle"Brake upgrade missing RCCP_Axle componentsAdd RCCP_Axle components to the vehicle
"Stability component couldn't found in the vehicle"Handling upgrade missing RCCP_StabilityAdd RCCP_Stability to the vehicle
"Body renderer of this spoiler is not selected!"Spoiler component has no renderer referenceAssign the body renderer in the RCCP_VehicleUpgrade_Spoiler Inspector
"Body material is not selected for this painter"Paint component has no material referenceAssign the body material in RCCP_VehicleUpgrade_Paint
"WheelCollider is not selected for this caliper named X"Caliper has no wheel referenceAssign the WheelCollider reference in RCCP_Caliper
"Wheel model is not selected for X. Disabling this wheelcollider."RCCP_WheelCollider has no visual wheel modelAssign the wheel model transform in the RCCP_WheelCollider Inspector
"No ParticleSystem found on this exhaust named X"Exhaust object missing ParticleSystemAdd a ParticleSystem to the exhaust GameObject
"Particles couldn't be found on this GameObject named X"Wheel slip particle object missing ParticleSystemEnsure the wheel slip prefab has a ParticleSystem component
"Terrain data of the X is missing!"Terrain has no terrain data assetAssign terrain data to the terrain in the Inspector
"RCCP_InputActions.Instance is null"Input actions asset missing from ResourcesReimport RCCP or restore the RCCP_InputActions asset to the Resources folder
"Could not find action map: X"Input action maps not found in the input assetReimport RCCP. The input asset should contain Driving, Camera, and Replay action maps.
"Behavior preset 'X' not found."Trying to switch to a nonexistent behaviorCheck the behavior name matches one defined in RCCP_Settings.behaviorTypes
"Camera target not found!"Showroom camera has no target assignedAssign a target transform on RCCP_ShowroomCamera
"Damage component couldn't found on the vehicle named: X!"RCCP_DamageData used without RCCP_DamageAdd RCCP_Damage to the vehicle
"RCCP_UIManager couldn't be found in the scene."Demo customization station missing UI managerAdd RCCP_UIManager to the scene (included in demo scene prefabs)
"Corrupt preference file for X"PlayerPrefs data corruptedDelete the corrupted key using PlayerPrefs.DeleteKey() or clear all with PlayerPrefs.DeleteAll()

Frequently Asked Questions

General

Q: What Unity versions does RCCP support?

A: RCCP V2.31 requires Unity 6000.0 (Unity 6) or newer.

Q: Which render pipelines are supported?

A: Built-in, URP, and HDRP are all supported. You need to import the matching shader package for URP or HDRP. See Render Pipelines.

Q: Does RCCP work with the old Input Manager?

A: No. RCCP requires Unity's Input System package (the new input system). Make sure your project's Active Input Handling is set to Input System Package (New) or Both in Player Settings.

Q: Can I use RCCP in a mobile game?

A: Yes. Enable mobileControllerEnabled in RCCP_Settings and choose a mobile controller type (TouchScreen, Gyro, SteeringWheel, or Joystick). See Mobile.

Vehicle Setup

Q: How do I set up a new vehicle from scratch?

A: Use the Setup Wizard at Tools > BoneCracker Games > Realistic Car Controller Pro > Vehicle Setup Wizard. It walks you through the entire process. See Vehicle Setup.

Q: Why does the Differential set wheel power instead of the Axle component?

A: The isPower flag on axles is controlled by RCCP_Differential based on its drive type (FWD/RWD/AWD). You do not set it directly on the axle. This is a common source of confusion.

Q: What is RCCP_RuntimeSettings and why do my runtime changes not persist?

A: RCCP_RuntimeSettings creates runtime clones of ScriptableObjects so that Play mode changes do not modify your asset files. Modify the runtime clone during gameplay, not the original asset. Changes to runtime clones are lost when you exit Play mode, by design.

Q: How do I add a new component type to RCCP?

A: If you create a new class inheriting from RCCP_Component, you must also add a case for it in RCCP_Component.Register(). The registration uses a type-switch, so missing your type means the car controller will not cache a reference to it.

Physics

Q: What is the recommended fixedTimeStep?

A: The default of 0.02 (50 Hz) works well for most cases. Use 0.01 (100 Hz) for more precise physics at the cost of performance. Never go below 0.005.

Q: How do steering curves work?

A: Steering curves use X = speed in km/h and Y = steering multiplier from 0 to 1. They control how much steering angle is available at a given speed. A Y value of 1 at X=0 means full steering at standstill. A Y value of 0.3 at X=200 means 30% steering at 200 km/h. The Y axis is a multiplier, not degrees.

Q: What does useFixedWheelColliders do?

A: It increases wheel collider mass to prevent wheels from sinking through the ground at high speeds or under heavy load. Recommended to leave enabled (default: true).

Customization

Q: Where are customization loadouts saved?

A: Loadouts are saved to PlayerPrefs using the saveFileName from RCCP_Customizer. They persist between sessions on the same machine. For cloud saves, you would need to implement your own save system.

Q: How do I reset a vehicle's customization?

A: Call RCCP_Customizer.Delete() on the vehicle to remove its saved loadout from PlayerPrefs, then reload the vehicle.

Networking

Q: Can I use RCCP with networking solutions other than Photon and Mirror?

A: Yes. Use the overridePlayerInputs and externalControl flags on the vehicle to feed input from your networking solution. Override RCCP_Input values on remote clients using the external input API. See Overriding Inputs.


Diagnostic Steps

When you encounter an issue not listed above, follow these steps:

Step 1: Read the Console

Open Window > General > Console in Unity. Look for red (error) and yellow (warning) messages. RCCP prefixes most messages with the component name, making it easier to locate the source.

Step 2: Check the Minimal Setup

Ensure your scene has the bare minimum:

Step 3: Test in a Clean Scene

Create a new empty scene and set up a single vehicle. If it works there but not in your main scene, the issue is in your scene configuration, not RCCP itself.

Step 4: Test with the Prototype Scene

Open Assets/Realistic Car Controller Pro/Scenes/RCCP_Scene_Blank_Prototype.unity and press Play. If the demo vehicle works correctly, your RCCP installation is fine.

Step 5: Enable Telemetry

Set useTelemetry = true in RCCP_Settings to see real-time vehicle data overlaid on screen during Play mode. This shows engine RPM, speed, gear, wheel slip, and other diagnostics. See Telemetry and Debug.

Step 6: Validate Script Execution Order

If the issue is physics-flavored (motor torque getting cut when it shouldn't, ESP braking the wrong wheel, strange drivetrain fights during stability events), your ScriptExecutionOrder may have drifted. Run:

Tools > BoneCracker Games > Realistic Car Controller Pro > Debug > Validate Script Execution Order

Then check the Console. The expected -2 → -1 → 0 torque-pipeline ordering (Axle → Stability → WheelCollider) is load-bearing — see Architecture — Execution Order.

Step 7: Contact Support

If you cannot resolve the issue, contact us with the following information:

Email: bonecrackergames@gmail.com

Website: www.bonecrackergames.com