@@ -24,7 +24,7 @@ void OffsetInit::init2080() {
2424 ADD_OFFSET (" Actor::getActorFlag" , 0 );
2525 ADD_OFFSET (" Actor::isAlive" , 51 );
2626 ADD_OFFSET (" Actor::isValidTarget" , 57 );
27- ADD_OFFSET (" Player::getXuid" , 240 );
27+ ADD_OFFSET (" Player::getXuid" , 240 ); // likely wrong ?
2828
2929 // AutoSprint
3030 ADD_OFFSET (" Mob::setSprinting" , 154 ); // +
@@ -474,7 +474,7 @@ void OffsetInit::init2050() {
474474 ADD_OFFSET (" Actor::getActorFlag" , 0 );
475475 ADD_OFFSET (" Actor::isAlive" , 57 );
476476 ADD_OFFSET (" Actor::isValidTarget" , 65 );
477- ADD_OFFSET (" Player::getXuid" , 268 );
477+ ADD_OFFSET (" Player::getXuid" , 268 ); // unused
478478
479479 // AutoSprint
480480 ADD_OFFSET (" Mob::setSprinting" , 252 );
@@ -598,6 +598,151 @@ void OffsetInit::init2050() {
598598 ADD_OFFSET (" Level::getPlayerMap" , 0x1EA8 );
599599}
600600
601+ void OffsetInit::init2040 () {
602+ // getGamma, combo &
603+ Logger::debug (" [Offsets] Loading offsets for 1.20.4X" ); // quite some offsets are wrong
604+
605+ ADD_OFFSET (" MoveInputComponent::forward" , 0x0A );
606+ ADD_OFFSET (" MoveInputComponent::backward" , 0x0B );
607+ ADD_OFFSET (" MoveInputComponent::left" , 0x0C );
608+ ADD_OFFSET (" MoveInputComponent::right" , 0x0D );
609+ ADD_OFFSET (" MoveInputComponent::sneaking" , 0x20 );
610+ ADD_OFFSET (" MoveInputComponent::jumping" , 0x26 );
611+ ADD_OFFSET (" MoveInputComponent::sprinting" , 0x27 );
612+
613+ // Speed display
614+ ADD_OFFSET (" StateVectorComponent::pos" , 0x0 );
615+ ADD_OFFSET (" StateVectorComponent::posDelta" , 0x18 );
616+ ADD_OFFSET (" StateVectorComponent::posPrev" , 0x0C );
617+
618+ // Hitboxes and other
619+ ADD_OFFSET (" Actor::getActorFlag" , 0 );
620+ ADD_OFFSET (" Actor::isAlive" , 58 );
621+ ADD_OFFSET (" Actor::isValidTarget" , 66 );
622+ ADD_OFFSET (" Player::getXuid" , 396 );
623+
624+ // AutoSprint
625+ ADD_OFFSET (" Mob::setSprinting" , 175 );
626+
627+ ADD_OFFSET (" BlockSource::getBlock" , 2 ); // unused
628+
629+ // Armour HUD, Inventory HUD
630+ ADD_OFFSET (" Inventory::getItem" , 5 );
631+
632+ ADD_OFFSET (" ClientInstance::getBlockSource" , 26 );
633+ ADD_OFFSET (" ClientInstance::getLocalPlayer" , 27 );
634+ ADD_OFFSET (" ClientInstance::refocusMouse" , 307 ); // unused
635+ ADD_OFFSET (" ClientInstance::levelRenderer" , 0xE0 );
636+
637+ ADD_OFFSET (" ClientInstance::getFovX" , 0x6F8 );
638+ ADD_OFFSET (" ClientInstance::getFovY" , 0x70C );
639+ ADD_OFFSET (" ClientInstance::getPacketSender" , 0xF0 );
640+
641+ ADD_OFFSET (" Packet::getId" , 1 );
642+ ADD_OFFSET (" Packet::getName" , 2 ); // unused
643+
644+ ADD_OFFSET (" createMaterial" , 1 ); // unused
645+
646+ ADD_OFFSET (" Actor::hurtTime" , 0x204 );
647+ ADD_OFFSET (" Actor::level" , 0x260 );
648+ ADD_OFFSET (" Actor::categories" , 0x298 );
649+ ADD_OFFSET (" Actor::actorRotationComponent" , 0x2B0 );
650+ ADD_OFFSET (" Actor::aabb" , 0x2A8 );
651+ ADD_OFFSET (" Actor::stateVector" , 0x2A0 );
652+ ADD_OFFSET (" Actor::rotations" , 0x2B0 );
653+ ADD_OFFSET (" Actor::wasHurt" , 0x20E );
654+ ADD_OFFSET (" Actor::baseTickVft" , 30 );
655+
656+ ADD_OFFSET (" Gamemode::player" , 0x8 );
657+ ADD_OFFSET (" Gamemode::lastBreakProgress" , 0x20 );
658+ ADD_OFFSET (" Gamemode::attackVft" , 14 );
659+
660+ ADD_OFFSET (" Mob::mobHurtTimeComponent" , 0x608 );
661+
662+ ADD_OFFSET (" Player::playerInventory" , 0x7C0 );
663+ ADD_OFFSET (" Player::playerName" , 0x1CB8 );
664+ ADD_OFFSET (" Player::gamemode" , 0xEB0 );
665+
666+ ADD_OFFSET (" BlockSource::dimension" , 0x30 );
667+
668+ ADD_OFFSET (" PlayerInventory::SelectedSlot" , 0x10 );
669+ ADD_OFFSET (" PlayerInventory::inventory" , 0xC0 );
670+
671+ ADD_OFFSET (" Camera::viewMatrix" , 0xC0 );
672+ ADD_OFFSET (" Camera::projectionMatrix" , 0x100 );
673+
674+ ADD_OFFSET (" ClientHMDState::lastLevelProjMatrix" , 0x148 );
675+
676+ ADD_OFFSET (" ClientInstance::minecraftGame" , 0xC8 );
677+ ADD_OFFSET (" ClientInstance::guiData" , 0x560 );
678+ ADD_OFFSET (" ClientInstance::camera" , 0x270 );
679+ ADD_OFFSET (" ClientInstance::Matrix1" , 0x330 );
680+ ADD_OFFSET (" ClientInstance::clientHMDState" , 0x5B0 );
681+
682+ ADD_OFFSET (" Minecraft::timer" , 0x00D8 );
683+
684+ ADD_OFFSET (" MinecraftGame::mouseGrabbed" , 0x190 );
685+
686+ ADD_OFFSET (" Option::optionInformation" , 0x8 );
687+ ADD_OFFSET (" Option::value" , 0x10 );
688+ ADD_OFFSET (" Option::value1" , 0x70 );
689+ ADD_OFFSET (" OptionInfo::TranslateName" , 0x158 );
690+
691+ ADD_OFFSET (" Item::AtlasTextureFile" , 0x8 );
692+ ADD_OFFSET (" Item::Namespace" , 0xF8 );
693+ ADD_OFFSET (" Item::name" ,0xD0 );
694+
695+ ADD_OFFSET (" ItemStack::tag" , 0x10 );
696+ ADD_OFFSET (" ItemStack::count" , 0x20 );
697+
698+ ADD_OFFSET (" Biome::temparature" , 0x40 );
699+
700+ ADD_OFFSET (" Dimension::weather" , 0x1A8 );
701+
702+ ADD_OFFSET (" Weather::lightingLevel" , 0x48 );
703+ ADD_OFFSET (" Weather::rainLevel" , 0x3C );
704+
705+ ADD_OFFSET (" LevelRendererPlayer::cameraPos" , 0x5E4 );
706+
707+ ADD_OFFSET (" LoopbackPacketSender::networkSystem" , 0x20 );
708+
709+ ADD_OFFSET (" NetworkSystem::remoteConnectorComposite" , 0x60 );
710+
711+ ADD_OFFSET (" RemoteConnectorComposite::rakNetConnector" , 0x60 );
712+
713+ ADD_OFFSET (" RaknetConnector::JoinedIp" , 0x438 );
714+ ADD_OFFSET (" RaknetConnector::getPeer" , 0x278 );
715+
716+ ADD_OFFSET (" BaseActorRenderContext::itemRenderer" , 0x58 );
717+
718+ ADD_OFFSET (" GuiData::ScreenSize" , 0x30 );
719+ ADD_OFFSET (" GuiData::ScreenSizeScaled" , 0x40 );
720+ ADD_OFFSET (" GuiData::GuiScale" , 0x4C );
721+ ADD_OFFSET (" GuiData::screenResRounded" , 0x38 );
722+ ADD_OFFSET (" GuiData::sliderAmount" , 0x4C );
723+ ADD_OFFSET (" GuiData::scalingMultiplier" , 0x50 );
724+
725+ ADD_OFFSET (" MinecraftUIRenderContext::clientInstance" , 0x8 );
726+ ADD_OFFSET (" MinecraftUIRenderContext::screenContext" , 0x10 );
727+
728+ ADD_OFFSET (" ScreenView::VisualTree" , 0x48 );
729+
730+ ADD_OFFSET (" MinecraftCustomUIRenderer::state" , 0x10 );
731+
732+ ADD_OFFSET (" CustomRenderComponent::renderer" , 0x18 );
733+
734+ ADD_OFFSET (" UIControl::LayerName" , 0x18 );
735+ ADD_OFFSET (" UIControl::scale" , 0x40 );
736+ ADD_OFFSET (" UIControl::x" , 0x78 );
737+ ADD_OFFSET (" UIControl::y" , 0x7C );
738+ ADD_OFFSET (" UIControl::children" , 0xA0 );
739+
740+ ADD_OFFSET (" VisualTree::root" , 0x8 );
741+
742+ ADD_OFFSET (" Level::hitResult" , 0xA68 );
743+ ADD_OFFSET (" Level::getPlayerMap" , 0x25F0 );
744+ };
745+
601746void OffsetInit::init2030 () {
602747 Logger::debug (" [Offsets] Loading offsets for 1.20.3X" ); // quite some offsets are wrong
603748
0 commit comments