VideoMode
enum class VideoModeType : __int32 {
Fullscreen = 0,
Borderless = 1,
Windowed = 2
};
class VideoMode {
public:
int Width;
int Height;
VideoModeType VideoModeType;
};
Video mode at address 0x143478DE0 on 4.20 patch.
CPUAction
enum class CPUAction : __int32 {
Stand = 0,
StandingGuard = 1,
StandAndApproach = 2,
Crouch = 3,
CrouchingGuard = 4,
CrouchAndFollow = 5,
GuardAll = 6,
RandomGuard = 9,
Jump = 10,
NeutralGuard = 7,
Controller = 8,
Mimic = 11,
CPU = 12,
RepeatAction = 13
};
CPU Action enum at address 0x143442734 on 4.20 patch.
HitPointStruct
class HitPointStruct
{
public:
float Position1; //0x0000
float Position2; //0x0004
float Position3; //0x0008
float SequenceId; //0x000C
}; //Size: 0x0010
static_assert(sizeof(HitPointStruct) == 0x10);
HurtCylinderStruct
class HurtCylinderStruct
{
public:
float Position1; //0x0000
float Position2; //0x0004
float Position3; //0x0008
float SizeModifier; //0x000C
float Height; //0x0010
char pad_0014[4]; //0x0014
float Radius; //0x0018
char pad_001C[4]; //0x001C
}; //Size: 0x0020
static_assert(sizeof(HurtCylinderStruct) == 0x20);
CollisionSphereStruct
class CollisionSphereStruct
{
public:
float Position1; //0x0000
float Position2; //0x0004
float Position3; //0x0008
float SizeModifier; //0x000C
float Radius; //0x0010
float N00001BF8; //0x0014
float N00001CFE; //0x0018
float N00001C01; //0x001C
}; //Size: 0x0020
static_assert(sizeof(CollisionSphereStruct) == 0x20);
CharacterEntity
class CharacterEntity
{
public:
char pad_0000[216]; //0x0000
int32_t CharacterId; //0x00D8
char pad_00DC[4]; //0x00DC
float PositionX; //0x00E0
char pad_00E4[4]; //0x00E4
float PositionY; //0x00E8
char pad_00EC[116]; //0x00EC
float RestartPositionX; //0x0160
char pad_0164[4]; //0x0164
float RestartPositionY; //0x0168
char pad_016C[68]; //0x016C
float FloorZ; //0x01B0
char pad_01B4[32]; //0x01B4
int32_t MoveFrame; //0x01D4
char pad_01D8[64]; //0x01D8
class Move *CurrentMovePointer; //0x0218
int32_t CurrentMovePointer; //0x0220
char pad_0224[4]; //0x0224
int32_t PreviousMovePointer; //0x0228
char pad_022C[244]; //0x022C
int32_t OpponentComboCounter; //0x0320
int32_t AttackDamage; //0x0324
int32_t AttackType; //0x0328
char pad_032C[4]; //0x032C
int64_t N0000088F; //0x0330
char pad_0338[24]; //0x0338
int32_t MoveId; //0x0350
char pad_0354[72]; //0x0354
int32_t TotalFrames; //0x039C
char pad_03A0[56]; //0x03A0
HitOutcome HitOutcome; //0x03D8
char pad_03DC[76]; //0x03DC
SimpleMoveState SimpleMoveState; //0x0428
char pad_042C[36]; //0x042C
int32_t ThrowTech; //0x0450
char pad_0454[20]; //0x0454
int32_t ThrowFlag; //0x0468
char pad_046C[4]; //0x046C
ComplexMoveState ComplexMoveState; //0x0470
char pad_0474[588]; //0x0474
int32_t PowerCrush; //0x06C0
char pad_06C4[136]; //0x06C4
float Distance2; //0x074C
char pad_0750[56]; //0x0750
uint32_t CancelWindow; //0x0788
char pad_078C[20]; //0x078C
int32_t DamageTaken; //0x07A0
char pad_07A4[408]; //0x07A4
int32_t OpponentDamageComboCounter; //0x093C
char pad_0940[304]; //0x0940
int32_t GameStateCount; //0x0A70
char pad_0A74[396]; //0x0A74
int32_t RageFlag; //0x0C00
char pad_0C04[408]; //0x0C04
InputDirection InputDirection; //0x0D9C
char pad_0DA0[112]; //0x0DA0
class HitPointStruct HitPointsArray[12]; //0x0E10
class HurtCylinderStruct HurtCylindersArray[14]; //0x0ED0
class CollisionSphereStruct CollisionSpheresArray[9]; //0x1090
char pad_11B0[608]; //0x11B0
float Distance; //0x1410
char pad_1414[120]; //0x1414
int32_t IsRightSide?; //0x148C
char pad_1490[22]; //0x1490
int16_t Health; //0x14A6
char pad_14A8[40]; //0x14A8
class MovesetHeader *motbin_ptr; //0x14D0
char pad_14D8[1332]; //0x14D8
uint32_t InputAttack; //0x1A0C
InputDirection InputDirection; //0x1A10
char pad_1A14[7180]; //0x1A14
}; //Size: 0x3620
static_assert(sizeof(CharacterEntity) == 0x3620);
CharacterEntity struct with offsets for 4.20 patch.