public static FTTransform2 ReadFTransform2(long vAddv) => Mem.ReadMemory <FTTransform2>(vAddv);
/// <summary> /// Read FTTransform /// </summary> /// <param name="vAddv"></param> /// <returns></returns> public static FTTransform ReadFTTransform(long vAddv) => Mem.ReadMemory <FTTransform>(vAddv);
public static string GetEnemyState(PlayerData player) { var state = Mem.ReadMemory <int>(player.Address + 1920); switch (state) { case 8: return("Stand"); case 9: return("Walking"); case 11: return("Running"); case 16: case 17: case 19: return("Crouch"); case 32: case 33: case 35: return("Snake"); // Standing Jump case 72: case 73: case 75: return("Jumping"); case 264: case 272: case 273: case 288: case 265: case 329: return("Reloading"); case 137: case 144: case 145: case 160: case 649: case 1160: case 1161: case 1169: return("Firing"); case 4194304: return("Swimming"); case 131070: case 131071: case 131072: case 131073: case 131074: case 131075: return("Knocked"); // In Plane case 33554440: case 524296: case 1048584: return("Driving"); case 32784: return("Reviving"); case 16392: case 16393: case 16401: case 16416: case 16417: case 16457: case 16400: case 17401: case 17417: case 17424: case 17425: return("Throwing Bomb"); case 16777224: return("Climbing"); case 8200: return("Punching"); } return(string.Empty); }
/// <summary> /// Read View Matrix /// </summary> /// <param name="vAddv"></param> /// <returns></returns> public static D3DMatrix ReadViewMatrix(long vAddv) => Mem.ReadMemory <D3DMatrix>(vAddv);
private void InfoThread() { // offset int controllerOffset, posOffset, healthOffset, nameOffset, teamIDOffset, poseOffset, statusOffset; controllerOffset = 96; posOffset = 336; healthOffset = 2064; nameOffset = 1512; teamIDOffset = 1552; statusOffset = 868; poseOffset = 288; while (true) { // Read Basic Offset uWorlds = Mem.ReadMemory <int>(uWorld); uLevel = Mem.ReadMemory <int>(uWorlds + 32); gameInstance = Mem.ReadMemory <int>(uWorlds + 36); playerController = Mem.ReadMemory <int>(gameInstance + controllerOffset); playerCarry = Mem.ReadMemory <int>(playerController + 32); uMyObject = Mem.ReadMemory <int>(playerCarry + 792); //788 old value //uMyself = Mem.ReadMemory<int>(uLevel + 124); //uMyself = Mem.ReadMemory<int>(uMyself + 36); //uMyself = Mem.ReadMemory<int>(uMyself + 312); //uCamera = Mem.ReadMemory<int>(playerCarry + 804) + 832; //uCursor = playerCarry + 732; //myWorld = Mem.ReadMemory<int>(uMyObject + 312); //myObjectPos = Mem.ReadMemory<Vector3>(myWorld + posOffset); entityEntry = Mem.ReadMemory <int>(uLevel + 112); entityCount = Mem.ReadMemory <int>(uLevel + 120); //116 old value // Initilize Display Data DisplayData data = new DisplayData(viewWorld, uMyObject); List <PlayerData> playerList = new List <PlayerData>(); List <ItemData> itemList = new List <ItemData>(); List <VehicleData> vehicleList = new List <VehicleData>(); List <BoxData> boxList = new List <BoxData>(); List <GrenadeData> grenadeList = new List <GrenadeData>(); for (int i = 0; i < entityCount; i++) { long entityAddv = Mem.ReadMemory <int>(entityEntry + i * 4); long entityStruct = Mem.ReadMemory <int>(entityAddv + 16); string entityType = GameData.GetEntityType(gNames, entityStruct); if (Settings.PlayerESP) { // if entity is player if (GameData.IsPlayer(entityType)) { //Console.WriteLine(entityType); long playerWorld = Mem.ReadMemory <int>(entityAddv + 312); // read player info // dead player continue int status = Mem.ReadMemory <int>(playerWorld + statusOffset); if (status == 6) { continue; } // Enemy weapon var enemy_weapon = GameData.GetEntityType(gNames, Mem.ReadMemory <int>(Mem.ReadMemory <int>(entityAddv + 5124) + 16)); if (string.IsNullOrEmpty(enemy_weapon)) { enemy_weapon = "Fist"; } else { try { var enemy_weaponList = enemy_weapon.Split('_').ToList(); enemy_weapon = enemy_weaponList[2]; } catch { enemy_weapon = "Unknown"; } } Console.WriteLine(enemy_weapon); string name = Encoding.Unicode.GetString(Mem.ReadMemory(Mem.ReadMemory <int>(entityAddv + nameOffset), 32)); name = name.Substring(0, name.IndexOf('\0')); PlayerData playerData = new PlayerData { Type = entityType, Address = entityAddv, Position = Mem.ReadMemory <ShpVector3>(playerWorld + posOffset), Status = status, Pose = Mem.ReadMemory <int>(playerWorld + poseOffset), IsRobot = Mem.ReadMemory <int>(entityAddv + 692) == 0 ? true : false, Health = Mem.ReadMemory <float>(entityAddv + healthOffset), Name = name, TeamID = Mem.ReadMemory <int>(entityAddv + teamIDOffset), //IsTeam = isTeam }; if (playerData.Address == uMyObject || playerData.Address == uMyself) { myTeamID = playerData.TeamID; continue; } if (playerData.TeamID == myTeamID) { continue; } //Console.WriteLine(entityType); playerList.Add(playerData); continue; } } if (Settings.ItemESP) { // check if this entity is item Item item = GameData.GetItemType(entityType); if (item != Item.Useless) { // Read Item Info ItemData itemData = new ItemData { Name = item.GetDescription(), Position = Mem.ReadMemory <ShpVector3>(Mem.ReadMemory <int>(entityAddv + 312) + posOffset), Type = item }; itemList.Add(itemData); } // check if this entity is box if (GameData.IsBox(entityType)) { // Read Box Info long boxEntity = Mem.ReadMemory <int>(entityAddv + 312); BoxData boxData = new BoxData(); boxData.Position = Mem.ReadMemory <ShpVector3>(boxEntity + posOffset); boxList.Add(boxData); continue; } } if (Settings.VehicleESP) { Vehicle vehicle = GameData.GetVehicleType(entityType); if (vehicle != Vehicle.Unknown) { // Read Vehicle Info VehicleData vehicleData = new VehicleData { Position = Mem.ReadMemory <ShpVector3>(Mem.ReadMemory <int>(entityAddv + 312) + posOffset), Type = vehicle, Name = vehicle.GetDescription() }; vehicleList.Add(vehicleData); continue; } } // check if the entity is a grenade Grenade grenade = GameData.GetGrenadeType(entityType); if (grenade != Grenade.Unknown) { long grenadeEntity = Mem.ReadMemory <int>(entityAddv + 312); GrenadeData greData = new GrenadeData { Type = grenade, Position = Mem.ReadMemory <ShpVector3>(grenadeEntity + posOffset) }; grenadeList.Add(greData); } } data.Players = playerList.ToArray(); data.Items = itemList.ToArray(); data.Vehicles = vehicleList.ToArray(); data.Boxes = boxList.ToArray(); data.Grenades = grenadeList.ToArray(); espForm.UpdateData(data); aimbotForm.UpdateData(data); Thread.Sleep(10); } }