Closed cpz closed 8 months ago
Some previews of new metadata in enums\classes
Sometimes it gives us 255 in aligment, so I decided to force 4 if its std::uint8_t::max, idc if its wrong
todo for future, if there class with pad 0x8 and has flag 'SCHEMA_CF1_HAS_VIRTUAL_MEMBERS' then probably we can make smth like:
// Registered binary: client.dll (project 'client')
// Alignment: 8
// Size: 0x78
// Has VTable
// Has Trivial Destructor
//
// MNetworkVarNames Vector localSound
// MNetworkVarNames int32 soundscapeIndex
// MNetworkVarNames uint8 localBits
// MNetworkVarNames int soundscapeEntityListIndex
// MNetworkVarNames uint32 soundEventHash
struct audioparams_t
{
public:
virtual void Destroy() = 0;
public:
// MNetworkEnable
// MNetworkEncoder "coord"
Vector localSound[8]; // 0x8
// MNetworkEnable
int32_t soundscapeIndex; // 0x68
// MNetworkEnable
uint8_t localBits; // 0x6c
private:
[[maybe_unused]] uint8_t __pad006d[0x3]; // 0x6d
public:
// MNetworkEnable
int32_t soundscapeEntityListIndex; // 0x70
// MNetworkEnable
uint32_t soundEventHash; // 0x74
};
or whatever
Added acknowledgement (but basically, praydog reverse was used as reference, idk its should be added to acknowledgement).
But I think we should do everything proper because of these situations where: roflmuffin/CounterStrikeSharp refers to Source2ZE/CS2Fixes which has parts of our code and nobody mentions this project.
Reverse Engineering Circus arrived with some ready to cook paste :clown: