Skip to content

Commit 15df0d6

Browse files
authored
Merge pull request #10 from qudix/dev/ue
feat: lots of `UE`
2 parents 32191a1 + 53bb76d commit 15df0d6

74 files changed

Lines changed: 1979 additions & 111 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

include/UE/A/AActor.h

Lines changed: 100 additions & 100 deletions
Large diffs are not rendered by default.

include/UE/A/ACharacter.h

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
#pragma once
2+
3+
#include "UE/A/APawn.h"
4+
#include "UE/E/EMovementMode.h"
5+
#include "UE/F/FBasedMovementInfo.h"
6+
#include "UE/F/FRepRootMotionMontage.h"
7+
#include "UE/F/FRootMotionSourceGroup.h"
8+
#include "UE/F/FRootMotionMovementParams.h"
9+
#include "UE/T/TQuat.h"
10+
11+
namespace UE
12+
{
13+
class ACharacter;
14+
class FHitResult;
15+
class FSimulatedRootMotionReplicatedMove;
16+
class UCapsuleComponent;
17+
class UCharacterMovementComponent;
18+
class USkeletalMeshComponent;
19+
20+
using FCharacterReachedApexSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void>;
21+
using FLandedSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, const FHitResult&>;
22+
using FMovementModeChangedSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, ACharacter*, EMovementMode, std::uint8_t>;
23+
using FCharacterMovementUpdatedSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, float, FVector, FVector>;
24+
25+
class ACharacter :
26+
public APawn
27+
{
28+
public:
29+
UE_DEFINE_OBJECT("/Script/Engine", "Character");
30+
31+
// override
32+
virtual ~ACharacter(); // 00
33+
34+
// members
35+
TObjectPtr<USkeletalMeshComponent> mesh; // 320
36+
TObjectPtr<UCharacterMovementComponent> characterMovement; // 328
37+
TObjectPtr<UCapsuleComponent> capsuleComponent; // 330
38+
FBasedMovementInfo basedMovement; // 338
39+
FBasedMovementInfo replicatedBasedMovement; // 388
40+
float animRootMotionTranslationScale; // 3D8
41+
FVector baseTranslationOffset; // 3E0
42+
FQuat baseRotationOffset; // 400
43+
float replicatedServerLastTransformUpdateTimeStamp; // 420
44+
float replayLastTransformUpdateTimeStamp; // 424
45+
std::uint8_t replicatedMovementMode; // 428
46+
FVector_NetQuantizeNormal replicatedGravityDirection; // 430
47+
bool inBaseReplication; // 448
48+
FVector_NetQuantizeNormal preNetReceivedGravityDirection; // 450
49+
float crouchedEyeHeight; // 468
50+
std::uint32_t isCrouched: 1; // 46C:0
51+
std::uint32_t proxyIsJumpForceApplied: 1; // 46C:1
52+
std::uint32_t pressedJump: 1; // 46C:2
53+
std::uint32_t clientUpdating: 1; // 46C:3
54+
std::uint32_t clientWasFalling: 1; // 46C:4
55+
std::uint32_t clientResimulateRootMotion: 1; // 46C:5
56+
std::uint32_t clientResimulateRootMotionSources: 1; // 46C:6
57+
std::uint32_t simGravityDisabled: 1; // 46C:7
58+
std::uint32_t clientCheckEncroachmentOnNetUpdate: 1; // 46D:0
59+
std::uint32_t serverMoveIgnoreRootMotion: 1; // 46D:1
60+
std::uint32_t wasJumping: 1; // 46D:2
61+
float jumpKeyHoldTime; // 470
62+
float jumpForceTimeRemaining; // 474
63+
float proxyJumpForceStartedTime; // 478
64+
float jumpMaxHoldTime; // 47C
65+
std::int32_t jumpMaxCount; // 480
66+
std::int32_t jumpCurrentCount; // 484
67+
std::int32_t jumpCurrentCountPreJump; // 488
68+
std::uint32_t numActorOverlapEventsCounter; // 48C
69+
FCharacterReachedApexSignature onReachedJumpApex; // 490
70+
FLandedSignature landedDelegate; // 4A0
71+
FMovementModeChangedSignature movementModeChangedDelegate; // 4B0
72+
FCharacterMovementUpdatedSignature onCharacterMovementUpdated; // 4C0
73+
FRootMotionSourceGroup savedRootMotion; // 4D0
74+
FRootMotionMovementParams clientRootMotionParams; // 520
75+
TArray<FSimulatedRootMotionReplicatedMove> rootMotionRepMoves; // 590
76+
FRepRootMotionMontage repRootMotion; // 5A0
77+
};
78+
static_assert(sizeof(ACharacter) == 0x680);
79+
}

