# M
# mce::UUID
 | Offset | Type | Name | 
|---|---|---|
| 0 | (16) uint64_t[2] | Data | 
# MovePriorityQueue<BlockTickingQueue::BlockTick,std::greater<BlockTickingQueue::BlockTick> >
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) MovePriorityQueue<BlockTickingQueue::BlockTick,std::greater<BlockTickingQueue::BlockTick> >::Base | mC | 
# MovePriorityQueue<BlockTickingQueue::BlockTick,std::greater<BlockTickingQueue::BlockTick> >::Base
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<BlockTickingQueue::BlockTick> | baseclass_0 | 
# MixerLayer<LayerValues::Terrain,LayerValues::Terrain>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<LayerValues::Terrain> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<LayerValues::Terrain> | mResult | 
# MixerLayer<LayerValues::PreBiome,LayerValues::Terrain>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<LayerValues::Terrain> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<LayerValues::PreBiome> | mResult | 
# MixerLayer<LayerValues::PreBiome,LayerValues::PreBiome>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<LayerValues::PreBiome> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<LayerValues::PreBiome> | mResult | 
# MixerLayer<Biome *,LayerValues::PreBiome>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<LayerValues::PreBiome> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<Biome *> | mResult | 
# MixerLayer<Biome *,Biome *>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<Biome *> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<Biome *> | mResult | 
# MixerLayer<int,Biome *>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<Biome *> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<int> | mResult | 
# MixerLayer<int,int>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<int> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<int> | mResult | 
# MixerLayer<bool,int>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<int> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<bool> | mResult | 
# MixerLayer<bool,bool>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<bool> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<bool> | mResult | 
# MixerLayer<Biome *,Biome *,bool>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<Biome *> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<Biome *> | mResult | 
# MixerLayer<BiomeTemperatureCategory,BiomeTemperatureCategory>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<BiomeTemperatureCategory> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<BiomeTemperatureCategory> | mResult | 
# MobSpawnRules
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) int | mMinBrightness | 
| 4 | (4) int | mMaxBrightness | 
| 8 | (4) float | mMinMoonBrightness | 
| 12 | (4) float | mMaxMoonBrightness | 
| 16 | (1) bool | mAdjustForWeather | 
| 20 | (4) int | mMinHeight | 
| 24 | (4) int | mMaxHeight | 
| 28 | (4) int | mRarity | 
| 32 | (4) int | mSurfaceCap | 
| 36 | (4) int | mUndergroundCap | 
| 40 | (4) Difficulty | mMinDifficulty | 
| 44 | (4) Difficulty | mMaxDifficulty | 
| 48 | (4) int | mSpawnDistanceCap | 
| 52 | (4) int | mMinSpawnDistance | 
| 56 | (4) int | mMaxSpawnDistance | 
| 60 | (1) bool | mSurfaceSpawner | 
| 61 | (1) bool | mUndergroundSpawner | 
| 62 | (1) bool | mWaterSpawner | 
| 63 | (1) bool | mLavaSpawner | 
| 64 | (4) unsigned int | mPlayerInVillageDistance | 
| 68 | (4) unsigned int | mPlayerInVillageBorderTolerance | 
| 72 | (1) bool | mExperimentalSpawner | 
| 80 | (8) uint64_t | mMinWorldAge | 
| 88 | (8) uint64_t | mMaxWorldAge | 
| 96 | (4) int | mMinDelay | 
| 100 | (4) int | mMaxDelay | 
| 104 | (24) HerdList | mHerdList | 
| 128 | (24) MobPermutationList | mPermutationList | 
| 152 | (32) std::string | mMobEventName | 
| 184 | (56) std::unordered_set<const BlockLegacy *> | mSpawnOnBlockList | 
| 240 | (24) MobGuaranteedPermutationList | mGuaranteedList | 
| 264 | (32) std::string | mMobToDelayId | 
| 296 | (4) int | mDelaySpawnChance | 
| 300 | (1) bool | mPersistence | 
# MobPermutationList
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<MobSpawnerPermutation> | baseclass_0 | 
# MobGuaranteedPermutationList
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<MobSpawnerPermutation> | baseclass_0 | 
# MinecraftEventing::fireEventMultiplayerSessionUpdate::$7EF7C94BEAB75C6CEF4ADFB99B570420
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# MeasurementList
 | Offset | Type | Name | 
|---|---|---|
| 0 | (56) std::unordered_map<std::string,Social::Events::Measurement>::_Hashtable | _M_h | 
# MerchantRecipe
 | Offset | Type | Name | 
|---|---|---|
| 0 | (136) ItemInstance | mBuyA | 
| 136 | (136) ItemInstance | mBuyB | 
| 272 | (136) ItemInstance | mSell | 
| 408 | (4) int | mTier | 
| 412 | (4) int | mUses | 
| 416 | (4) int | mMaxUses | 
| 420 | (4) unsigned int | mTraderExp | 
| 424 | (1) bool | mRewardExp | 
| 428 | (4) int | mDemand | 
| 432 | (4) int | mBuyCountA | 
| 436 | (4) int | mBuyCountB | 
| 440 | (4) float | mPriceMultiplierA | 
| 444 | (4) float | mPriceMultiplierB | 
# MobEffectComponent
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) float | mEffectRange | 
| 4 | (4) unsigned int | mEffectId | 
| 8 | (4) int | mEffectTime | 
| 16 | (64) ActorFilterGroup | mEntityFilter | 
# MountTamingComponent
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) int | mTemper | 
| 4 | (4) int | mCounter | 
| 8 | (4) int | mTemperMod | 
| 12 | (4) int | mWaitCount | 
# MoveControlComponent
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) bool | mHasWanted | 
| 4 | (12) Vec3 | mWantedPosition | 
| 16 | (1) bool | mShouldBreach | 
| 20 | (4) float | mMaxTurn | 
| 24 | (4) float | mSpeedModifier | 
| 32 | (16) Shared<MoveControl> | mMoveControl | 
# mce::Image
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) mce::ImageFormat | imageFormat | 
| 4 | (4) uint32_t | mWidth | 
| 8 | (4) uint32_t | mHeight | 
| 12 | (1) mce::ImageUsage | mUsage | 
| 16 | (16) mce::Image::Storage | mImageBytes | 
# mce::Image::Storage
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) std::unique_ptr<unsigned char []> | mBlob | 
| 8 | (8) size_t | mSize | 
# MobEquipmentPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (8) ActorRuntimeID | mRuntimeId | 
| 48 | (136) ItemStack | mItem | 
| 184 | (4) int | mSlot | 
| 188 | (4) int | mSelectedSlot | 
| 192 | (1) bool | mIsServerSide | 
| 193 | (1) ContainerID | mContainerId | 
| 194 | (1) byte | mSlotByte | 
| 195 | (1) byte | mSelectedSlotByte | 
| 196 | (1) byte | mContainerIdByte | 
# MobArmorEquipmentPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (8) ActorRuntimeID | mRuntimeId | 
| 48 | (136) ItemStack | mHead | 
| 184 | (136) ItemStack | mTorso | 
| 320 | (136) ItemStack | mLegs | 
| 456 | (136) ItemStack | mFeet | 
| 592 | (1) bool | mIsServerSide | 
# MovePlayerPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (8) ActorRuntimeID | mPlayerID | 
| 48 | (12) Vec3 | mPos | 
| 60 | (8) Vec2 | mRot | 
| 68 | (4) float | mYHeadRot | 
| 72 | (1) Player::PositionMode | mResetPosition | 
| 73 | (1) bool | mOnGround | 
| 80 | (8) ActorRuntimeID | mRidingID | 
| 88 | (4) int | mCause | 
| 92 | (4) int | mSourceEntityType | 
# MoveActorAbsoluteData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) ActorRuntimeID | mRuntimeId | 
| 8 | (1) MoveActorAbsoluteData::Header | mHeader | 
| 12 | (12) Vec3 | mPos | 
| 24 | (1) int8_t | mRotX | 
| 25 | (1) int8_t | mRotY | 
| 26 | (1) int8_t | mRotYHead | 
# MoveActorAbsoluteData::Header
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) uint8_t | mRaw | 
| 1 | (1) MoveActorAbsoluteData::Header::$1C528A707D3385C2A7E4697785F3087B | _anon_0 | 
# MoveActorAbsoluteData::Header::$1C528A707D3385C2A7E4697785F3087B
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8 | _bf_0 | 
# MoveActorDeltaData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) ActorRuntimeID | mRuntimeId | 
| 8 | (2) MoveActorDeltaData::Header | mHeader | 
| 12 | (4) int32_t | mDeltaPositionX | 
| 16 | (4) int32_t | mDeltaPositionY | 
| 20 | (4) int32_t | mDeltaPositionZ | 
| 24 | (1) int8_t | mRotX | 
| 25 | (1) int8_t | mRotY | 
| 26 | (1) int8_t | mRotYHead | 
| 32 | (32) MoveActorAbsoluteData | mPreviousData | 
# MoveActorDeltaData::Header
 | Offset | Type | Name | 
|---|---|---|
| 0 | (2) uint16_t | mRaw | 
| 1 | (2) MoveActorDeltaData::Header::$37FEEDC365990D64A8C0F1A90869C4B6 | _anon_0 | 
# MoveActorDeltaData::Header::$37FEEDC365990D64A8C0F1A90869C4B6
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8 | _bf_0 | 
| 1 | (1) __int8 | _bf_1 | 
# MoveActorDeltaPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (64) MoveActorDeltaData | mMoveData | 
# MoveActorAbsolutePacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (32) MoveActorAbsoluteData | mMoveData | 
# MapItemTrackedActor::UniqueId
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) MapItemTrackedActor::Type | type | 
| 8 | (8) ActorUniqueID | keyEntityId | 
| 16 | (12) BlockPos | keyBlockPos | 
# MessageMap
 | Offset | Type | Name | 
