281 lines
22 KiB
C++
Executable File
281 lines
22 KiB
C++
Executable File
#pragma once
|
|
|
|
//PUBGM(0.13.5)32位SDK
|
|
//作者:清华
|
|
//Telegram:@qinghuanb666
|
|
//生成时间:Fri Apr 18 20:44:40 2025
|
|
|
|
namespace SDK
|
|
{
|
|
//---------------------------------------------------------------------------
|
|
//Classes
|
|
//---------------------------------------------------------------------------
|
|
|
|
// Class PhysXVehicles.VehicleAnimInstance
|
|
// 0x0410 (0x0700 - 0x02F0)
|
|
class UVehicleAnimInstance : public UAnimInstance
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x400]; // 0x02F0(0x0400) MISSED OFFSET
|
|
class UWheeledVehicleMovementComponent* WheeledVehicleMovementComponent; // 0x06F0(0x0004) (ExportObject, ZeroConstructor, Transient, InstancedReference, IsPlainOldData)
|
|
unsigned char UnknownData01[0xC]; // 0x06F4(0x000C) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.VehicleAnimInstance");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
class AWheeledVehicle* GetVehicle();
|
|
};
|
|
|
|
|
|
// Class PhysXVehicles.WheeledVehicleMovementComponent
|
|
// 0x0138 (0x0260 - 0x0128)
|
|
class UWheeledVehicleMovementComponent : public UPawnMovementComponent
|
|
{
|
|
public:
|
|
unsigned char bDeprecatedSpringOffsetMode : 1; // 0x0128(0x0001) (Edit)
|
|
unsigned char UnknownData00[0x3]; // 0x0129(0x0003) MISSED OFFSET
|
|
TArray<struct FWheelSetup> WheelSetups; // 0x012C(0x000C) (Edit, ZeroConstructor)
|
|
float Mass; // 0x0138(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float DragCoefficient; // 0x013C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float ChassisWidth; // 0x0140(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float ChassisHeight; // 0x0144(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
bool bReverseAsBrake; // 0x0148(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData01[0x3]; // 0x0149(0x0003) MISSED OFFSET
|
|
float DragArea; // 0x014C(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float EstimatedMaxEngineSpeed; // 0x0150(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float MaxEngineRPM; // 0x0154(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float DebugDragMagnitude; // 0x0158(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
struct FVector InertiaTensorScale; // 0x015C(0x000C) (Edit, IsPlainOldData)
|
|
float MinNormalizedTireLoad; // 0x0168(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float MinNormalizedTireLoadFiltered; // 0x016C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float MaxNormalizedTireLoad; // 0x0170(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float MaxNormalizedTireLoadFiltered; // 0x0174(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float ThresholdLongitudinalSpeed; // 0x0178(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
int LowForwardSpeedSubStepCount; // 0x017C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
int HighForwardSpeedSubStepCount; // 0x0180(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
TArray<class UVehicleWheel*> Wheels; // 0x0184(0x000C) (BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Transient, DuplicateTransient)
|
|
unsigned char UnknownData02[0xC]; // 0x0190(0x000C) MISSED OFFSET
|
|
unsigned char bUseRVOAvoidance : 1; // 0x019C(0x0001) (Edit, BlueprintVisible)
|
|
unsigned char UnknownData03[0x3]; // 0x019D(0x0003) MISSED OFFSET
|
|
float RVOAvoidanceRadius; // 0x01A0(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float RVOAvoidanceHeight; // 0x01A4(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float AvoidanceConsiderationRadius; // 0x01A8(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float RVOSteeringStep; // 0x01AC(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float RVOThrottleStep; // 0x01B0(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
int AvoidanceUID; // 0x01B4(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, EditConst, IsPlainOldData)
|
|
struct FNavAvoidanceMask AvoidanceGroup; // 0x01B8(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, IsPlainOldData)
|
|
struct FNavAvoidanceMask GroupsToAvoid; // 0x01BC(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, IsPlainOldData)
|
|
struct FNavAvoidanceMask GroupsToIgnore; // 0x01C0(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, IsPlainOldData)
|
|
float AvoidanceWeight; // 0x01C4(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
struct FVector PendingLaunchVelocity; // 0x01C8(0x000C) (IsPlainOldData)
|
|
struct FReplicatedVehicleState ReplicatedState; // 0x01D4(0x0014) (Net, Transient, IsPlainOldData)
|
|
unsigned char UnknownData04[0x4]; // 0x01E8(0x0004) MISSED OFFSET
|
|
float RawSteeringInput; // 0x01EC(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float RawThrottleInput; // 0x01F0(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float RawBrakeInput; // 0x01F4(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
unsigned char bRawHandbrakeInput : 1; // 0x01F8(0x0001) (Transient)
|
|
unsigned char bRawGearUpInput : 1; // 0x01F8(0x0001) (Transient)
|
|
unsigned char bRawGearDownInput : 1; // 0x01F8(0x0001) (Transient)
|
|
unsigned char UnknownData05[0x3]; // 0x01F9(0x0003) MISSED OFFSET
|
|
float SteeringInput; // 0x01FC(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float ThrottleInput; // 0x0200(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float BrakeInput; // 0x0204(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float HandbrakeInput; // 0x0208(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float IdleBrakeInput; // 0x020C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float StopThreshold; // 0x0210(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float WrongDirectionThreshold; // 0x0214(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
struct FVehicleInputRate ThrottleInputRate; // 0x0218(0x0008) (Edit)
|
|
struct FVehicleInputRate BrakeInputRate; // 0x0220(0x0008) (Edit)
|
|
struct FVehicleInputRate HandbrakeInputRate; // 0x0228(0x0008) (Edit)
|
|
struct FVehicleInputRate SteeringInputRate; // 0x0230(0x0008) (Edit)
|
|
unsigned char bWasAvoidanceUpdated : 1; // 0x0238(0x0001) (Transient)
|
|
unsigned char UnknownData06[0x27]; // 0x0239(0x0027) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.WheeledVehicleMovementComponent");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
void SetUseAutoGears(bool bUseAuto);
|
|
void SetThrottleInput(float Throttle);
|
|
void SetTargetGear(int GearNum, bool bImmediate);
|
|
void SetSteeringInput(float Steering);
|
|
void SetPhysActive(bool bActive);
|
|
void SetHandbrakeInput(bool bNewHandbrake);
|
|
void SetGroupsToIgnoreMask(const struct FNavAvoidanceMask& GroupMask);
|
|
void SetGroupsToIgnore(int GroupFlags);
|
|
void SetGroupsToAvoidMask(const struct FNavAvoidanceMask& GroupMask);
|
|
void SetGroupsToAvoid(int GroupFlags);
|
|
void SetGearUp(bool bNewGearUp);
|
|
void SetGearDown(bool bNewGearDown);
|
|
void SetBrakeInput(float Brake);
|
|
void SetAvoidanceGroupMask(const struct FNavAvoidanceMask& GroupMask);
|
|
void SetAvoidanceGroup(int GroupFlags);
|
|
void SetAvoidanceEnabled(bool bEnable);
|
|
void ServerUpdateState(float InSteeringInput, float InThrottleInput, float InBrakeInput, float InHandbrakeInput, int CurrentGear);
|
|
bool GetUseAutoGears();
|
|
int GetTargetGear();
|
|
float GetForwardSpeed();
|
|
float GetEngineRotationSpeed();
|
|
float GetEngineMaxRotationSpeed();
|
|
int GetCurrentGear();
|
|
};
|
|
|
|
|
|
// Class PhysXVehicles.WheeledVehicleMovementComponent4W
|
|
// 0x0110 (0x0370 - 0x0260)
|
|
class UWheeledVehicleMovementComponent4W : public UWheeledVehicleMovementComponent
|
|
{
|
|
public:
|
|
struct FVehicleEngineData EngineSetup; // 0x0260(0x006C) (Edit)
|
|
struct FVehicleDifferential4WData DifferentialSetup; // 0x02CC(0x001C) (Edit)
|
|
struct FVehicleTransmissionData TransmissionSetup; // 0x02E8(0x0028) (Edit)
|
|
struct FRuntimeFloatCurve SteeringCurve; // 0x0310(0x0058) (Edit)
|
|
float AckermannAccuracy; // 0x0368(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData00[0x4]; // 0x036C(0x0004) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.WheeledVehicleMovementComponent4W");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class PhysXVehicles.VehicleWheel
|
|
// 0x00AC (0x00C8 - 0x001C)
|
|
class UVehicleWheel : public UObject
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x4]; // 0x001C(0x0004) MISSED OFFSET
|
|
bool bDontCreateShape; // 0x0020(0x0001) (Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData)
|
|
bool bAutoAdjustCollisionSize; // 0x0021(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData01[0x2]; // 0x0022(0x0002) MISSED OFFSET
|
|
struct FVector Offset; // 0x0024(0x000C) (Edit, IsPlainOldData)
|
|
float ShapeRadius; // 0x0030(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float ShapeWidth; // 0x0034(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float Mass; // 0x0038(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float DampingRate; // 0x003C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SteerAngle; // 0x0040(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
bool bAffectedByHandbrake; // 0x0044(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData02[0x3]; // 0x0045(0x0003) MISSED OFFSET
|
|
class UTireType* TireType; // 0x0048(0x0004) (ZeroConstructor, IsPlainOldData)
|
|
class UTireConfig* TireConfig; // 0x004C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float LatStiffMaxLoad; // 0x0050(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float LatStiffValue; // 0x0054(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float LongStiffValue; // 0x0058(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SuspensionForceOffset; // 0x005C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SuspensionMaxRaise; // 0x0060(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SuspensionMaxDrop; // 0x0064(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SuspensionNaturalFrequency; // 0x0068(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SuspensionDampingRatio; // 0x006C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
TEnumAsByte<EWheelSweepType> SweepType; // 0x0070(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData03[0x3]; // 0x0071(0x0003) MISSED OFFSET
|
|
float MaxBrakeTorque; // 0x0074(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float MaxHandBrakeTorque; // 0x0078(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
class UWheeledVehicleMovementComponent* VehicleSim; // 0x007C(0x0004) (ExportObject, ZeroConstructor, Transient, InstancedReference, IsPlainOldData)
|
|
int WheelIndex; // 0x0080(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float DebugLongSlip; // 0x0084(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float DebugLatSlip; // 0x0088(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float DebugNormalizedTireLoad; // 0x008C(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
unsigned char UnknownData04[0x4]; // 0x0090(0x0004) MISSED OFFSET
|
|
float DebugWheelTorque; // 0x0094(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float DebugLongForce; // 0x0098(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
float DebugLatForce; // 0x009C(0x0004) (ZeroConstructor, Transient, IsPlainOldData)
|
|
struct FVector Location; // 0x00A0(0x000C) (Transient, IsPlainOldData)
|
|
struct FVector OldLocation; // 0x00AC(0x000C) (Transient, IsPlainOldData)
|
|
struct FVector Velocity; // 0x00B8(0x000C) (Transient, IsPlainOldData)
|
|
unsigned char UnknownData05[0x4]; // 0x00C4(0x0004) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.VehicleWheel");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
bool IsInAir();
|
|
float GetSuspensionOffset();
|
|
float GetSteerAngle();
|
|
float GetRotationAngle();
|
|
};
|
|
|
|
|
|
// Class PhysXVehicles.SimpleWheeledVehicleMovementComponent
|
|
// 0x0000 (0x0260 - 0x0260)
|
|
class USimpleWheeledVehicleMovementComponent : public UWheeledVehicleMovementComponent
|
|
{
|
|
public:
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.SimpleWheeledVehicleMovementComponent");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
void SetSteerAngle(float SteerAngle, int WheelIndex);
|
|
void SetDriveTorque(float DriveTorque, int WheelIndex);
|
|
void SetBrakeTorque(float BrakeTorque, int WheelIndex);
|
|
};
|
|
|
|
|
|
// Class PhysXVehicles.TireConfig
|
|
// 0x0018 (0x0038 - 0x0020)
|
|
class UTireConfig : public UDataAsset
|
|
{
|
|
public:
|
|
float FrictionScale; // 0x0020(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
TArray<struct FTireConfigMaterialFriction> TireFrictionScales; // 0x0024(0x000C) (Edit, ZeroConstructor)
|
|
unsigned char UnknownData00[0x8]; // 0x0030(0x0008) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.TireConfig");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class PhysXVehicles.WheeledVehicle
|
|
// 0x0008 (0x0308 - 0x0300)
|
|
class AWheeledVehicle : public APawn
|
|
{
|
|
public:
|
|
class UWheeledVehicleMovementComponent* VehicleMovement; // 0x0300(0x0004) (Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, DisableEditOnInstance, EditConst, InstancedReference, IsPlainOldData)
|
|
unsigned char UnknownData00[0x4]; // 0x0304(0x0004) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class PhysXVehicles.WheeledVehicle");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|