include/UE/A/AController.h

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#pragma once
2+
3+
#include "UE/A/AActor.h"
4+
#include "UE/I/INavAgentInterface.h"
5+
#include "UE/T/TBaseDynamicMulticastDelegate.h"
6+
#include "UE/T/TMulticastDelegate.h"
7+
8+
namespace UE
9+
{
10+
class ACharacter;
11+
class APawn;
12+
class APlayerState;
13+
class UDamageType;
14+
15+
using FInstigatedAnyDamageSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, float, const UDamageType*, AActor*, AActor*>;
16+
using FOnPossessedPawnChanged = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, APawn*, APawn*>;
17+
using FPawnChangedSignature = TMulticastDelegate<void(APawn*)>;
18+
19+
class AController :
20+
public AActor,
21+
public INavAgentInterface
22+
{
23+
public:
24+
UE_DEFINE_OBJECT("/Script/Engine", "Controller");
25+
26+
// override
27+
virtual ~AController();
28+
29+
// members
30+
TObjectPtr<APlayerState> playerState; // 2A0
31+
TWeakObjectPtr<AActor> startSpot; // 2A8
32+
FInstigatedAnyDamageSignature onInstigatedAnyDamage; // 2B0
33+
FOnPossessedPawnChanged onPossessedPawnChanged; // 2C0
34+
FName stateName; // 2D0
35+
TObjectPtr<APawn> pawn; // 2D8
36+
TWeakObjectPtr<APawn> oldPawn; // 2E0
37+
TObjectPtr<ACharacter> character; // 2E8
38+
TObjectPtr<USceneComponent> transformComponent; // 2F0
39+
FPawnChangedSignature onNewPawn; // 2F8
40+
FRotator controlRotation; // 310
41+
std::uint8_t attachToPawn: 1; // 328:0
42+
std::uint8_t isPlayerController: 1; // 328:1
43+
std::uint8_t canPossessWithoutAuthority: 1; // 328:2
44+
std::uint8_t ignoreMoveInput; // 329
45+
std::uint8_t ignoreLookInput; // 330
46+
};
47+
static_assert(sizeof(AController) == 0x330);
48+
}

