170 lines
5.3 KiB
C++
170 lines
5.3 KiB
C++
#pragma once
|
|
|
|
// by Unispect and UC
|
|
namespace offset
|
|
{
|
|
// Base (not present in dump.txt; keep the native UnityPlayer values used by this build)
|
|
constexpr auto dwGameObjectManager = 0x1CF93E0;
|
|
constexpr auto dwAllCamera = 0x1BF8BC0;
|
|
|
|
// EFT.GameWorld / EFT.ClientLocalGameWorld
|
|
constexpr auto ExfilController = 0x30;
|
|
constexpr auto LootList = 0x118;
|
|
constexpr auto RegisteredPlayers = 0x140;
|
|
constexpr auto MainPlayer = 0x1A8;
|
|
constexpr auto GrenadeList = 0x200;
|
|
|
|
// EFT.Player (dump.txt: EFT.Player)
|
|
namespace Player
|
|
{
|
|
constexpr auto pPlayerBody = 0xC0; // _playerBody
|
|
constexpr auto pMovementContext = 0x58; // <MovementContext>k__BackingField
|
|
constexpr auto pWeaponAnimation = 0x1E0; // <ProceduralWeaponAnimation>k__BackingField
|
|
constexpr auto pProfile = 0x618; // <Profile>k__BackingField
|
|
constexpr auto pPhysics = 0x630; // Physical
|
|
constexpr auto pHealthController = 0x660; // _healthController
|
|
}
|
|
|
|
// EFT.PlayerBody / EFT.PlayerBones (dump.txt)
|
|
namespace PlayerBody
|
|
{
|
|
constexpr auto PlayerBones = 0x28;
|
|
constexpr auto SkeletonRootJoint = 0x30;
|
|
}
|
|
|
|
namespace PlayerBones
|
|
{
|
|
constexpr auto Neck = 0x48;
|
|
constexpr auto Forearms = 0x70;
|
|
constexpr auto LeftPalm = 0x78;
|
|
constexpr auto RightPalm = 0x80;
|
|
constexpr auto RootJoint = 0x90;
|
|
constexpr auto Ribcage = 0x110;
|
|
constexpr auto Head = 0x118;
|
|
constexpr auto Body = 0x140;
|
|
constexpr auto Pelvis = 0x150;
|
|
constexpr auto LeftThigh = 0x158;
|
|
constexpr auto RightThigh = 0x160;
|
|
constexpr auto Spine3 = 0x168;
|
|
constexpr auto TransformArrayData = 0x20;
|
|
}
|
|
|
|
namespace BifacialTransform
|
|
{
|
|
constexpr auto Original = 0x10;
|
|
}
|
|
|
|
// EFT.MovementContext (dump.txt: EFT.MovementContext)
|
|
namespace MovementContext
|
|
{
|
|
// Vector2 (x = yaw, y = pitch), in radians.
|
|
constexpr auto Rotation = 0x27C; // Rotation_1
|
|
}
|
|
|
|
// EFT.Profile
|
|
namespace Profile
|
|
{
|
|
constexpr auto Id = 0x10;
|
|
constexpr auto AccountId = 0x18;
|
|
constexpr auto pInfoClass = 0x40; // Info
|
|
}
|
|
|
|
// EFT.Profile -> InfoClass
|
|
namespace InfoClass
|
|
{
|
|
constexpr auto Nickname = 0x10;
|
|
constexpr auto EntryPoint = 0x18;
|
|
constexpr auto MainProfileNickname = 0x20;
|
|
constexpr auto MGroupId = 0x28;
|
|
constexpr auto TeamId = 0x30;
|
|
constexpr auto profileInfoSettingsClass = 0x48; // ProfileInfoSettingsClass
|
|
constexpr auto eplayerSide_0 = 0x88;
|
|
constexpr auto RegistrationDate = 0x8C;
|
|
constexpr auto Type = 0x90;
|
|
}
|
|
|
|
// EFT.HealthSystem.ActiveHealthController / GClass3009<T>
|
|
namespace HealthController
|
|
{
|
|
constexpr auto BodyParts = 0x68; // Dictionary<int, BodyPartState<T>>
|
|
constexpr auto DictionaryEntries = 0x18;
|
|
constexpr auto DictionaryCount = 0x40;
|
|
constexpr auto ArrayData = 0x20;
|
|
constexpr auto EntryStride = 0x18;
|
|
constexpr auto EntryValue = 0x10;
|
|
constexpr auto BodyPartHealth = 0x10; // BodyPartState.Health
|
|
constexpr auto HealthValue = 0x10; // HealthValue.Value
|
|
constexpr auto Current = 0x00;
|
|
constexpr auto Maximum = 0x04;
|
|
}
|
|
|
|
// EFT.Animations.ProceduralWeaponAnimation
|
|
namespace WeaponAnimations
|
|
{
|
|
constexpr auto Breath = 0x30;
|
|
constexpr auto MotionReact = 0x40; // MotionEffector
|
|
constexpr auto ShotEffector = 0x50; // ShotEffector / Shootingg
|
|
constexpr auto isAiming = 0x1C5;
|
|
}
|
|
|
|
// -.MotionEffector
|
|
namespace MotionEffector
|
|
{
|
|
constexpr auto SwayFactors = 0x94; // UnityEngine.Vector3
|
|
}
|
|
|
|
// -.ShotEffector
|
|
namespace ShotEffector
|
|
{
|
|
constexpr auto MainWeaponInHands = 0x38; // EFT.InventoryLogic.Weapon
|
|
}
|
|
|
|
// EFT.InventoryLogic.Weapon
|
|
namespace Weapon
|
|
{
|
|
constexpr auto Template = 0x40; // CompoundItem.Template
|
|
constexpr auto MalfState = 0xF0; // WeaponMalfunctionStateClass
|
|
}
|
|
|
|
// EFT.InventoryLogic.WeaponTemplate
|
|
namespace WeaponTemplate
|
|
{
|
|
constexpr auto WeaponRecoilSettings = 0x180; // WeaponRecoil
|
|
constexpr auto AllowJam = 0x2F0;
|
|
constexpr auto AllowFeed = 0x2F1;
|
|
constexpr auto AllowMisfire = 0x2F2;
|
|
constexpr auto AllowSlide = 0x2F3;
|
|
constexpr auto BaseMalfunctionChance = 0x2F4;
|
|
}
|
|
|
|
// -.WeaponRecoil / -.Weapon.WeaponMalfunctionStateClass
|
|
namespace WeaponRecoil
|
|
{
|
|
constexpr auto Enable = 0x18;
|
|
}
|
|
|
|
namespace WeaponMalfunctionState
|
|
{
|
|
constexpr auto State = 0x6C;
|
|
}
|
|
|
|
// -.GClass774 (stamina/oxygen state)
|
|
namespace PhysicalState
|
|
{
|
|
constexpr auto Current = 0x48; // Single
|
|
}
|
|
|
|
// .BasePhysicalClass
|
|
namespace Physics
|
|
{
|
|
constexpr auto Stamina = 0x38;
|
|
constexpr auto HandsStamina = 0x40;
|
|
constexpr auto Oxygen = 0x48;
|
|
constexpr auto FallDamageMultiplier = 0xBC;
|
|
constexpr auto StaminaCapacity = 0xC0;
|
|
constexpr auto HandsCapacity = 0xC8;
|
|
constexpr auto OxygenRestoreRate = 0xD4;
|
|
}
|
|
}
|
|
|