|---|---|---|
| 0 | (56) std::unordered_map<int,std::string>::_Hashtable | _M_h | 
# MobEffectPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (8) ActorRuntimeID | mRuntimeId | 
| 48 | (4) int | mEffectDurationTicks | 
| 52 | (1) MobEffectPacket::Event | mEventId | 
| 56 | (4) int | mEffectId | 
| 60 | (4) int | mEffectAmplifier | 
| 64 | (1) bool | mShowParticles | 
# MCRESULT
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) bool | mSuccess | 
| 1 | (1) MCCATEGORY | mCategory | 
| 2 | (2) uint16_t | mCode | 
# MolangVariableMap
 | Offset | Type | Name | 
|---|---|---|
| 0 | (56) std::unordered_map<unsigned long,MolangVariable> | mVariables | 
# Matrix
 | Offset | Type | Name | 
|---|---|---|
| 0 | (64) glm::mat4x4 | _m | 
# ManagedWanderingTraderComponent
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# MobEffectInstance
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) unsigned int | mId | 
| 4 | (4) int | mDuration | 
| 8 | (4) int | mDurationEasy | 
| 12 | (4) int | mDurationNormal | 
| 16 | (4) int | mDurationHard | 
| 20 | (4) int | mAmplifier | 
| 24 | (1) bool | mDisplayOnScreenTextureAnimation | 
| 25 | (1) bool | mAmbient | 
| 26 | (1) bool | mNoCounter | 
| 27 | (1) bool | mEffectVisible | 
# Mob::hurtEffects::$7EF7C94BEAB75C6CEF4ADFB99B570420
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# Mob::JumpPreventionResult
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) bool | mJumpIsPrevented | 
| 4 | (12) BlockPos | mPreventingBlockBlockPos | 
# MobDescriptor
 | Offset | Type | Name | 
|---|---|---|
| 0 | (64) ActorFilterGroup | mTargetFilter | 
| 64 | (4) float | mMaxDist | 
| 68 | (4) float | mMaxHeight | 
| 72 | (4) float | mMaxFlee | 
| 76 | (4) float | mWalkSpeedModifier | 
| 80 | (4) float | mSprintSpeedModifier | 
| 84 | (1) bool | mOverrideMustSee | 
| 85 | (1) bool | mMustSee | 
| 88 | (4) int | mMustSeeForgetTicks | 
| 92 | (4) int | mPriority | 
# MingleComponent
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) MingleComponent::MingleState | mMingleState | 
| 8 | (8) ActorUniqueID | mPartnerId | 
| 16 | (8) ActorUniqueID | mPreviousPartnerId | 
# MoveControlDolphinDescription
 | Offset | Type | Name | 
|---|---|---|
| 0 | (16) MoveControlDescription | baseclass_0 | 
# MoveControlDescription
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) ComponentDescription | baseclass_0 | 
| 8 | (4) float | mMaxTurn | 
# MolangScriptArg
 | Offset | Type | Name | 
|---|---|---|
| 0 | (56) MolangScriptArgData | mData | 
# MolangScriptArgData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (56) std::__detail::__variant::_Variant_base<float,HashedString,MolangArrayVariable,MolangEntityVariable,MolangGeometryVariable,MolangMaterialVariable,MolangTempVariable,MolangTextureVariable,MaterialVariants,MolangDataDrivenGeometry,MolangQueryFunctionPtr,MolangGenericQueryFunctionPtr,std::vector<ExpressionNode> *> | baseclass_0 | 
# MaterialVariants
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) mce::MaterialPtr | mSkinningMaterialPtr | 
| 1 | (1) mce::MaterialPtr | mSkinningColorMaterialPtr | 
# mce::MaterialPtr
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# mce::Image_0
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) mce::ImageFormat | imageFormat | 
| 4 | (4) uint32_t | mWidth | 
| 8 | (4) uint32_t | mHeight | 
| 12 | (1) mce::ImageUsage_0 | mUsage | 
| 16 | (16) mce::Image::Storage | mImageBytes | 
# MobEffectInstanceList
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<MobEffectInstance> | baseclass_0 | 
# MapItemSavedData::ChunkBounds
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | x0 | 
| 4 | (4) uint32_t | z0 | 
| 8 | (4) uint32_t | x1 | 
| 12 | (4) uint32_t | z1 | 
# MapSample
 | Offset | Type | Name | 
|---|---|---|
| 0 | (16) Color | mColor | 
| 16 | (8) const Block * | mBlock | 
| 24 | (2) Height | mHeight | 
# MobList
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<MobSpawnerData> | baseclass_0 | 
# MovePriorityQueue<BlockTickingQueue::BlockTick,std::greater<BlockTickingQueue::BlockTick> >::const_iterator
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) const BlockTickingQueue::BlockTick * | _M_current | 
# MapInfoRequestPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (8) ActorUniqueID | mMapId | 
# MapCreateLockedCopyPacket
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) Packet | baseclass_0 | 
| 40 | (8) ActorUniqueID | mOriginalMapId | 
| 48 | (8) ActorUniqueID | mNewMapId | 
# MobSpawnerPermutation
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) WeighedRandom::WeighedRandomItem | baseclass_0 | 
| 8 | (168) ActorDefinitionIdentifier | mId | 
# MobSpawnHerdInfo
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | mMinCount | 
| 4 | (4) uint32_t | mMaxCount | 
| 8 | (4) uint32_t | mHerdEventSkipCount | 
| 12 | (4) uint32_t | mInitialEventCount | 
| 16 | (32) std::string | mInitialEvent | 
| 48 | (32) std::string | mHerdEvent | 
# MesaSurfaceAttributes
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) const Block * | mClayMaterial | 
| 8 | (8) const Block * | mHardClayMaterial | 
| 16 | (1) bool | mBrycePillars | 
| 17 | (1) bool | mHasForest | 
# MineshaftData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) const Block * | mWoodBlock | 
| 8 | (8) const Block * | mFenceBlock | 
| 16 | (4) float | roomChance | 
# MixerLayer<Biome *,Biome *,BiomeTemperatureCategory>::LayerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) LayerDetails::Storage | baseclass_0 | 
| 32 | (16) const LayerDetails::BufferAccessor<Biome *> | mParentArea | 
| 48 | (16) LayerDetails::BufferAccessor<Biome *> | mResult | 
# MutationFactorData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) float | mVariant | 
| 4 | (4) float | mExtraVariant | 
| 8 | (4) float | mColor | 
# MobSpawnerData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) WeighedRandom::WeighedRandomItem | baseclass_0 | 
| 8 | (168) ActorDefinitionIdentifier | mIdentifier | 
| 176 | (304) MobSpawnRules | mSpawnRules | 
| 480 | (32) MobSpawnerData::OnSpawnHerd | mOnSpawnHerd | 
| 512 | (32) MobSpawnerData::OnSelectActor | mOnSelectEntity | 
# MobSpawnerData::OnSpawnHerd
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Function_base | baseclass_0 | 
| 24 | (8) std::function<void (std::vector<Mob *> &,Random &)>::_Invoker_type | _M_invoker | 
# MobSpawnerData::OnSelectActor
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Function_base | baseclass_0 | 
| 24 | (8) std::function<ActorDefinitionIdentifier (Random &)>::_Invoker_type | _M_invoker | 
# mce::Radian
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) type_safe::strong_typedef<mce::Radian,float> | baseclass_0 | 
# mce::Blob
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) std::unique_ptr<unsigned char []> | mBlob | 
| 8 | (8) size_t | mSize | 
# mce::Degree
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) type_safe::strong_typedef<mce::Degree,float> | baseclass_0 | 
# mcontext_t
 | Offset | Type | Name | 
|---|---|---|
| 0 | (184) gregset_t | gregs | 
| 184 | (8) fpregset_t | fpregs | 
| 192 | (64) unsigned __int64[8] | __reserved1 | 
# MDLocationDescriptor
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | data_size | 
| 4 | (4) MDRVA | rva | 
# MDRawDirectory
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | stream_type | 
| 4 | (8) MDLocationDescriptor | location | 
# MDRawThread
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | thread_id | 
| 4 | (4) uint32_t | suspend_count | 
| 8 | (4) uint32_t | priority_class | 
| 12 | (4) uint32_t | priority | 
| 16 | (8) uint64_t | teb | 
| 24 | (16) MDMemoryDescriptor | stack | 
| 40 | (8) MDLocationDescriptor | thread_context | 
# MDMemoryDescriptor
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) uint64_t | start_of_memory_range | 
| 8 | (8) MDLocationDescriptor | memory | 
# MDRawContextAMD64
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) uint64_t | p1_home | 
| 8 | (8) uint64_t | p2_home | 
| 16 | (8) uint64_t | p3_home | 
| 24 | (8) uint64_t | p4_home | 
| 32 | (8) uint64_t | p5_home | 
| 40 | (8) uint64_t | p6_home | 
| 48 | (4) uint32_t | context_flags | 
| 52 | (4) uint32_t | mx_csr | 
| 56 | (2) uint16_t | _cs | 
| 58 | (2) uint16_t | _ds | 
| 60 | (2) uint16_t | _es | 
| 62 | (2) uint16_t | _fs | 
| 64 | (2) uint16_t | _gs | 
| 66 | (2) uint16_t | _ss | 
| 68 | (4) uint32_t | eflags | 
| 72 | (8) uint64_t | dr0 | 
| 80 | (8) uint64_t | dr1 | 
| 88 | (8) uint64_t | dr2 | 
| 96 | (8) uint64_t | dr3 | 
| 104 | (8) uint64_t | dr6 | 
| 112 | (8) uint64_t | dr7 | 
| 120 | (8) uint64_t | _rax | 
| 128 | (8) uint64_t | _rcx | 
| 136 | (8) uint64_t | _rdx | 
| 144 | (8) uint64_t | _rbx | 
| 152 | (8) uint64_t | _rsp | 
| 160 | (8) uint64_t | _rbp | 
| 168 | (8) uint64_t | _rsi | 
| 176 | (8) uint64_t | _rdi | 
| 184 | (8) uint64_t | _r8 | 
| 192 | (8) uint64_t | _r9 | 
| 200 | (8) uint64_t | _r10 | 
| 208 | (8) uint64_t | _r11 | 
| 216 | (8) uint64_t | _r12 | 
| 224 | (8) uint64_t | _r13 | 
| 232 | (8) uint64_t | _r14 | 
| 240 | (8) uint64_t | _r15 | 
| 248 | (8) uint64_t | _rip | 
| 256 | (512) MDRawContextAMD64::$D520141881593523D1DB94D2DAC55DA9 | _anon_0 | 
| 768 | (416) uint128_struct[26] | vector_register | 
| 1184 | (8) uint64_t | vector_control | 
| 1192 | (8) uint64_t | debug_control | 
| 1200 | (8) uint64_t | last_branch_to_rip | 
| 1208 | (8) uint64_t | last_branch_from_rip | 
| 1216 | (8) uint64_t | last_exception_to_rip | 
| 1224 | (8) uint64_t | last_exception_from_rip | 
# MDRawContextAMD64::$D520141881593523D1DB94D2DAC55DA9
 | Offset | Type | Name | 
