I would extend the WheeledVehicleMovementComponent you want to modify and expose to blueprints anything that is not already exposed or simply change those values through C++. As far as materials and meshes those can be changed just like everything else such as by calling Set Material or Set Skeletal Mesh. If you wanted your car to have modular pieces there are several ways to do that such as by attaching Meshes and if it’s a Skeletal Mesh setting Master Pose Component.