include/UE/A/APawn.h

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
#pragma once
2+
3+
#include "UE/A/AActor.h"
4+
#include "UE/E/EAutoPossessAI.h"
5+
#include "UE/E/EAutoReceiveInput.h"
6+
#include "UE/I/INavAgentInterface.h"
7+
#include "UE/T/TBaseDynamicMulticastDelegate.h"
8+
#include "UE/T/TSparseDynamicDelegate.h"
9+
#include "UE/T/TSubclassOf.h"
10+
11+
namespace UE
12+
{
13+
class AController;
14+
class APlayerState;
15+
class FPawnControllerChangedSignatureInfoGetter;
16+
class FPawnRestartedSignatureInfoGetter;
17+
18+
using FPawnControllerChangedSignature_MCSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, APawn*, AController*, AController*>;
19+
using FPawnControllerChangedSignature = TSparseDynamicDelegate<FPawnControllerChangedSignature_MCSignature, APawn, FPawnControllerChangedSignatureInfoGetter>;
20+
using FPawnRestartedSignature_MCSignature = TBaseDynamicMulticastDelegate<FNotThreadSafeDelegateMode, void, APawn*>;
21+
using FPawnRestartedSignature = TSparseDynamicDelegate<FPawnRestartedSignature_MCSignature, APawn, FPawnRestartedSignatureInfoGetter>;
22+
23+
class APawn :
24+
public AActor,
25+
public INavAgentInterface
26+
{
27+
public:
28+
UE_DEFINE_OBJECT("/Script/Engine", "Pawn");
29+
30+
// override
31+
virtual ~APawn();
32+
33+
// members
34+
std::uint32_t useControllerRotationPitch: 1; // 2A0:0
35+
std::uint32_t useControllerRotationYaw: 1; // 2A0:1
36+
std::uint32_t useControllerRotationRoll: 1; // 2A0:2
37+
std::uint32_t canAffectNavigationGeneration: 1; // 2A0:3
38+
std::uint32_t inputEnabled: 1; // 2A0:4
39+
std::uint32_t processingOutsideWorldBounds: 1; // 2A0:5
40+
std::uint32_t isLocalViewTarget: 1; // 2A0:6
41+
float baseEyeHeight; // 2A4
42+
TEnumAsByte<EAutoReceiveInput> autoPossessPlayer; // 2A8
43+
EAutoPossessAI autoPossessAI; // 2A9
44+
std::uint8_t remoteViewPitch; // 2AA
45+
TSubclassOf<AController> aiControllerClass; // 2B0
46+
TObjectPtr<APlayerState> playerState; // 2B8
47+
float blendedReplayViewPitch; // 2C0
48+
TObjectPtr<AController> lastHitBy; // 2C4
49+
TObjectPtr<AController> controller; // 2D0
50+
TObjectPtr<AController> previousController; // 2D8
51+
float allowedYawError; // 2E0
52+
FPawnControllerChangedSignature receiveControllerChangedDelegate; // 2E4
53+
FPawnRestartedSignature receiveRestartedDelegate; // 2E5
54+
FVector controlInputVector; // 2E8
55+
FVector lastControlInputVector; // 300
56+
TSubclassOf<UInputComponent> overrideInputComponentClass; // 318
57+
};
58+
static_assert(sizeof(APawn) == 0x320);
59+
}

include/UE/A/APlayerController.h

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#pragma once
2+
3+
#include "UE/A/AController.h"
4+
#include "UE/I/IWorldPartitionStreamingSourceProvider.h"
5+
#include "UE/T/TSubclassOf.h"
6+
7+
namespace UE
8+
{
9+
class AHUD;
10+
class APlayerCameraManager;
11+
class UCheatManager;
12+
class UPlayer;
13+
class UPrimitiveComponent;
14+
15+
class APlayerController :
16+
public AController,
17+
public IWorldPartitionStreamingSourceProvider
18+
{
19+
public:
20+
UE_DEFINE_OBJECT("/Script/Engine", "PlayerController");
21+
22+
// override
23+
virtual ~APlayerController();
24+
25+
// members
26+
TObjectPtr<UPlayer> player; // 338
27+
TObjectPtr<APawn> acknowledgedPawn; // 340
28+
TObjectPtr<AHUD> myHUD; // 348
29+
TObjectPtr<APlayerCameraManager> playerCameraManager; // 350
30+
TSubclassOf<APlayerCameraManager> playerCameraManagerClass; // 358
31+
bool autoManageActiveCameraTarget; // 360
32+
FRotator targetViewRotation; // 368
33+
FRotator blendedTargetViewRotation; // 380
34+
float smoothTargetViewRotationSpeed; // 398
35+
float localPlayerCachedLODDistanceFactor; // 39C
36+
TArray<TObjectPtr<AActor>> hiddenActors; // 3A0
37+
TArray<TWeakObjectPtr<UPrimitiveComponent>> hiddenPrimitiveComponents; // 3B0
38+
bool renderPrimitiveComponents; // 3C0
39+
float lastSpectatorStateSynchTime; // 3C4
40+
FVector lastSpectatorSyncLocation; // 3C8
41+
FRotator lastSpectatorSyncRotation; // 3E0
42+
std::int32_t clientCap; // 3F8
43+
TObjectPtr<UCheatManager> cheatManager; // 400
44+
// ...
45+
};
46+
//static_assert(sizeof(APlayerController) == 0x858);
47+
}

