Little Improvements to Vehicle Movement

Hello Everyone!

I am trying to make a multiplayer racing game. I used WheeledVehicle class as parent to my GeneralCar blueprint. I added cameras, animations, all the necessary inputs what I can add but I saw some necessary inputs which I can’t use because they don’t exist in WheeledVehicle/VehicleMovement. So I decided to ask improvement from Epic Games if available.

Improvements that I would like to see are;

-Transmission type (Bool:Auto/Manual) should be changed to ETransmissionType:{FullAuto, Sequential, Manual}

-Set Clutch Input function. (For steering wheel support Logitech G25,G29 etc)
-Set GearUp/Down aren’t working properly right now and those functions should only work when Squential transmission selected.
-Set TargetGear should only work when Manual transmission selected. And OnGearMiss Event should be triggered when player try to call Set TargetGear without using Set ClutchInput.

-OnGearUp event (For be able to add gearup sound when automatic transmission enabled)
-OnGearDown event (For be able to add geardown sound when automatic transmission enabled)
-OnGearMiss event (For be able to add gearmiss sound)

I know these are not so important for now but can be very useful when we decide to ship games because steering wheel user count is increasing every year.
We would really appreciated if you can look in to these.

Best regards.

All of that can be done by yourself (or can be purchased from marketplace). Truthfully, the vehiclemovement from the UE4 is for arcade - ie you can use reverse gear to stop forward motion lol.

If we have access these via blueprints;

    /** update simulation data: engine */
    void UpdateEngineSetup(const FVehicleEngineData& NewEngineSetup);

    /** update simulation data: differential */
    void UpdateDifferentialSetup(const FVehicleDifferential4WData& NewDifferentialSetup);

    /** update simulation data: transmission */
    void UpdateTransmissionSetup(const FVehicleTransmissionData& NewGearSetup);

And these added to WheeledVehicle

   /** get simulation data: engine */
    class UWheeledVehicleMovementComponent* AWheeledVehicle::GetEngineSetup() const
        return EngineSetup;
    /** get simulation data: differential */
    class UWheeledVehicleMovementComponent* AWheeledVehicle::GetDifferentialSetup() const
        return DifferentialSetup;
    /** get simulation data: transmission */
    class UWheeledVehicleMovementComponent* AWheeledVehicle::GetTransmissionSetup() const
        return GearSetup;

maybe you are right.