33#include " ../../../Logger/Logger.hpp"
44#include " ../SignatureAndOffsetManager.hpp"
55
6+ void OffsetInit::init2080 () {
7+ Logger::debug (" [Offsets] Loading offsets for 1.20.8X" );
8+
9+ // Keystrokes
10+ ADD_OFFSET (" MoveInputComponent::forward" , 0x0A );
11+ ADD_OFFSET (" MoveInputComponent::backward" , 0x0B );
12+ ADD_OFFSET (" MoveInputComponent::left" , 0x0C );
13+ ADD_OFFSET (" MoveInputComponent::right" , 0x0D );
14+ ADD_OFFSET (" MoveInputComponent::sneaking" , 0x20 );
15+ ADD_OFFSET (" MoveInputComponent::jumping" , 0x26 );
16+ ADD_OFFSET (" MoveInputComponent::sprinting" , 0x27 );
17+
18+ // Speed display
19+ ADD_OFFSET (" StateVectorComponent::pos" , 0x0 );
20+ ADD_OFFSET (" StateVectorComponent::posDelta" , 0x18 );
21+ ADD_OFFSET (" StateVectorComponent::posPrev" , 0x0C );
22+
23+ // Hitboxes and other +/- 1
24+ ADD_OFFSET (" Actor::getActorFlag" , 0 );
25+ ADD_OFFSET (" Actor::isAlive" , 51 );
26+ ADD_OFFSET (" Actor::isValidTarget" , 57 );
27+ ADD_OFFSET (" Player::getXuid" , 240 );
28+
29+ // AutoSprint
30+ ADD_OFFSET (" Mob::setSprinting" , 154 ); // +
31+
32+ ADD_OFFSET (" BlockSource::getBlock" , 2 ); // unused
33+
34+ // Armour HUD, Inventory HUD
35+ ADD_OFFSET (" Inventory::getItem" , 5 );
36+
37+ ADD_OFFSET (" ClientInstance::getBlockSource" , 28 );
38+ ADD_OFFSET (" ClientInstance::getLocalPlayer" , 29 );
39+ ADD_OFFSET (" ClientInstance::refocusMouse" , 333 ); // unused
40+ ADD_OFFSET (" ClientInstance::levelRenderer" , 0xE0 ); // unused
41+
42+ ADD_OFFSET (" Packet::getId" , 1 );
43+ ADD_OFFSET (" Packet::getName" , 2 ); // unused
44+
45+ ADD_OFFSET (" createMaterial" , 1 ); // unused
46+
47+ // ADD_OFFSET("Actor::bobOffset", 0x258);
48+ // ADD_OFFSET("Actor::Age", 0x98); 1F0
49+ ADD_OFFSET (" Actor::hurtTime" , 0x214 ); // ?hurtEffects@Mob@@UEAAXAEBVActorDamageSource@@M_N1@Z Mob::hurtEffects 2nd after Actor::getHealth(void)
50+ ADD_OFFSET (" Actor::level" , 0x258 );
51+ ADD_OFFSET (" Actor::categories" , 0x290 );
52+ ADD_OFFSET (" Actor::actorRotationComponent" , 0x2A8 );
53+ ADD_OFFSET (" Actor::aabb" , 0x2A0 );
54+ ADD_OFFSET (" Actor::stateVector" , 0x298 );
55+ ADD_OFFSET (" Actor::rotations" , 0x2A8 );
56+ ADD_OFFSET (" Actor::wasHurt" , 0x21E ); // +
57+ ADD_OFFSET (" Actor::baseTickVft" , 26 ); // +
58+
59+ ADD_OFFSET (" Gamemode::player" , 0x8 );
60+ ADD_OFFSET (" Gamemode::lastBreakProgress" , 0x20 );
61+ ADD_OFFSET (" Gamemode::attackVft" , 14 );
62+
63+ ADD_OFFSET (" Mob::mobHurtTimeComponent" , 0x610 ); // unused
64+
65+ ADD_OFFSET (" Player::playerInventory" , 0x788 ); // +
66+ ADD_OFFSET (" Player::playerName" , 0x1D18 ); // +
67+ ADD_OFFSET (" Player::gamemode" , 0xEB0 ); // +
68+
69+ ADD_OFFSET (" BlockSource::dimension" , 0x30 );
70+
71+ ADD_OFFSET (" PlayerInventory::SelectedSlot" , 0x10 );
72+ ADD_OFFSET (" PlayerInventory::inventory" , 0xC0 );
73+
74+ ADD_OFFSET (" Camera::viewMatrix" , 0xC0 );
75+ ADD_OFFSET (" Camera::projectionMatrix" , 0x100 );
76+
77+ ADD_OFFSET (" ClientHMDState::lastLevelProjMatrix" , 0x148 );
78+
79+ ADD_OFFSET (" ClientInstance::minecraftGame" , 0xC8 );
80+ ADD_OFFSET (" ClientInstance::guiData" , 0x558 );
81+ ADD_OFFSET (" ClientInstance::camera" , 0x270 );
82+ ADD_OFFSET (" ClientInstance::Matrix1" , 0x330 );
83+ ADD_OFFSET (" ClientInstance::clientHMDState" , 0x5A8 ); // unused
84+
85+ ADD_OFFSET (" ClientInstance::getFovX" , 0x6F0 );
86+ ADD_OFFSET (" ClientInstance::getFovY" , 0x704 );
87+ ADD_OFFSET (" ClientInstance::getPacketSender" , 0xF0 );
88+
89+ ADD_OFFSET (" Minecraft::timer" , 0x00D8 );
90+
91+ ADD_OFFSET (" MinecraftGame::mouseGrabbed" , 0x1A8 );
92+
93+ ADD_OFFSET (" Option::optionInformation" , 0x8 );
94+ ADD_OFFSET (" Option::value" , 0x10 );
95+ ADD_OFFSET (" Option::value1" , 0x70 );
96+ ADD_OFFSET (" OptionInfo::TranslateName" , 0x158 );
97+
98+ ADD_OFFSET (" Item::AtlasTextureFile" , 0x8 );
99+ ADD_OFFSET (" Item::Namespace" , 0xF8 );
100+ ADD_OFFSET (" Item::name" ,0xD0 );
101+
102+ ADD_OFFSET (" ItemStack::tag" , 0x10 );
103+ ADD_OFFSET (" ItemStack::count" , 0x22 );
104+
105+ ADD_OFFSET (" Biome::temparature" , 0x38 ); // +
106+
107+ ADD_OFFSET (" Dimension::weather" , 0x1B0 ); // +
108+
109+ ADD_OFFSET (" Weather::lightingLevel" , 0x44 ); // +
110+ ADD_OFFSET (" Weather::rainLevel" , 0x3C ); // +
111+
112+ ADD_OFFSET (" LevelRendererPlayer::cameraPos" , 0x5FC );
113+
114+ ADD_OFFSET (" LoopbackPacketSender::networkSystem" , 0x20 );
115+
116+ ADD_OFFSET (" NetworkSystem::remoteConnectorComposite" , 0x80 );
117+
118+ ADD_OFFSET (" RemoteConnectorComposite::rakNetConnector" , 0x60 );
119+
120+ ADD_OFFSET (" RaknetConnector::JoinedIp" , 0x458 ); // +
121+ ADD_OFFSET (" RaknetConnector::getPeer" , 0x298 ); // + (MarioSQ)
122+
123+ // ADD_OFFSET("RakPeer::NumberOfConnections", 10); // `vtable for'RakNet::RakPeer in linux bds
124+ // ADD_OFFSET("RakPeer::GetSystemAddressFromIndex", 33);
125+ // ADD_OFFSET("RakPeer::GetGUIDFromIndex", 31);
126+ // ADD_OFFSET("RakPeer::GetAveragePing", 41);
127+ // ADD_OFFSET("RakPeer::GetLastPing", 42);
128+
129+ ADD_OFFSET (" BaseActorRenderContext::itemRenderer" , 0x58 );
130+
131+ ADD_OFFSET (" GuiData::ScreenSize" , 0x0030 );
132+ ADD_OFFSET (" GuiData::ScreenSizeScaled" , 0x0040 );
133+ ADD_OFFSET (" GuiData::GuiScale" , 0x004C );
134+ ADD_OFFSET (" GuiData::screenResRounded" , 0x0038 );
135+ ADD_OFFSET (" GuiData::sliderAmount" , 0x004C );
136+ ADD_OFFSET (" GuiData::scalingMultiplier" , 0x0050 );
137+
138+ ADD_OFFSET (" MinecraftUIRenderContext::clientInstance" , 0x8 );
139+ ADD_OFFSET (" MinecraftUIRenderContext::screenContext" , 0x10 );
140+
141+ ADD_OFFSET (" ScreenView::VisualTree" , 0x48 );
142+
143+ ADD_OFFSET (" MinecraftCustomUIRenderer::state" , 0x10 );
144+
145+ ADD_OFFSET (" CustomRenderComponent::renderer" , 0x18 );
146+
147+ ADD_OFFSET (" UIControl::LayerName" , 0x18 );
148+ ADD_OFFSET (" UIControl::scale" , 0x40 );
149+ ADD_OFFSET (" UIControl::x" , 0x78 );
150+ ADD_OFFSET (" UIControl::y" , 0x7C );
151+ ADD_OFFSET (" UIControl::children" , 0xA0 );
152+
153+ ADD_OFFSET (" VisualTree::root" , 0x8 );
154+
155+ ADD_OFFSET (" Level::hitResult" , 0xB30 ); // +
156+ ADD_OFFSET (" Level::getPlayerMap" , 0x1C88 ); // +
157+ }
158+
6159void OffsetInit::init2070 () {
7160 Logger::debug (" [Offsets] Loading offsets for 1.20.7X" );
8161
@@ -23,9 +176,8 @@ void OffsetInit::init2070() {
23176 // Hitboxes and other
24177 ADD_OFFSET (" Actor::getActorFlag" , 0 );
25178 ADD_OFFSET (" Actor::isAlive" , 53 );
26- ADD_OFFSET (" Actor::isPlayer" , 58 );
27179 ADD_OFFSET (" Actor::isValidTarget" , 61 );
28- ADD_OFFSET (" Actor ::getXuid" , 253 );
180+ ADD_OFFSET (" Player ::getXuid" , 247 );
29181
30182 // AutoSprint
31183 ADD_OFFSET (" Mob::setSprinting" , 159 );
@@ -45,6 +197,8 @@ void OffsetInit::init2070() {
45197
46198 ADD_OFFSET (" createMaterial" , 1 ); // unused
47199
200+ ADD_OFFSET (" Actor::bobOffset" , 0x258 );
201+ ADD_OFFSET (" Actor::Age" , 0x98 );
48202 ADD_OFFSET (" Actor::hurtTime" , 0x214 ); // ?hurtEffects@Mob@@UEAAXAEBVActorDamageSource@@M_N1@Z Mob::hurtEffects 2nd after Actor::getHealth(void)
49203 ADD_OFFSET (" Actor::level" , 0x258 );
50204 ADD_OFFSET (" Actor::categories" , 0x290 );
@@ -119,11 +273,11 @@ void OffsetInit::init2070() {
119273 ADD_OFFSET (" RaknetConnector::JoinedIp" , 0x438 );
120274 ADD_OFFSET (" RaknetConnector::getPeer" , 0x278 );
121275
122- ADD_OFFSET (" RakPeer::NumberOfConnections" , 10 ); // `vtable for'RakNet::RakPeer in linux bds
123- ADD_OFFSET (" RakPeer::GetSystemAddressFromIndex" , 33 );
124- ADD_OFFSET (" RakPeer::GetGUIDFromIndex" , 31 );
125- ADD_OFFSET (" RakPeer::GetAveragePing" , 41 );
126- ADD_OFFSET (" RakPeer::GetLastPing" , 42 );
276+ // ADD_OFFSET("RakPeer::NumberOfConnections", 10); // `vtable for'RakNet::RakPeer in linux bds
277+ // ADD_OFFSET("RakPeer::GetSystemAddressFromIndex", 33);
278+ // ADD_OFFSET("RakPeer::GetGUIDFromIndex", 31);
279+ // ADD_OFFSET("RakPeer::GetAveragePing", 41);
280+ // ADD_OFFSET("RakPeer::GetLastPing", 42);
127281
128282 ADD_OFFSET (" BaseActorRenderContext::itemRenderer" , 0x58 );
129283
@@ -175,9 +329,8 @@ void OffsetInit::init2060() {
175329 // Hitboxes and other
176330 ADD_OFFSET (" Actor::getActorFlag" , 0 );
177331 ADD_OFFSET (" Actor::isAlive" , 54 );
178- ADD_OFFSET (" Actor::isPlayer" , 59 );
179332 ADD_OFFSET (" Actor::isValidTarget" , 62 );
180- ADD_OFFSET (" Actor ::getXuid" , 260 );
333+ ADD_OFFSET (" Player ::getXuid" , 260 );
181334
182335 // AutoSprint
183336 ADD_OFFSET (" Mob::setSprinting" , 165 );
@@ -320,9 +473,8 @@ void OffsetInit::init2050() {
320473 // Hitboxes and other
321474 ADD_OFFSET (" Actor::getActorFlag" , 0 );
322475 ADD_OFFSET (" Actor::isAlive" , 57 );
323- ADD_OFFSET (" Actor::isPlayer" , 62 );
324476 ADD_OFFSET (" Actor::isValidTarget" , 65 );
325- ADD_OFFSET (" Actor ::getXuid" , 268 );
477+ ADD_OFFSET (" Player ::getXuid" , 268 );
326478
327479 // AutoSprint
328480 ADD_OFFSET (" Mob::setSprinting" , 252 );
@@ -465,9 +617,8 @@ void OffsetInit::init2030() {
465617 // Hitboxes and other
466618 ADD_OFFSET (" Actor::getActorFlag" , 0 );
467619 ADD_OFFSET (" Actor::isAlive" , 89 );
468- ADD_OFFSET (" Actor::isPlayer" , 97 );
469620 ADD_OFFSET (" Actor::isValidTarget" , 65 );
470- ADD_OFFSET (" Actor ::getXuid" , 396 );
621+ ADD_OFFSET (" Player ::getXuid" , 396 );
471622
472623 // AutoSprint
473624 ADD_OFFSET (" Mob::setSprinting" , 252 );
0 commit comments