void SetHealth(PlayerData player, int health) { int playerBase = Mem.ReadMultiLevelPointer(myProcess[0].MainModule.BaseAddress.ToInt32() + player.baseAddress, 4, player.multiLevel); Mem.WriteInt(playerBase - MainOffset + PlayerOffsets[0], health); Mem.WriteInt(playerBase - MainOffset + PlayerOffsets[7], health); }
private void TmrProcess_Tick(object sender, EventArgs e) { if (gameFound && !pro[0].HasExited) { GetCurrentData(); // AIMBOT - right mouse click if ((ProcessMemoryReaderApi.GetKeyState(02) & 0x8000) != 0) { Aimbot(); } // Client sided Health hack - (F5 Key) if ((ProcessMemoryReaderApi.GetKeyState(0x74) & 0x8000) != 0) { mem.WriteInt(player.pointerAddress + player.health, 999); } #region Teleporter // VK_F1 = 0x70, Save Current location as A if ((ProcessMemoryReaderApi.GetKeyState(0x70) & 0x8000) != 0) { SaveCoords(0); } // VK_F2 = 0x71, Save Current location as B if ((ProcessMemoryReaderApi.GetKeyState(0x71) & 0x8000) != 0) { SaveCoords(1); } // VK_F3 = 0x72, Load location A if ((ProcessMemoryReaderApi.GetKeyState(0x72) & 0x8000) != 0) { LoadCoords(0); } // VK_F4 = 0x73, Load location B if ((ProcessMemoryReaderApi.GetKeyState(0x73) & 0x8000) != 0) { LoadCoords(1); } #endregion }//if gamefound else { gameFound = false; btnAttach.BackColor = Color.FromArgb(220, 61, 65); // Red btnAttach.Enabled = true; } }
static private int off_rifle_ammo = 0x150; // Assault rifle ammo #endregion static public bool monitorMemoryValues(ProcessMemoryReader Mem) { int LocalPlayerAddress = Mem.ReadMultiLevelPointer(LocalPlayerBase, 4, LocalPlayerOff); int HealthValue = Mem.ReadInt(LocalPlayerAddress + off_health); int RiffleAmmoValue = Mem.ReadInt(LocalPlayerAddress + off_rifle_ammo); if ((HealthValue > 100) && (!Form1.detected)) { Mem.WriteInt(LocalPlayerAddress + off_health, 10); MessageBox.Show("Possible Cheat Detected"); return(true); } return(false); }
internal void hackAmmo(ProcessMemoryReader mem) { mem.WriteInt(base_addr + ammo_offset, 1000); // 탄약 1000으로... }
internal void hackHealth(ProcessMemoryReader mem) { mem.WriteInt(base_addr + health_offset, 1000); // 체력 1000으로... }
private void Step8Solve(int step8SturctAddress) { mem.WriteInt(step8SturctAddress + step8Data.offsets.health, 5000); }
private void Step2Solve(int structAddr) { mem.WriteInt(structAddr + step2Data.offsets.step2_health, 1000); //throw new NotImplementedException(); }
private void timer1_Tick(object sender, EventArgs e) { if (ProcessFound) { // Store entities memory addresses int LocalPlayerAddress = Mem.ReadMultiLevelPointer(LocalPlayerBase, 4, LocalPlayerOff); int Enemy1Address = Mem.ReadMultiLevelPointer(Enemy1Base, 4, Enemy1Off); // Read Local PLayer Values int HealthValue = Mem.ReadInt(LocalPlayerAddress + off_health); int RiffleAmmoValue = Mem.ReadInt(LocalPlayerAddress + off_rifle_ammo); // Read Enemy 1 Values int Enemy1HealthValue = Mem.ReadInt(Enemy1Address); float Enemy1XPosValue = Mem.ReadFloat(Enemy1Address - Enemy1XPos); float Enemy1YPosValue = Mem.ReadFloat(Enemy1Address - Enemy1YPos); float Enemy1ZPosValue = Mem.ReadFloat(Enemy1Address - Enemy1ZPos); // Local Player Lables Health.Text = "Health: " + HealthValue.ToString(); RiffleAmmo.Text = "Riffle Ammo: " + RiffleAmmoValue.ToString(); // Enemy 1 Lables enemy1_hp_lable.Text = "Enemy 1 HP: " + Enemy1HealthValue.ToString(); enemy1_xpos_lable.Text = "X-Pos: " + Enemy1XPosValue.ToString(); enemy1_ypos_lable.Text = "Y-Pos: " + Enemy1YPosValue.ToString(); enemy1_zpos_lable.Text = "Z-Pos: " + Enemy1ZPosValue.ToString(); if (RiffleAmmoValue < 5) { // Set Local Player Riffle Ammo to 20 if it less than 5 Mem.WriteInt(LocalPlayerAddress + off_rifle_ammo, 20); // Set Local Player HP to 1000 when ammo is less han 5 Mem.WriteInt(LocalPlayerAddress + off_health, 1000); } // Left mouse button pressed int pressedLeftMouse = ProcessMemoryReaderApi.GetKeyState(01); if ((pressedLeftMouse & 0x8000) != 0) { Mem.WriteInt(LocalPlayerAddress + off_fire, 1); // Remove Y-axin recoil when shooting float Ymouse_pos = Mem.ReadFloat(LocalPlayerAddress + off_Ymouse); Ymouse_pos -= 0.38f; Mem.WriteFloat(LocalPlayerAddress + off_Ymouse, Ymouse_pos); } else { Mem.WriteInt(LocalPlayerAddress + off_fire, 0); } // F1 button pressed int pressedF1 = ProcessMemoryReaderApi.GetKeyState(0x70); if ((pressedF1 & 0x8000) != 0) { Mem.WriteFloat(LocalPlayerAddress + off_XPos, Enemy1XPosValue); Mem.WriteFloat(LocalPlayerAddress + off_YPos, Enemy1YPosValue); Mem.WriteFloat(LocalPlayerAddress + off_ZPos, Enemy1ZPosValue); } } }
private void button1_Click(object sender, EventArgs e) { if (GameFound) { if (textBox1.Text != null) { int setTo = Convert.ToInt32(textBox1.Text); switch (labelActive) { case "health": Mem.WriteInt(playerBase + player.offsets.Health, setTo); Mem.WriteInt(playerBase + player.offsets.MaxHealth, setTo); break; case "mana": Mem.WriteInt(playerBase + player.offsets.Mana, setTo); Mem.WriteInt(playerBase + player.offsets.MaxMana, setTo); break; case "mslot1": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "mslot2": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "mslot3": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "mslot4": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "aslot1": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "aslot2": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "aslot3": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; case "aslot4": Mem.WriteInt(playerBase + player.offsets.amslot, setTo); break; } } } }