|---|---|---|
| 0 | (512) MDXmmSaveArea32AMD64 | flt_save | 
| 1 | (416) MDRawContextAMD64::$D520141881593523D1DB94D2DAC55DA9::$9C157CD774907A924DA545D68DEB0CD6 | sse_registers | 
# MDXmmSaveArea32AMD64
 | Offset | Type | Name | 
|---|---|---|
| 0 | (2) uint16_t | control_word | 
| 2 | (2) uint16_t | status_word | 
| 4 | (1) uint8_t | tag_word | 
| 5 | (1) uint8_t | reserved1 | 
| 6 | (2) uint16_t | error_opcode | 
| 8 | (4) uint32_t | error_offset | 
| 12 | (2) uint16_t | error_selector | 
| 14 | (2) uint16_t | reserved2 | 
| 16 | (4) uint32_t | data_offset | 
| 20 | (2) uint16_t | data_selector | 
| 22 | (2) uint16_t | reserved3 | 
| 24 | (4) uint32_t | mx_csr | 
| 28 | (4) uint32_t | mx_csr_mask | 
| 32 | (128) uint128_struct[8] | float_registers | 
| 160 | (256) uint128_struct[16] | xmm_registers | 
| 416 | (96) uint8_t[96] | reserved4 | 
# MDRawContextAMD64::$D520141881593523D1DB94D2DAC55DA9::$9C157CD774907A924DA545D68DEB0CD6
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) uint128_struct[2] | header | 
| 32 | (128) uint128_struct[8] | legacy | 
| 160 | (16) uint128_struct | _xmm0 | 
| 176 | (16) uint128_struct | _xmm1 | 
| 192 | (16) uint128_struct | _xmm2 | 
| 208 | (16) uint128_struct | _xmm3 | 
| 224 | (16) uint128_struct | _xmm4 | 
| 240 | (16) uint128_struct | _xmm5 | 
| 256 | (16) uint128_struct | _xmm6 | 
| 272 | (16) uint128_struct | _xmm7 | 
| 288 | (16) uint128_struct | _xmm8 | 
| 304 | (16) uint128_struct | _xmm9 | 
| 320 | (16) uint128_struct | _xmm10 | 
| 336 | (16) uint128_struct | _xmm11 | 
| 352 | (16) uint128_struct | _xmm12 | 
| 368 | (16) uint128_struct | _xmm13 | 
| 384 | (16) uint128_struct | _xmm14 | 
| 400 | (16) uint128_struct | _xmm15 | 
# MDRawModule
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) uint64_t | base_of_image | 
| 8 | (4) uint32_t | size_of_image | 
| 12 | (4) uint32_t | checksum | 
| 16 | (4) uint32_t | time_date_stamp | 
| 20 | (4) MDRVA | module_name_rva | 
| 24 | (52) MDVSFixedFileInfo | version_info | 
| 76 | (8) MDLocationDescriptor | cv_record | 
| 84 | (8) MDLocationDescriptor | misc_record | 
| 92 | (8) uint32_t[2] | reserved0 | 
| 100 | (8) uint32_t[2] | reserved1 | 
# MDVSFixedFileInfo
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | signature | 
| 4 | (4) uint32_t | struct_version | 
| 8 | (4) uint32_t | file_version_hi | 
| 12 | (4) uint32_t | file_version_lo | 
| 16 | (4) uint32_t | product_version_hi | 
| 20 | (4) uint32_t | product_version_lo | 
| 24 | (4) uint32_t | file_flags_mask | 
| 28 | (4) uint32_t | file_flags | 
| 32 | (4) uint32_t | file_os | 
| 36 | (4) uint32_t | file_type | 
| 40 | (4) uint32_t | file_subtype | 
| 44 | (4) uint32_t | file_date_hi | 
| 48 | (4) uint32_t | file_date_lo | 
# MDException
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | exception_code | 
| 4 | (4) uint32_t | exception_flags | 
| 8 | (8) uint64_t | exception_record | 
| 16 | (8) uint64_t | exception_address | 
| 24 | (4) uint32_t | number_parameters | 
| 28 | (4) uint32_t | __align | 
| 32 | (120) uint64_t[15] | exception_information | 
# MDRawSystemInfo
 | Offset | Type | Name | 
|---|---|---|
| 0 | (2) uint16_t | processor_architecture | 
| 2 | (2) uint16_t | processor_level | 
| 4 | (2) uint16_t | processor_revision | 
| 6 | (1) uint8_t | number_of_processors | 
| 7 | (1) uint8_t | product_type | 
| 8 | (4) uint32_t | major_version | 
| 12 | (4) uint32_t | minor_version | 
| 16 | (4) uint32_t | build_number | 
| 20 | (4) uint32_t | platform_id | 
| 24 | (4) MDRVA | csd_version_rva | 
| 28 | (2) uint16_t | suite_mask | 
| 30 | (2) uint16_t | reserved2 | 
| 32 | (24) MDCPUInformation | cpu | 
# MDCPUInformation
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) MDCPUInformation::$506F9874F29A8F83AA6970C5F347F260 | x86_cpu_info | 
| 1 | (8) MDCPUInformation::$67D17742F1A1285D3D22720ACA1D139F | arm_cpu_info | 
| 2 | (16) MDCPUInformation::$0748DD84010D68691F5D57D46D5A06CC | other_cpu_info | 
# MDCPUInformation::$506F9874F29A8F83AA6970C5F347F260
 | Offset | Type | Name | 
|---|---|---|
| 0 | (12) uint32_t[3] | vendor_id | 
| 12 | (4) uint32_t | version_information | 
| 16 | (4) uint32_t | feature_information | 
| 20 | (4) uint32_t | amd_extended_cpu_features | 
# MDCPUInformation::$67D17742F1A1285D3D22720ACA1D139F
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | cpuid | 
| 4 | (4) uint32_t | elf_hwcaps | 
# MDCPUInformation::$0748DD84010D68691F5D57D46D5A06CC
 | Offset | Type | Name | 
|---|---|---|
| 0 | (16) uint64_t[2] | processor_features | 
# MDRawLinkMap64
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) uint64_t | addr | 
| 8 | (4) MDRVA | name | 
| 16 | (8) uint64_t | ld | 
# MDGUID
 | Offset | Type | Name | 
|---|---|---|
| 0 | (4) uint32_t | data1 | 
| 4 | (2) uint16_t | data2 | 
| 6 | (2) uint16_t | data3 | 
| 8 | (8) uint8_t[8] | data4 | 
# Motive
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) const std::string | mName | 
| 32 | (4) const int | mWidth | 
| 36 | (4) const int | mHeight | 
| 40 | (4) const int | mUo | 
| 44 | (4) const int | mVo | 
| 48 | (1) const bool | mIsPublic | 
# MolangArrayVariable
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) HashedString | baseclass_0 | 
# MolangEntityVariable
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) HashedString | baseclass_0 | 
# MolangGeometryVariable
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) HashedString | baseclass_0 | 
# MolangMaterialVariable
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) HashedString | baseclass_0 | 
# MolangTempVariable
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) HashedString | baseclass_0 | 
# MolangTextureVariable
 | Offset | Type | Name | 
|---|---|---|
| 0 | (40) HashedString | baseclass_0 | 
# MolangDataDrivenGeometry
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) DataDrivenGeometry * | mGeometry | 
| 8 | (40) HashedString | mName | 
# MolangQueryFunctionPtr
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) const QueryFunctionAccessor * | mQueryFunctionPtr | 
| 8 | (40) HashedString | mName | 
# MolangGenericQueryFunctionPtr
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) const GenericQueryFunctionAccessor * | mGenericQueryFunctionPtr | 
| 8 | (40) HashedString | mName | 
# mce::anonymous namespace'::MathInitializer`
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# MinecraftEventing
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) IMinecraftEventing | baseclass_0 | 
| 32 | (8) std::unique_ptr<Social::Events::EventManager> | mEventManager | 
| 40 | (8) std::unique_ptr<TelemetryInfo> | mTelemetryInfo | 
| 48 | (8) Social::IUserManager * | mUserManager | 
| 56 | (4) Social::LocalUserId | mPrimaryLocalUserId | 
| 64 | (8) uint_fast64_t | mSessionTickCount | 
| 72 | (32) Core::HeapPathBuffer | mSettingsDir | 
| 104 | (32) std::string | mPlayerSessionID | 
| 136 | (32) std::string | mAppSessionID | 
| 168 | (1) bool | mShouldHaveAchievementsEnabled | 
| 169 | (1) bool | mAchievementsAlwaysEnabled | 
| 176 | (32) std::function<void ()> | mUnregisterOptionsObserver | 
| 208 | (1) bool | mIsHost | 
| 216 | (8) double | mLastScreenTimestamp | 
| 224 | (1) bool | mFlagPlayerGameTypeDefault | 
| 225 | (1) bool | mFlagDeepLink | 
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport,std::default_delete<com::mojang::clacks::protocol::MetricReport> >,moodycamel::ConcurrentQueueDefaultTraits>
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase *> | producerListTail | 
| 8 | (4) std::atomic<unsigned int> | producerCount | 
| 16 | (8) std::atomic<unsigned long> | initialBlockPoolIndex | 
| 24 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block * | initialBlockPool | 
| 32 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t | initialBlockPoolSize | 
| 40 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block> | freeList | 
| 48 | (8) std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash *> | implicitProducerHash | 
| 56 | (8) std::atomic<unsigned long> | implicitProducerHashCount | 
| 64 | (24) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash | initialImplicitProducerHash | 
| 88 | (512) std::array<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP,32> | initialImplicitProducerHashEntries | 
| 600 | (1) std::atomic_flag | implicitProducerHashResizeInProgress | 
| 604 | (4) std::atomic<unsigned int> | nextExplicitConsumerId | 
| 608 | (4) std::atomic<unsigned int> | globalExplicitConsumerOffset | 
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport,std::default_delete<com::mojang::clacks::protocol::MetricReport> >,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport,std::default_delete<com::mojang::clacks::protocol::MetricReport> >,moodycamel::ConcurrentQueueDefaultTraits>::Block>
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> | freeListHead | 
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport,std::default_delete<com::mojang::clacks::protocol::MetricReport> >,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t | capacity | 
| 8 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP * | entries | 
| 16 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash * | prev | 
# msghdr
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) void * | msg_name | 
| 8 | (4) socklen_t | msg_namelen | 
| 16 | (8) iovec * | msg_iov | 
| 24 | (8) size_t | msg_iovlen | 
| 32 | (8) void * | msg_control | 
| 40 | (8) size_t | msg_controllen | 
| 48 | (4) int | msg_flags | 
# MPMCQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter> >
 | Offset | Type | Name | 
