No edit summary |
No edit summary |
||
Line 13: | Line 13: | ||
VideoModeType VideoModeType; | VideoModeType VideoModeType; | ||
}; | }; | ||
</syntaxhighlight>Video mode at address 0x143478DE0 on 4.20 patch. | </syntaxhighlight> | ||
Video mode at address 0x143478DE0 on 4.20 patch. | |||
===== CPUAction ===== | ===== CPUAction ===== | ||
Line 33: | Line 34: | ||
RepeatAction = 13 | RepeatAction = 13 | ||
}; | }; | ||
</syntaxhighlight>CPU Action enum at address 0x143442734 on 4.20 patch. | </syntaxhighlight> | ||
CPU Action enum at address 0x143442734 on 4.20 patch. | |||
===== HitPointStruct ===== | |||
<syntaxhighlight lang="c++"> | |||
class HitPointStruct | |||
{ | |||
public: | |||
float Position1; //0x0000 | |||
float Position2; //0x0004 | |||
float Position3; //0x0008 | |||
float SequenceId; //0x000C | |||
}; //Size: 0x0010 | |||
static_assert(sizeof(HitPointStruct) == 0x10); | |||
</syntaxhighlight> | |||
===== HurtCylinderStruct ===== | |||
<syntaxhighlight lang="c++"> | |||
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); | |||
</syntaxhighlight> | |||
===== CollisionSphereStruct ===== | |||
<syntaxhighlight lang="c++"> | |||
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); | |||
</syntaxhighlight> | |||
===== CharacterEntity ===== | |||
<syntaxhighlight lang="c++"> | |||
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); | |||
</syntaxhighlight> | |||
CharacterEntity struct with offsets for 4.20 patch. |
Revision as of 08:30, 5 July 2021
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.