include/UE/E/EAutoPossessAI.h

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#pragma once
2+
3+
namespace UE
4+
{
5+
enum class EAutoPossessAI : std::uint8_t
6+
{
7+
Disabled,
8+
PlacedInWorld,
9+
Spawned,
10+
PlacedInWorldOrSpawned,
11+
};
12+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#pragma once
2+
3+
namespace UE
4+
{
5+
enum class EComponentCreationMethod : std::uint8_t
6+
{
7+
Native,
8+
SimpleConstructionScript,
9+
UserConstructionScript,
10+
Instance,
11+
};
12+
}

include/UE/E/EEulerRotationOrder.h

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#pragma once
2+
3+
namespace UE
4+
{
5+
enum class EEulerRotationOrder : std::uint8_t
6+
{
7+
XYZ = 0u,
8+
XZY = 1u,
9+
YXZ = 2u,
10+
YZX = 3u,
11+
ZXY = 4u,
12+
ZYX = 5u,
13+
};
14+
}

include/UE/E/EFormID.h

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
#pragma once
2+
3+
namespace UE
4+
{
5+
enum class EFormID : std::uint8_t
6+
{
7+
NONE = 0,
8+
TES4 = 1,
9+
GRUP = 2,
10+
GMST = 3,
11+
GLOB = 4,
12+
CLAS = 5,
13+
FACT = 6,
14+
HAIR = 7,
15+
EYES = 8,
16+
RACE = 9,
17+
SOUN = 10,
18+
SKIL = 11,
19+
MGEF = 12,
20+
SCPT = 13,
21+
LTEX = 14,
22+
ENCH = 15,
23+
SPEL = 16,
24+
BSGN = 17,
25+
ACTI = 18,
26+
APPA = 19,
27+
ARMO = 20,
28+
BOOK = 21,
29+
CLOT = 22,
30+
CONT = 23,
31+
DOOR = 24,
32+
INGR = 25,
33+
LIGH = 26,
34+
MISC = 27,
35+
STAT = 28,
36+
GRAS = 29,
37+
TREE = 30,
38+
FLOR = 31,
39+
FURN = 32,
40+
WEAP = 33,
41+
AMMO = 34,
42+
NPC_ = 35,
43+
CREA = 36,
44+
LVLC = 37,
45+
SLGM = 38,
46+
KEYM = 39,
47+
ALCH = 40,
48+
SBSP = 41,
49+
SGST = 42,
50+
LVLI = 43,
51+
SNDG = 44,
52+
WTHR = 45,
53+
CLMT = 46,
54+
REGN = 47,
55+
CELL = 48,
56+
REFR = 49,
57+
ACHR = 50,
58+
ACRE = 51,
59+
PGRD = 52,
60+
WRLD = 53,
61+
LAND = 54,
62+
TLOD = 55,
63+
ROAD = 56,
64+
DIAL = 57,
65+
INFO = 58,
66+
QUST = 59,
67+
IDLE = 60,
68+
PACK = 61,
69+
CSTY = 62,
70+
LSCR = 63,
71+
LVSP = 64,
72+
ANIO = 65,
73+
WATR = 66,
74+
EFSH = 67,
75+
TOFT = 68,
76+
LVRG = 69,
77+
};
78+
}

include/UE/E/EMovementMode.h

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#pragma once
2+
3+
namespace UE
4+
{
5+
enum class EMovementMode : std::int32_t
6+
{
7+
None,
8+
Walking,
9+
NavWalking,
10+
Falling,
11+
Swimming,
12+
Flying,
13+
Custom,
14+
};
15+
}

0 commit comments

Comments
 (0)