|---|---|---|
| 0 | (616) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits> | mQueue | 
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase *> | producerListTail | 
| 8 | (4) std::atomic<unsigned int> | producerCount | 
| 16 | (8) std::atomic<unsigned long> | initialBlockPoolIndex | 
| 24 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block * | initialBlockPool | 
| 32 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t | initialBlockPoolSize | 
| 40 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block> | freeList | 
| 48 | (8) std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash *> | implicitProducerHash | 
| 56 | (8) std::atomic<unsigned long> | implicitProducerHashCount | 
| 64 | (24) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash | initialImplicitProducerHash | 
| 88 | (512) std::array<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP,32> | initialImplicitProducerHashEntries | 
| 600 | (1) std::atomic_flag | implicitProducerHashResizeInProgress | 
| 604 | (4) std::atomic<unsigned int> | nextExplicitConsumerId | 
| 608 | (4) std::atomic<unsigned int> | globalExplicitConsumerOffset | 
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block>
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> | freeListHead | 
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t | capacity | 
| 8 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP * | entries | 
| 16 | (8) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash * | prev | 
# MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PendingComparer>::Base
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<std::shared_ptr<BackgroundTask>> | baseclass_0 | 
# MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PriorityComparer>::Base
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<std::shared_ptr<BackgroundTask>> | baseclass_0 | 
# MapItemSavedData
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) size_t | mUpdateInterval | 
| 8 | (8) ActorUniqueID | mMapId | 
| 16 | (8) ActorUniqueID | mParentMapId | 
| 24 | (1) bool | mIsFullyExplored | 
| 25 | (1) bool | mPreviewIncomplete | 
| 28 | (12) BlockPos | mOrigin | 
| 40 | (4) DimensionType | mDimension | 
| 44 | (1) int8_t | mScale | 
| 48 | (24) std::vector<unsigned int> | mPixels | 
| 72 | (24) std::vector<std::shared_ptr<MapItemTrackedActor>> | mTrackedEntities | 
| 96 | (1) bool | mUnlimitedTracking | 
| 97 | (1) bool | mDirty | 
| 98 | (1) bool | mLocked | 
| 104 | (24) MapItemSavedData::DecorationCollection | mDecorations | 
# MapItemSavedData::DecorationCollection
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) std::_Vector_base<std::pair<MapItemTrackedActor::UniqueId,std::shared_ptr<MapDecoration> >> | baseclass_0 | 
# MapDecoration
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) std::string | mLabel | 
| 32 | (1) MapDecoration::Type | mImage | 
| 33 | (1) int8_t | mX | 
| 34 | (1) int8_t | mY | 
| 35 | (1) int8_t | mRotation | 
| 36 | (16) Color | mColor | 
# MinecraftServerScriptEngine
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1184) ScriptEngineWithContext<ScriptServerContext> | baseclass_0 | 
| 1184 | (8) ServerInstanceEventListener | baseclass_4a0 | 
| 1192 | (8) std::unique_ptr<ScriptServerActorEventListener> | mEntityEventListener | 
| 1200 | (8) std::unique_ptr<ScriptServerBlockEventListener> | mBlockEventListener | 
| 1208 | (8) std::unique_ptr<ScriptServerPacketEventListener> | mPacketEventListener | 
| 1216 | (8) std::unique_ptr<ScriptTelemetryEventListener> | mTelemetryListener | 
| 1224 | (8) std::unique_ptr<ScriptServerLevelEventListener> | mLevelListener | 
| 1232 | (8) std::unique_ptr<ScriptLevelWeatherEventListener> | mWeatherListener | 
| 1240 | (8) std::unique_ptr<entt::Registry<unsigned int>> | mRegistry | 
| 1248 | (8) ServerInstance * | mServerInstance | 
# Mob::tickEffects::$7EF7C94BEAB75C6CEF4ADFB99B570420
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# Mob::updateEntitySpecificMolangVariables::$7EF7C94BEAB75C6CEF4ADFB99B570420
 | Offset | Type | Name | 
|---|---|---|
| 0 | (1) __int8[1] | gap0 | 
# MovingBlockActor
 | Offset | Type | Name | 
|---|---|---|
| 0 | (208) BlockActor | baseclass_0 | 
| 208 | (8) const Block * | mBlock | 
| 216 | (8) const Block * | mExtraBlock | 
| 224 | (12) BlockPos | mPistonBlockPos | 
| 240 | (16) std::shared_ptr<BlockActor> | mBlockEntity | 
# MossStoneSelector
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) BlockSelector | baseclass_0 | 
# MobEventCommand::InitProxy
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) MobEvents * | mMobEvents | 
# MolangQueryFunction
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) QueryFunctionAccessor | mAccessor | 
| 32 | (32) std::string | mDocumentation | 
| 64 | (8) size_t | mMinArgumentCount | 
| 72 | (8) size_t | mMaxArgumentCount | 
# MolangGenericQueryFunction
 | Offset | Type | Name | 
|---|---|---|
| 0 | (32) GenericQueryFunctionAccessor | mAccessor | 
| 32 | (32) std::string | mDocumentation | 
| 64 | (8) size_t | mMinArgumentCount | 
| 72 | (8) size_t | mMaxArgumentCount | 
# MemoryMappedFileAccess::StreamHandle
 | Offset | Type | Name | 
|---|---|---|
| 0 | (8) MemoryMappedFileAccess::StreamDetails * | mStream | 
| 8 | (8) size_t | mPosition | 
# MemoryMappedFileAccess::StreamDetails
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) ByteVector | mStream | 
| 24 | (1) bool | mReadAllowed | 
| 25 | (1) bool | mWriteAllowed | 
| 26 | (1) bool | mAlwaysWriteAtEnd | 
| 27 | (1) bool | mDirty | 
# MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PendingComparer>
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PendingComparer>::Base | mC | 
# MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PriorityComparer>
 | Offset | Type | Name | 
|---|---|---|
| 0 | (24) MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PriorityComparer>::Base | mC | 
# mbstate_t
 typedef __mbstate_t mbstate_t;
# max_align_t
 struct max_align_t
{
  __int64 __clang_max_align_nonce1;
  long double __clang_max_align_nonce2;
};
# Minecraft
 struct __cppobj Minecraft : IEntityRegistryOwner
{
  GameCallbacks *mGameCallbacks;
  IMinecraftEventing *mEventing;
  Unique<ResourcePackManager> mResourceLoader;
  Unique<StructureManager> mStructureManager;
  std::shared_ptr<GameModuleServer> mGameModuleServer;
  Whitelist *mWhitelist;
  PermissionsFile *mPermissionsFile;
  Unique<PrivateKeyManager> mServerKeys;
  const std::string mSaveGamePath;
  Core::FilePathManager *mFilePathManager;
  ServerMetrics *mServerMetrics;
  bool mLevelIsCorrupted;
  double mFrameDuration;
  double mLastFrameStart;
  std::chrono::seconds mMaxPlayerIdleTime;
  Unique<MinecraftCommands> mCommands;
  Unique<GameSession> mGameSession;
  Timer *mSimTimer;
  Timer *mRealTimer;
  NetworkHandler *mNetworkHandler;
  PacketSender *mPacketSender;
  IMinecraftApp *mApp;
  SubClientId mClientSubId;
  OwnerPtr<EntityRegistry> mEntityRegistry;
};
# MinecraftCommands
 struct __attribute__((aligned(8))) MinecraftCommands
{
  Unique<CommandOutputSender> mOutputSender;
  Unique<CommandRegistry> mRegistry;
  CommandPermissionLevel mOpPermissionLevel;
  Minecraft *mMinecraft;
  std::function<bool ()> mChatPermissionsCallback;
  std::unordered_map<HashedString,std::unique_ptr<Command>> mCompiledCommandMap;
  bool mExperimentalGameplay;
};
# mce::Math
 struct mce::Math
{
  __int8 gap0[1];
};
# MPMCQueue<std::function<void ()> >
 struct MPMCQueue<std::function<void ()> >
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits> mQueue;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>
 struct __attribute__((aligned(8))) moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>
{
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase *> producerListTail;
  std::atomic<unsigned int> producerCount;
  std::atomic<unsigned long> initialBlockPoolIndex;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *initialBlockPool;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t initialBlockPoolSize;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block> freeList;
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash *> implicitProducerHash;
  std::atomic<unsigned long> implicitProducerHashCount;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash initialImplicitProducerHash;
  std::array<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP,32> initialImplicitProducerHashEntries;
  std::atomic_flag implicitProducerHashResizeInProgress;
  std::atomic<unsigned int> nextExplicitConsumerId;
  std::atomic<unsigned int> globalExplicitConsumerOffset;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
 struct __cppobj moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase : moodycamel::details::ConcurrentQueueProducerTypelessBase
{
  int (**_vptr$ProducerBase)(void);
  std::atomic<unsigned long> tailIndex;
  std::atomic<unsigned long> headIndex;
  std::atomic<unsigned long> dequeueOptimisticCount;
  std::atomic<unsigned long> dequeueOvercommit;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *tailBlock;
  bool isExplicit;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits> *parent;
};
# moodycamel::details::ConcurrentQueueProducerTypelessBase
 struct moodycamel::details::ConcurrentQueueProducerTypelessBase
{
  moodycamel::details::ConcurrentQueueProducerTypelessBase *next;
  std::atomic<bool> inactive;
  moodycamel::ProducerToken *token;
};
# moodycamel::ProducerToken
 struct moodycamel::ProducerToken
{
  moodycamel::details::ConcurrentQueueProducerTypelessBase *producer;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block
 struct __attribute__((aligned(16))) moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block::$3295407E46A0F788D2E71668977F845E _anon_0;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *next;
  std::atomic<unsigned long> elementsCompletelyDequeued;
  std::atomic<bool> emptyFlags[32];
  std::atomic<unsigned int> freeListRefs;
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> freeListNext;
  std::atomic<bool> shouldBeOnFreeList;
  bool dynamicallyAllocated;
};
# moodycamel::details::std_max_align_t
 typedef max_align_t moodycamel::details::std_max_align_t;
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block>
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block>
{
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> freeListHead;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t capacity;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP *entries;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash *prev;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP
{
  std::atomic<unsigned long> key;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer *value;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer
 struct __cppobj moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer : moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t nextBlockIndexCapacity;
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader *> blockIndex;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t capacity;
  std::atomic<unsigned long> tail;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry *entries;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry **index;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader *prev;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry
{
  std::atomic<unsigned long> key;
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> value;
};
# moodycamel::ConcurrentQueueDefaultTraits
 struct moodycamel::ConcurrentQueueDefaultTraits
{
  __int8 gap0[1];
};
# moodycamel::ConsumerToken
 struct moodycamel::ConsumerToken
{
  uint32_t initialOffset;
  uint32_t lastKnownGlobalOffset;
  uint32_t itemsConsumedFromCurrent;
  moodycamel::details::ConcurrentQueueProducerTypelessBase *currentProducer;
  moodycamel::details::ConcurrentQueueProducerTypelessBase *desiredProducer;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
 struct __cppobj moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase : moodycamel::details::ConcurrentQueueProducerTypelessBase
{
  int (**_vptr$ProducerBase)(void);
  std::atomic<unsigned long> tailIndex;
  std::atomic<unsigned long> headIndex;
  std::atomic<unsigned long> dequeueOptimisticCount;
  std::atomic<unsigned long> dequeueOvercommit;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *tailBlock;
  bool isExplicit;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits> *parent;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block
 struct __attribute__((aligned(16))) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block
{
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block::$64D1B972AE0AB987F85AF31DA57DF7B7 _anon_0;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *next;
  std::atomic<unsigned long> elementsCompletelyDequeued;
  std::atomic<bool> emptyFlags[32];
  std::atomic<unsigned int> freeListRefs;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> freeListNext;
  std::atomic<bool> shouldBeOnFreeList;
  bool dynamicallyAllocated;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>
 struct __attribute__((aligned(8))) moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>
{
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase *> producerListTail;
  std::atomic<unsigned int> producerCount;
  std::atomic<unsigned long> initialBlockPoolIndex;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *initialBlockPool;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t initialBlockPoolSize;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block> freeList;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash *> implicitProducerHash;
  std::atomic<unsigned long> implicitProducerHashCount;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash initialImplicitProducerHash;
  std::array<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP,32> initialImplicitProducerHashEntries;
  std::atomic_flag implicitProducerHashResizeInProgress;
  std::atomic<unsigned int> nextExplicitConsumerId;
  std::atomic<unsigned int> globalExplicitConsumerOffset;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block>
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::FreeList<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block>
{
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> freeListHead;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash
{
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t capacity;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP *entries;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerHash *prev;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP
{
  std::atomic<unsigned long> key;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer *value;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer
 struct __cppobj moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer : moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
{
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t nextBlockIndexCapacity;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader *> blockIndex;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader
{
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t capacity;
  std::atomic<unsigned long> tail;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry *entries;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry **index;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader *prev;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry
{
  std::atomic<unsigned long> key;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> value;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader
{
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t size;
  std::atomic<unsigned long> front;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry *entries;
  void *prev;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry
 struct moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry
{
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::index_t base;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::Block *block;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer
 struct __cppobj moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer : moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
{
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader *> blockIndex;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexSlotsUsed;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexSize;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexFront;
  moodycamel::ConcurrentQueue<std::unique_ptr<com::mojang::clacks::protocol::MetricReport>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry *pr_blockIndexEntries;
  void *pr_blockIndexRaw;
};
# moodycamel::details::_hash_32_or_64<true>
 struct moodycamel::details::_hash_32_or_64<true>
{
  __int8 gap0[1];
};
# moodycamel::details::thread_id_converter<unsigned long>
 struct moodycamel::details::thread_id_converter<unsigned long>
{
  __int8 gap0[1];
};
# MoveControlSystem
 struct __cppobj MoveControlSystem : ITickingSystem
{
};
# MountTamingSystem
 struct __cppobj MountTamingSystem : ITickingSystem
{
};
# MobEffectSystem
 struct __cppobj MobEffectSystem : ITickingSystem
{
};
# MoveInputHandler
 struct __cppobj __attribute__((aligned(8))) MoveInputHandler : MoveInput:672
{
  bool mAscend;
  bool mDescend;
  bool mNorthJump;
  bool mJumpDown;
  bool mSprintDown;
  bool mChangeHeight;
  bool mPersistSneak;
  bool mUp;
  bool mDown;
  bool mLeft;
  bool mRight;
  bool mUpLeft;
  bool mUpRight;
  Vec2 mAnalogMoveVector;
  Vec3 mGazeDir;
  bool mLookCenter;
  uint8_t mLookSlightDirField;
  uint8_t mLookNormalDirField;
  uint8_t mLookSmoothDirField;
};
# MegaPineTreeFeature
 struct __cppobj __attribute__((aligned(4))) MegaPineTreeFeature : MegaTreeFeature:416
{
  bool mIsSpruce;
};
# MegaJungleTreeFeature
 struct __cppobj __attribute__((aligned(8))) MegaJungleTreeFeature : MegaTreeFeature
{
};
# MelonFeature
 struct __cppobj MelonFeature : Feature
{
};
# MobSpawnerBlockActor
 struct __cppobj MobSpawnerBlockActor : BlockActor
{
  Unique<BaseMobSpawner> mSpawner;
};
# MolangVariable
 struct __attribute__((aligned(8))) MolangVariable
{
  std::string mName;
  float mValue;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
 struct __cppobj moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase : moodycamel::details::ConcurrentQueueProducerTypelessBase
{
  int (**_vptr$ProducerBase)(void);
  std::atomic<unsigned long> tailIndex;
  std::atomic<unsigned long> headIndex;
  std::atomic<unsigned long> dequeueOptimisticCount;
  std::atomic<unsigned long> dequeueOvercommit;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block *tailBlock;
  bool isExplicit;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits> *parent;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block
 struct __attribute__((aligned(16))) moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block
{
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block::$64D1B972AE0AB987F85AF31DA57DF7B7 _anon_0;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block *next;
  std::atomic<unsigned long> elementsCompletelyDequeued;
  std::atomic<bool> emptyFlags[32];
  std::atomic<unsigned int> freeListRefs;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> freeListNext;
  std::atomic<bool> shouldBeOnFreeList;
  bool dynamicallyAllocated;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP
 struct moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducerKVP
{
  std::atomic<unsigned long> key;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer *value;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer
 struct __cppobj moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer : moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
{
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t nextBlockIndexCapacity;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader *> blockIndex;
};
# MixerLayer<LayerValues::Terrain,LayerValues::Terrain>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<LayerValues::Terrain,LayerValues::Terrain> : Layer<LayerValues::Terrain>
{
  LayerPtr<LayerValues::Terrain> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<LayerValues::PreBiome,LayerValues::Terrain>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<LayerValues::PreBiome,LayerValues::Terrain> : Layer<LayerValues::PreBiome>
{
  LayerPtr<LayerValues::Terrain> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<LayerValues::PreBiome,LayerValues::PreBiome>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<LayerValues::PreBiome,LayerValues::PreBiome> : Layer<LayerValues::PreBiome>
{
  LayerPtr<LayerValues::PreBiome> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<Biome *,LayerValues::PreBiome>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<Biome *,LayerValues::PreBiome> : Layer<Biome *>
{
  LayerPtr<LayerValues::PreBiome> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<Biome *,Biome *>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<Biome *,Biome *> : Layer<Biome *>
{
  LayerPtr<Biome *> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<int,Biome *>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<int,Biome *> : Layer<int>
{
  LayerPtr<Biome *> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<int,int>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<int,int> : Layer<int>
{
  LayerPtr<int> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<bool,int>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<bool,int> : Layer<bool>
{
  LayerPtr<int> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<bool,bool>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<bool,bool> : Layer<bool>
{
  LayerPtr<bool> mFirstParent;
  std::tuple<> mMoreParents;
};
# MixerLayer<Biome *,Biome *,bool>
 struct __cppobj MixerLayer<Biome *,Biome *,bool> : Layer<Biome *>
{
  LayerPtr<Biome *> mFirstParent;
  std::tuple<std::shared_ptr<Layer<bool> > > mMoreParents;
};
# MixerLayer<BiomeTemperatureCategory,BiomeTemperatureCategory>
 struct __cppobj __attribute__((aligned(8))) MixerLayer<BiomeTemperatureCategory,BiomeTemperatureCategory> : Layer<BiomeTemperatureCategory>
{
  LayerPtr<BiomeTemperatureCategory> mFirstParent;
  std::tuple<> mMoreParents;
};
# MineshaftFeature
 struct __cppobj MineshaftFeature : StructureFeature
{
};
# MonsterRoomFeature
 struct __cppobj MonsterRoomFeature : Feature
{
};
# MixerLayer<LayerValues::Terrain,LayerValues::Terrain>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<LayerValues::Terrain,LayerValues::Terrain>::ParentUnpacker;
# MixerLayer<LayerValues::PreBiome,LayerValues::Terrain>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<LayerValues::PreBiome,LayerValues::Terrain>::ParentUnpacker;
# MixerLayer<LayerValues::PreBiome,LayerValues::PreBiome>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<LayerValues::PreBiome,LayerValues::PreBiome>::ParentUnpacker;
# MixerLayer<Biome *,LayerValues::PreBiome>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<Biome *,LayerValues::PreBiome>::ParentUnpacker;
# MixerLayer<Biome *,Biome *>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<Biome *,Biome *>::ParentUnpacker;
# MixerLayer<int,Biome *>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<int,Biome *>::ParentUnpacker;
# MixerLayer<int,int>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<int,int>::ParentUnpacker;
# MixerLayer<bool,int>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<bool,int>::ParentUnpacker;
# MixerLayer<bool,bool>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<bool,bool>::ParentUnpacker;
# MixerLayer<Biome *,Biome *,bool>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)>_0 MixerLayer<Biome *,Biome *,bool>::ParentUnpacker;
# MixerLayer<BiomeTemperatureCategory,BiomeTemperatureCategory>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)> MixerLayer<BiomeTemperatureCategory,BiomeTemperatureCategory>::ParentUnpacker;
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t size;
  std::atomic<unsigned long> front;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry *entries;
  void *prev;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry
 struct moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry
{
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::index_t base;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::Block *block;
};
# moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer
 struct __cppobj moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer : moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
{
  std::atomic<moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader *> blockIndex;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexSlotsUsed;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexSize;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexFront;
  moodycamel::ConcurrentQueue<std::function<void ()>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry *pr_blockIndexEntries;
  void *pr_blockIndexRaw;
};
# MerchantRecipeList
 struct MerchantRecipeList
{
  int (**_vptr$MerchantRecipeList)(void);
  std::vector<MerchantRecipe> mRecipeList;
  std::vector<unsigned int> mTierExpRequirements;
};
# MobEffect
 struct MobEffect
{
  int (**_vptr$MobEffect)(void);
  const unsigned int mId;
  bool mIsHarmful;
  Color mColor;
  std::string mDescriptionId;
  int mIcon;
  float mDurationModifier;
  bool mIsDisabled;
  std::string mResourceName;
  std::string mIconName;
  bool mEffectVisible;
  Util::HashString mComponentName;
  std::shared_ptr<Amplifier> mValueAmplifier;
  std::shared_ptr<Amplifier> mDurationAmplifier;
  std::vector<std::pair<const Attribute *,std::shared_ptr<AttributeBuff> >> mAttributeBuffs;
  std::vector<std::pair<const Attribute *,std::shared_ptr<AttributeModifier> >> mAttributeModifiers;
};
# Mob
 struct __cppobj Mob : Actor
{
  float mYBodyRot;
  float mYBodyRotO;
  float mYHeadRot;
  float mYHeadRotO;
  int mHurtTime;
  int mHurtDuration;
  float mHurtDir;
  int mAttackTime;
  float mOTilt;
  float mTilt;
  int mLookTime;
  float mFallTime;
  bool mFloatsInLiquid;
  int mJumpTicks;
  Vec3 mElytraRot;
  CompassSpriteCalculator mCompassSpriteCalc;
  ClockSpriteCalculator mClockSpriteCalc;
  float mXxa;
  float mYya;
  float mZza;
  float mYRotA;
  bool mHasMoveInput;
  float mAttackAnim;
  float mORun;
  float mRun;
  bool mSwinging;
  int mSwingTime;
  int mNoActionTime;
  int mNoJumpDelay;
  float mDefaultLookAngle;
  float mFrictionModifier;
  float mFlyingSpeed;
  float mSwimSpeedMultiplier;
  int mDeathTime;
  int mDeathScore;
  float mAnimStep;
  float mAnimStepO;
  float mLockedBodyYRot;
  float mRiderYRotLimit;
  MovementInterpolator mInterpolation;
  int mLastHurt;
  ActorDamageCause mLastHurtCause;
  int mDmgSpill;
  int mDmgPartial;
  bool mJumping;
  bool mJumpVelRedux;
  float mPlayerJumpPendingScale;
  bool mAllowStandSliding;
  Vec3 mJumpStartPos;
  float mSpeed;
  bool mSurfaceMob;
  bool mNaturallySpawned;
  bool mDead;
  Weak<VillageLegacy> mVillageLegacy;
  bool mWantsToBeJockey;
  int mAmbientPlayBackInterval;
  bool mSpawnedXP;
  int mRollCounter;
  ActorUniqueID mLookingAtId;
  ActorUniqueID mLastHurtMobId;
  ActorUniqueID mLastHurtByMobId;
  ActorUniqueID mLastHurtByPlayerId;
  ActorUniqueID mCaravanHead;
  ActorUniqueID mCaravanTail;
  int mLastHurtMobTimestamp;
  int mLastHurtByMobTime;
  float mOAttackAnim;
  int mArrowCount;
  int mRemoveArrowTime;
  int mFallFlyTicks;
  bool mHasBoundOrigin;
  BlockPos mBoundOrigin;
  MobSpawnMethod mSpawnMethod;
  bool mCreateAiOnReload;
  ActorUniqueID mTargetCaptainId;
};
# MountTameableDefinition
 struct MountTameableDefinition
{
  int mMinTemper;
  int mMaxTemper;
  int mAttemptTemperMod;
  std::string mFeedText;
  std::string mRideText;
  DefinitionTrigger mOnTame;
  std::vector<FeedItem> mFeedItems;
  std::vector<const Item *> mAutoRejectItems;
};
# MoveControl
 struct __cppobj MoveControl : Control
{
};
# ModalFormRequestPacket
 struct __cppobj ModalFormRequestPacket : Packet:288
{
  uint32_t mFormId;
  std::string mFormJSON;
};
# ModalFormResponsePacket
 struct __cppobj ModalFormResponsePacket : Packet:288
{
  uint32_t mFormId;
  std::string mJSONResponse;
};
# MultiplayerSettingsPacket
 struct __cppobj MultiplayerSettingsPacket : Packet:288
{
  MultiplayerSettingsPacketType mPacketType;
};
# MinecraftPackets
 struct MinecraftPackets
{
  __int8 gap0[1];
};
# MapItemTrackedActor
 struct MapItemTrackedActor
{
  MapItemTrackedActor::UniqueId mUniqueId;
  int mStep;
  bool mNeedsResend;
  uint32_t mMinDirtyX;
  uint32_t mMinDirtyY;
  uint32_t mMaxDirtyX;
  uint32_t mMaxDirtyY;
  int mTick;
  float mLastRotation;
  MapDecoration::Type mDecorationType;
  DimensionType mDimensionId;
  std::unique_ptr<ChunkViewSource> mChunkViewSource;
};
# MultiRecipe
 struct __cppobj MultiRecipe : Recipe
{
};
# MapExtendingRecipe
 struct __cppobj MapExtendingRecipe : MultiRecipe
{
  Recipe::ResultList mResults;
  Level *mLevel;
};
# MapLockingRecipe
 struct __cppobj MapLockingRecipe : MultiRecipe
{
  Recipe::ResultList mResults;
  ActorUniqueID mOriginalMapId;
  Level *mLevel;
};
# MapCloningRecipe
 struct __cppobj MapCloningRecipe : MultiRecipe
{
  Recipe::ResultList mResults;
};
# MapUpgradingRecipe
 struct __cppobj MapUpgradingRecipe : MultiRecipe
{
  Recipe::ResultList mResults;
};
# MinecraftScheduler
 struct MinecraftScheduler
{
  __int8 gap0[1];
};
# MinecraftWorkerPool
 struct MinecraftWorkerPool
{
  __int8 gap0[1];
};
# MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PendingComparer>::const_iterator
 typedef std::vector<std::shared_ptr<BackgroundTask>>::const_iterator MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PendingComparer>::const_iterator;
# MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PriorityComparer>::const_iterator
 typedef std::vector<std::shared_ptr<BackgroundTask>>::const_iterator MovePriorityQueue<std::shared_ptr<BackgroundTask>,BackgroundTask::PriorityComparer>::const_iterator;
# MobEvents
 struct __attribute__((aligned(8))) MobEvents
{
  int (**_vptr$MobEvents)(void);
  std::array<MobEvent,2> mMobEvents;
  BasicTimer mSaveTimer;
  LevelStorage *mLevelStorage;
  bool mEventsEnabled;
  bool mNeedsToSave;
};
# MovementInterpolator
 struct __attribute__((aligned(4))) MovementInterpolator
{
  Vec3 mPos;
  Vec2 mRot;
  float mHeadYaw;
  int mPositionSteps;
  int mRotationSteps;
  int mHeadYawSteps;
  bool mInterpolationActive;
};
# MobEffectChangeDescription
 struct __cppobj MobEffectChangeDescription : AttributeDescription
{
  std::vector<MobEffectInstance> mAddEffects;
  std::vector<std::string> mRemoveEffects;
};
# ManagedWanderingTraderDescription
 struct __cppobj ManagedWanderingTraderDescription : ComponentDescription
{
};
# MarkVariantDescription
 struct __cppobj __attribute__((aligned(8))) MarkVariantDescription : PropertyDescription
{
  int mMarkVariantChoice;
};
# MoveControlBasicDescription
 struct __cppobj __attribute__((aligned(8))) MoveControlBasicDescription : MoveControlDescription
{
};
# MoveControlFlyDescription
 struct __cppobj __attribute__((aligned(8))) MoveControlFlyDescription : MoveControlDescription
{
};
# MoveControlSkipDescription
 struct __cppobj __attribute__((aligned(8))) MoveControlSkipDescription : MoveControlDescription
{
};
# MoveControlHoverDescription
 struct __cppobj __attribute__((aligned(8))) MoveControlHoverDescription : MoveControlDescription
{
};
# MoveControlSwayDescription
 struct __cppobj __attribute__((aligned(8))) MoveControlSwayDescription : MoveControlDescription:96
{
  float mSwayFrequency;
  float mSwayAmplitude;
};
# MoveControlDescription:96
 struct __cppobj __attribute__((packed)) __attribute__((aligned(4))) MoveControlDescription:96 : ComponentDescription
{
  float mMaxTurn;
};
# MaterialReducerContainerManagerModel
 struct __cppobj __attribute__((aligned(8))) MaterialReducerContainerManagerModel : ContainerManagerModel
{
  BlockPos mBlockPos;
};
# MinecartBlockCommandOrigin
 struct __cppobj MinecartBlockCommandOrigin : BlockCommandOrigin
{
  ActorUniqueID mMinecartEntityID;
};
# MovePriorityQueue<FileChunk,std::less<FileChunk> >
 struct MovePriorityQueue<FileChunk,std::less<FileChunk> >
{
  MovePriorityQueue<FileChunk,std::less<FileChunk> >::Base mC;
};
# MovePriorityQueue<FileChunk,std::less<FileChunk> >::Base
 typedef std::vector<FileChunk> MovePriorityQueue<FileChunk,std::less<FileChunk> >::Base;
# MovePriorityQueue<FileChunk,std::less<FileChunk> >::const_iterator
 typedef std::vector<FileChunk>::const_iterator MovePriorityQueue<FileChunk,std::less<FileChunk> >::const_iterator;
# ModelPartLocator
 struct __attribute__((aligned(8))) ModelPartLocator
{
  SkeletalHierarchyIndex mSkeletalHierarchyIndex;
  int mBoneMapping;
  HashedString mBoneName;
  HashedString mName;
  Vec3 mOffset;
  Vec3 mPosition;
  Vec3 mRotation;
  Matrix mWorldAbsoluteTransform;
};
# Material
 struct Material
{
  MaterialType mType;
  bool mFlammable;
  bool mNeverBuildable;
  bool mAlwaysDestroyable;
  bool mReplaceable;
  bool mLiquid;
  float mTranslucency;
  bool mBlocksMotion;
  bool mBlocksPrecipitation;
  bool mSolid;
  bool mSuperHot;
  Color mMaterialColor;
};
# MushroomCow
 struct __cppobj MushroomCow : Animal
{
};
# MinecartRideable
 struct __cppobj MinecartRideable : Minecart
{
};
# MinecartHopper
 struct __cppobj __attribute__((aligned(8))) MinecartHopper : Minecart
{
  BlockPos mLastPosition;
};
# MinecartTNT
 struct __cppobj MinecartTNT : Minecart
{
};
# MinecartChest
 struct __cppobj MinecartChest : Minecart
{
};
# MinecartCommandBlock
 struct __cppobj MinecartCommandBlock : Minecart
{
};
# MoveToWaterGoal
 struct __cppobj MoveToWaterGoal : BaseMoveToBlockGoal
{
};
# MoveToVillageGoal
 struct __attribute__((aligned(8))) MoveToVillageGoal
{
  __int8 baseclass_0[116];
  int mVillageSearchRangeBlocks;
  bool mReachedVillage;
};
# MoveToLandGoal
 struct __cppobj MoveToLandGoal : BaseMoveToBlockGoal
{
};
# MoveToPOIGoal
 struct MoveToPOIGoal
{
  __int8 baseclass_0[116];
  POIType mPOIType;
  AABB mPOIBoundingBox;
  bool mUsingBoundingBox;
  bool mRequireSameY;
  Unique<Path> mPath;
};
# MoveToBlockGoal
 struct __cppobj __attribute__((aligned(8))) MoveToBlockGoal : Goal:96
{
  int mGiveUpTicks;
  int mStayDurationTicks;
  float mSpeedMod;
  float mGoalRadiusSq;
  BlockPos mTargetBlockPos;
  Vec3 mTargetPositionOffset;
  float mChanceToStart;
  int mInterval;
  int mSearchRange;
  int mSearchHeight;
  const TargetSelectionMethod_0 mMethod;
  const std::vector<DefinitionTrigger> mOnReachTriggers;
  const std::vector<DefinitionTrigger> mOnStayCompletedTriggers;
  const std::vector<ItemDescriptor> mTargetBlockDescriptors;
  uint64_t mCooldownCounter;
  const uint64_t mCooldownTimeoutTime;
  bool mReachedTarget;
  int mNextStartTick;
  int mStayTicks;
  int mTravelTicks;
  BlockPos mStartPos;
  Mob *mMob;
  bool mHasSentOnReachEvent;
};
# MoveToRandomBlockGoal
 struct __cppobj MoveToRandomBlockGoal : Goal
{
  Mob *mMob;
  Vec3 mDestination;
  Vec3 mLastPos;
  int mFailedPathing;
  int mTotalFailedPathing;
  float mSpeedModifier;
  float mRadiusSq;
  float mBlockDistance;
  int mCooldownTimer;
};
# MountPathingGoal
 struct __cppobj MountPathingGoal : Goal
{
  TempEPtr<Actor> mTarget;
  float mSpeed;
  float mTargetDistSqr;
  bool mTrackTarget;
  int mTimeToRecalcPath;
  Mob *mMob;
};
# MoveIndoorsGoal
 struct __cppobj MoveIndoorsGoal : Goal:96
{
  bool mUsingPOI;
  bool mPathingInvalid;
  BlockPos mInsidePos;
  BlockPos mStartPos;
  AABB mPOIBoundingBox;
  Tick mCooldownTimer;
  const Tick mCooldownTimeoutTime;
  float mSpeedModifier;
  Mob *mMob;
};
# MoveThroughVillageGoal
 struct __cppobj MoveThroughVillageGoal : Goal:96
{
  float mSpeedModifier;
  Unique<Path> mPath;
  Mob *mMob;
};
# MoveTowardsRestrictionGoal
 struct __cppobj MoveTowardsRestrictionGoal : Goal
{
  Mob *mMob;
  float mSpeedModifier;
  Vec3 mWantedPosition;
};
# MoveTowardsTargetGoal
 struct __cppobj __attribute__((aligned(8))) MoveTowardsTargetGoal : Goal
{
  TempEPtr<Actor> mTarget;
  Mob *mMob;
  float mSpeedModifier;
  float mWithin;
  Vec3 mWantedPosition;
};
# MakeLoveGoal
 struct __cppobj __attribute__((aligned(8))) MakeLoveGoal : Goal
{
  VillagerBase *mVillager;
  int mLoveMakingTime;
};
# MeleeAttackGoal
 struct __cppobj MeleeAttackGoal : Goal
{
  Mob *mMob;
  TempEPtr<Actor> mTarget;
  int mAttackTime;
  float mSpeedModifier;
  bool mTrackTarget;
  bool mAttackOnce;
  bool mHasAttacked;
  Unique<Path> mPath;
  ActorCategory mAttackTypes;
  int mRandomStopInterval;
  float mReachMultiplier;
  int mTimeToRecalcPath;
  float mPathedTargetX;
  float mPathedTargetY;
  float mPathedTargetZ;
  float mFOV;
  bool mRequireCompletePath;
  DefinitionTrigger mOnAttacked;
};
# MingleGoal
 struct __cppobj __attribute__((aligned(8))) MingleGoal : MoveToPOIGoal
{
  int mCooldownTicks;
  int mCooldownTicksMax;
  int mMingleTicks;
  int mMingleTicksMax;
  int mAvailableTicks;
  int mAvailableTicksMax;
  int mSpeakInterval;
  ActorDefinitionIdentifier mDesiredPartnerType;
  float mMingleDistanceSquared;
};
# Monster
 struct __cppobj Monster : Mob
{
  ActorUniqueID mLastHurtByMobId;
};
# MoveToVillageGoal:992
 struct __attribute__((aligned(4))) MoveToVillageGoal:992
{
  __int8 baseclass_0[116];
  int mVillageSearchRangeBlocks;
  bool mReachedVillage;
};
# Minecart
 struct __cppobj Minecart : Actor
{
  bool mFlipped;
  std::string mName;
  MovementInterpolator mInterpolation;
  Actor *mLastRidingEntity;
  LoopingSoundHandle mBaseLoop;
  LoopingSoundHandle mRidingLoop;
  float mSmoothSpeed;
  std::unique_ptr<CompoundTag> mDisplayBlockSerId;
};
# MarketplaceSkinValidator
 struct MarketplaceSkinValidator
{
  __int8 gap0[1];
};
# MobEffectSubcomponent
 struct __cppobj MobEffectSubcomponent : OnHitSubcomponent
{
  std::vector<MobEffectInstance> mMobEffects;
};
# MultiplyValueAmplifier
 struct __cppobj __attribute__((aligned(8))) MultiplyValueAmplifier : Amplifier
{
  float mScalar;
};
# MapItem
 struct __cppobj MapItem : ComplexItem
{
  TextureAtlasItem m_uvTextureItem;
};
# MobPlacerItem
 struct __cppobj MobPlacerItem : Item
{
  ActorInfoRegistry *mActorInfoRegistry;
  const ActorResourceDefinitionGroup *mActorResourceGroup;
  TextureUVCoordinateSet m_uvNullEgg;
  TextureUVCoordinateSet m_uvEggMask;
  std::unordered_map<StringKey,const TextureUVCoordinateSet *> mUVTextureMap;
};
# MinecartItem
 struct __cppobj __attribute__((aligned(8))) MinecartItem : Item
{
  MinecartType mCartType;
};
# MedicineItem
 struct __cppobj MedicineItem : ChemistryItem
{
};
# MeleeWeaponEnchant
 struct __cppobj MeleeWeaponEnchant : Enchant
{
};
# MendingEnchant
 struct __cppobj MendingEnchant : Enchant
{
};
# MobEvent
 struct __attribute__((aligned(8))) MobEvent
{
  std::string mName;
  std::string mLocalizableName;
  bool mEnabled;
  bool mIsDefaultSet;
};
# MobSpawnInfo
 struct MobSpawnInfo
{
  __int8 gap0[1];
};
# MutateTransformationAttributes
 typedef WeightedBiomeAttributes<MutateBiomeTransformation> MutateTransformationAttributes;
# MonsterEggBlock
 struct __cppobj MonsterEggBlock : BlockLegacy
{
};
# MusicBlockActor
 struct __cppobj __attribute__((aligned(8))) MusicBlockActor : BlockActor:1608
{
  byte mNote;
  bool mOn;
};
# MushroomBlock
 struct __cppobj MushroomBlock : BushBlock
{
};
# MetalBlock
 struct __cppobj MetalBlock : BlockLegacy
{
};
# MobSpawnerBlock
 struct __cppobj MobSpawnerBlock : ActorBlock
{
};
# MelonBlock
 struct __cppobj MelonBlock : BlockLegacy
{
};
# MyceliumBlock
 struct __cppobj MyceliumBlock : BlockLegacy
{
};
# MagmaBlock
 struct __cppobj MagmaBlock : BlockLegacy
{
};
# MovingBlock
 struct __cppobj MovingBlock : ActorBlock
{
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader
 struct moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader
{
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t capacity;
  std::atomic<unsigned long> tail;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry *entries;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry **index;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexHeader *prev;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry
 struct moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer::BlockIndexEntry
{
  std::atomic<unsigned long> key;
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block *> value;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader
 struct moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader
{
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t size;
  std::atomic<unsigned long> front;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry *entries;
  void *prev;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry
 struct moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry
{
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::index_t base;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::Block *block;
};
# moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer
 struct __cppobj moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer : moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase
{
  std::atomic<moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexHeader *> blockIndex;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexSlotsUsed;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexSize;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::size_t pr_blockIndexFront;
  moodycamel::ConcurrentQueue<std::unique_ptr<LevelChunk,LevelChunkFinalDeleter>,moodycamel::ConcurrentQueueDefaultTraits>::ExplicitProducer::BlockIndexEntry *pr_blockIndexEntries;
  void *pr_blockIndexRaw;
};
# MainChunkSource
 struct __cppobj MainChunkSource : ChunkSource
{
  ChunkSourceLookupMap mChunkMap;
};
# MegaTreeFeature
 struct __cppobj __attribute__((aligned(8))) MegaTreeFeature : TreeFeature:288
{
  const int mBaseHeight;
  const int mHeightInterval;
  const int mTrunkType;
  const int mLeafType;
};
# MegaTreeFeature:416
 struct __cppobj MegaTreeFeature:416 : TreeFeature:288
{
  const int mBaseHeight;
  const int mHeightInterval;
  const int mTrunkType;
  const int mLeafType;
};
# MineshaftStart
 struct __cppobj MineshaftStart : StructureStart
{
};
# MineshaftRoom
 struct __cppobj MineshaftRoom : MineshaftPiece
{
  std::vector<BoundingBox> childEntranceBoxes;
};
# MineshaftCrossing
 struct __cppobj __attribute__((aligned(4))) MineshaftCrossing : MineshaftPiece
{
  int direction;
  bool isTwoFloored;
};
# MineshaftPiece
 struct __cppobj MineshaftPiece : StructurePiece
{
  MineshaftData metadata;
};
# MineshaftStairs
 struct __cppobj MineshaftStairs : MineshaftPiece
{
};
# MineshaftCorridor
 struct __cppobj MineshaftCorridor : MineshaftPiece
{
  bool hasRails;
  bool spiderCorridor;
  bool hasPlacedSpider;
  int numSections;
};
# MonumentBuilding
 struct __cppobj MonumentBuilding : OceanMonumentPiece
{
  std::vector<std::unique_ptr<OceanMonumentPiece>> mChildPieces;
  std::vector<std::shared_ptr<RoomDefinition>> mRoomGrid;
  Shared<RoomDefinition> mSourceRoom;
  Shared<RoomDefinition> mCoreRoom;
};
# MonumentRoomFitter
 struct MonumentRoomFitter
{
  int (**_vptr$MonumentRoomFitter)(void);
};
# MixerLayer<Biome *,Biome *,BiomeTemperatureCategory>
 struct __cppobj MixerLayer<Biome *,Biome *,BiomeTemperatureCategory> : Layer<Biome *>
{
  LayerPtr<Biome *> mFirstParent;
  std::tuple<std::shared_ptr<Layer<BiomeTemperatureCategory> > > mMoreParents;
};
# MixerLayer<Biome *,Biome *,BiomeTemperatureCategory>::ParentUnpacker
 typedef std::make_index_sequence<sizeof___(MoreParentTypes)>_0 MixerLayer<Biome *,Biome *,BiomeTemperatureCategory>::ParentUnpacker;
# MoveInput
 struct __attribute__((aligned(8))) MoveInput
{
  int (**_vptr$MoveInput)(void);
  Vec2 mMove;
  Vec2 mLookDelta;
  Vec3 mGazeDir;
  Vec3 mGazeDirDelta;
  Vec3 mDisplacement;
  Vec3 mDisplacementDelta;
  bool mSneaking;
  bool mSneakDown;
  bool mSprinting;
  bool mWantUp;
  bool mWantDown;
  bool mWantDownSlow;
  bool mWantUpSlow;
  bool mJumping;
  bool mAutoJumpingInWater;
  bool mAscendScaffolding;
  bool mDescendScaffolding;
  bool mSneakToggleDown;
};
# MoveInput:672
 struct __attribute__((packed)) __attribute__((aligned(4))) MoveInput:672
{
  int (**_vptr$MoveInput)(void);
  Vec2 mMove;
  Vec2 mLookDelta;
  Vec3 mGazeDir;
  Vec3 mGazeDirDelta;
  Vec3 mDisplacement;
  Vec3 mDisplacementDelta;
  bool mSneaking;
  bool mSneakDown;
  bool mSprinting;
  bool mWantUp;
  bool mWantDown;
  bool mWantDownSlow;
  bool mWantUpSlow;
  bool mJumping;
  bool mAutoJumpingInWater;
  bool mAscendScaffolding;
  bool mDescendScaffolding;
  bool mSneakToggleDown;
};
# MemoryMappedFileAccess
 struct __cppobj MemoryMappedFileAccess : IFileAccess
{
  MemoryMappedFileAccess::MemoryMappedFileReadAccess mReadInterface;
  MemoryMappedFileAccess::MemoryMappedFileWriteAccess mWriteInterface;
  std::unique_ptr<FileAccessTransforms> mTransforms;
  std::unordered_map<std::string,MemoryMappedFileAccess::StreamDetails> mStreams;
  Bedrock::Threading::Mutex mStreamsLock;
  std::list<MemoryMappedFileAccess::StreamHandle> mStreamHandles;
  Bedrock::Threading::Mutex mStreamHandlesLock;
  IFileAccess *mInner;
};
# MobEventCommand
 struct __cppobj __attribute__((aligned(8))) MobEventCommand : Command
{
  std::string mMobEventName;
  bool mValue;
  bool mValueWasSet;
};
# MeCommand
 struct __cppobj MeCommand : MessagingCommand
{
  CommandMessage mMessage;
};
# MessagingCommand
 struct __cppobj MessagingCommand : Command:240
{
  bool mRequireChatPerms;
  bool mRequireTellPerms;
};
# MobEffectDefinition
 struct MobEffectDefinition
{
  float mEffectRange;
  unsigned int mEffectId;
  int mEffectTime;
  ActorFilterGroup mEntityFilter;
};
# MoveTowardsTargetGoal:672
 struct __cppobj __attribute__((packed)) __attribute__((aligned(4))) MoveTowardsTargetGoal:672 : Goal
{
  TempEPtr<Actor> mTarget;
  Mob *mMob;
  float mSpeedModifier;
  float mWithin;
  Vec3 mWantedPosition;
};
# MoveDefinition
 struct __cppobj MoveDefinition : BehaviorDefinition
{
  std::string mDirectionToMove;
  std::string mDirectionToMoveId;
  std::string mSecondDirectionToMove;
  std::string mSecondDirectionToMoveId;
  int mNumberOfTicksToMove;
  std::string mNumberOfTicksToMoveId;
};
# MoveNode
 struct __cppobj MoveNode : BehaviorNode:480
{
  unsigned __int8 mDirectionToMove;
  unsigned __int8 mSecondDirectionToMove;
  int mNumTicksToMove;
  int mNumTicksMoved;
};
# MoveToDefinition
 struct __cppobj MoveToDefinition : BehaviorDefinition
{
  Vec3 mPosToMoveTo;
  std::string mPosToMoveToId;
  float mDistanceEpsilon;
  std::string mDistanceEpsilonId;
};
# MoveToNode
 struct __cppobj MoveToNode : BehaviorNode:480
{
  Vec3 mPosToMoveTo;
  bool mJumping;
  float mDistanceEpsilon;
};
# MaterialReducerInputContainerController
 struct __cppobj MaterialReducerInputContainerController : ContainerController:200
{
  bool mEnabled;
  std::unique_ptr<BlockReducer> mBlockReducer;
  std::unique_ptr<CraftableCompounds> mCraftableCompounds;
};
# MaterialReducerOutputContainerController
 struct __cppobj __attribute__((aligned(8))) MaterialReducerOutputContainerController : ContainerController:200
{
  bool mAllowed;
};
# MemoryMappedFileAccess::MemoryMappedFileReadAccess
 struct __cppobj MemoryMappedFileAccess::MemoryMappedFileReadAccess : IFileReadAccess
{
};
# MemoryMappedFileAccess::MemoryMappedFileWriteAccess
 struct __cppobj MemoryMappedFileAccess::MemoryMappedFileWriteAccess : IFileWriteAccess
{
};
# mce::MathUtility
 struct mce::MathUtility
{
  __int8 gap0[1];
};