Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- y
- .o. o8o .o8 . .o8
- .888. `"' "888 .o8 "888
- .8"888. oooo ooo. .oo. .oo. 888oooo. .ooooo. .o888oo .oooo. ooo. .oo. .oooo888
- .8' `888. `888 `888P"Y88bP"Y88b d88' `88b d88' `88b 888 `P )88b `888P"Y88b d88' `888
- .88ooo8888. 888 888 888 888 888 888 888 888 888 .oP"888 888 888 888 888
- .8' `888. 888 888 888 888 888 888 888 888 888 . d8( 888 888 888 888 888
- o88o o8888o o888o o888o o888o o888o `Y8bod8P' `Y8bod8P' "888" `Y888""8o o888o o888o `Y8bod88P"
- oooooooooooo ooo ooooo .o8
- `888' `8 `88. .888' "888
- 888 .ooooo. oooo d8b .oooooooo .ooooo. 888b d'888 .ooooo. .oooo888 .ooooo.
- 888oooo8 d88' `88b `888""8P 888' `88b d88' `88b 8 Y88. .P 888 d88' `88b d88' `888 d88' `88b
- 888 " 888 888 888 888 888 888ooo888 8 `888' 888 888 888 888 888 888ooo888
- 888 888 888 888 `88bod8P' 888 .o 8 Y 888 888 888 888 888 888 .o
- o888o `Y8bod8P' d888b `8oooooo. `Y8bod8P' o8o o888o `Y8bod8P' `Y8bod88P" `Y8bod8P'
- d" YD
- "Y88888P'
- .o8 .oooooo. .oooooo..o oooooooooo. oooo oooo
- "888 d8P' `Y8b d8P' `Y8 `888' `Y8b `888 .8P'
- 888oooo. oooo ooo oooo ooo 888 Y88bo. 888 888 888 d8' oooo ooo
- d88' `88b `88. .8' `88b..8P' 888 `"Y8888o. 888oooo888' 88888[ `88b..8P'
- 888 888 `88..8' Y888' 888 `"Y88b 888 `88b 888`88b. Y888'
- 888 888 `888' .o8"'88b `88b ooo oo .d8P 888 .88P 888 `88b. .o8"'88b
- `Y8bod8P' .8' o88' 888o `Y8bood8P' 8""88888P' o888bood8P' o888o o888o o88' 888o
- .o..P'
- `Y8P'
- Black Ops 1:
- ENG:
- PLEASE READ!!!
- Hello Guys i finish my Aimbot and ForgeMode i worked about 3 Weeks on the Aimbot to make it best working. :)
- I will add MW2 ,BO2 and Ghost.
- IF YOU USING THIS CLASS OR THE FUNCTIONS GIVE CREDITS TO:
- xCSBKx: Making this class the Aimbot and the ForgeMode Function
- VezahModz: AnglestoForward Function
- iMCSx and Seb5594: Read+Write Functions
- Have Fun and enjoy using it. :)
- www.YouTube.com/GMTPS3
- peace out
- xCSBKx/Chris
- GER:
- ERST LESEN!!!
- Hallo Leute ich hab meinen Aimbot und ForgeMode endlich fertig bekommen ich hab an dem Aimbot 3 Wochen gearbeitet und ihn endlich fertig er läuft jetz so gut das ich ihn Releasen kann. :)
- Ich werde den Aimbot auch für MW2, BO2 and Ghosts.
- WENN DU DIESE KLASSE ODER DIE FUNKTIONEN NUTZEN WILLST DEN FOLGENDEN LEUTEN CREDITS:
- xCSBKx: Making this class the Aimbot and the ForgeMode Function
- VezahModz: AnglestoForward Function
- iMCSx and Seb5594: Read+Write Functions
- Wünsche euch viel Spaß. :)
- www.YouTube.com/GMTPS3
- mfg
- xCSBKx/Chris
- How to use:
- Aimbot:
- private void timer1_Tick(object sender, EventArgs e)
- {
- //Checks if player is aiming.
- //Guckt ob der Spieler ziehlt.
- if (Aimbot_and_ForgeMode.ReadFloat(0x110a5f8 + (Client * 0x3980)) > 0)
- Aimbot_and_ForgeMode.Aimbot(Client,Aimbot_and_ForgeMode.FindClosestEnemy(Client)
- }
- ForgeMode:
- private void timer1_Tick(object sender, EventArgs e)
- {
- //Checks if player is aiming.
- //Guckt ob der Spieler ziehlt.
- uint Enemy = Aimbot_and_ForgeMode.FindClosestEnemy(Client);
- //This is just only a way you can use Key_Down.
- //Das ist nur ein weg um es zu nutzen benutz am besten Key_Down.
- if (Aimbot_and_ForgeMode.ReadFloat(0x110a5f8 + ((uint)numericUpDown1.Value * 0x3980)) > 0)
- {
- RPC.Aimbot_and_ForgeMode.Freeze(Enemy, true);
- RPC.Aimbot_and_ForgeMode.ForgeMode(Client, Enemy);
- }
- else
- {
- RPC.Aimbot_and_ForgeMode.Freeze(Enemy, false);
- }
- }
- public static class Aimbot_and_ForgeMode
- {
- //If you using this class or the Functions give Credits to
- //xCSBKx: Making this class the Aimbot and the ForgeMode Function
- //VezahModz: AnglestoForward Function
- //iMCSx and Seb5594 Read+Write Function
- #region Read + Write
- //Read and return an Integer.
- //Liest und gibt eine Integer wieder.
- public static int ReadInt(uint Offset)
- {
- byte[] buffer = new byte[4];
- PS3.GetMemory(Offset, buffer);
- Array.Reverse(buffer);
- int Value = BitConverter.ToInt32(buffer, 0);
- return Value;
- }
- //Read and return 1 Byte.
- //Liest und gibt einen Byte wieder.
- public static byte ReadByte(uint Offset)
- {
- byte[] buffer = new byte[1];
- PS3.GetMemory(Offset, buffer);
- return buffer[0];
- }
- //Read and return an float value over Length.
- //Liest und gibt eine Float Value wieder über eine Länge wieder.
- public static float[] ReadFloatLength(uint Offset, int Length)
- {
- byte[] buffer = new byte[Length * 4];
- PS3.GetMemory(Offset, buffer);
- ReverseBytes(buffer);
- float[] Array = new float[Length];
- for (int i = 0; i < Length; i++)
- {
- Array[i] = BitConverter.ToSingle(buffer, (Length - 1 - i) * 4);
- }
- return Array;
- }
- //Write a Float Array in Memory.
- //Schreibt einen Float Array in den Memory.
- public static void WriteFloatArray(uint Offset, float[] Array)
- {
- byte[] buffer = new byte[Array.Length * 4];
- for (int Lenght = 0; Lenght < Array.Length; Lenght++)
- {
- ReverseBytes(BitConverter.GetBytes(Array[Lenght])).CopyTo(buffer, Lenght * 4);
- }
- PS3.SetMemory(Offset, buffer);
- }
- //Read and return an Float Value. (4 Bytes)
- //Liest und gibt eine Float Value wieder. (4 Bytes)
- public static float ReadFloat(uint Offset)
- {
- byte[] buffer = new byte[4];
- PS3.GetMemory(Offset, buffer);
- Array.Reverse(buffer, 0, 4);
- return BitConverter.ToSingle(buffer, 0);
- }
- #endregion
- //Freeze or unfreeze the selected Client.
- //Friert oder taut den Clienten ein oder auf.
- public static void Freeze(uint Client, bool State)
- {
- if (State == true)
- {
- PS3.SetMemory(0x013979BF + (Client * 0x2A38), new byte[] { 0x04 });
- }
- else
- {
- PS3.SetMemory(0x013979BF + (Client * 0x2A38), new byte[] { 0x00 });
- }
- }
- //Set Client View Angles to aim on Target
- //Setzs das Aiming vom Client auf die Position des Target
- public static void Aimbot(uint Client, uint Target)
- {
- #region Check if Dead
- //Checks if Target is Dead or Alive.
- //Guckt ob der Gegeners Tot oder Lebendig ist.
- if (ReadInt(0x012ab424 + (Target * 0x2F8)) > 0)
- {
- #region Stance
- //Displays the player's Status.
- //Zeigt den Status des Spielers an.
- byte StanceByte = ReadByte(0x013950D7 + (Target * 0x2A38));
- float Stance = 0;
- //if Target is crouch Stance = 21.
- //Wenn der Gegeners Hockt ist Stance = 21.
- if (StanceByte == 2)
- Stance = 21;
- //if Target is lie Stance = 47.
- //Wenn der Gegeners liegt ist Stance = 47.
- else if (StanceByte == 1)
- Stance = 47;
- //if Target is standing Stance = 0.
- //Wenn der Gegeners steht ist Stance = 0.
- else
- Stance = 0;
- #endregion
- #region Origin
- //Get the Origin of the Client.
- //Gibt die Position des Clienten an.
- float[] O1 = ReadFloatLength(0x013950ec + (Client * 0x2A38), 3);
- //Get the Origin of the Target.
- //Gibt die Position des Gegeners an.
- float[] O2 = ReadFloatLength(0x013950ec + (Target * 0x2A38), 3);
- //ZValue - Stance
- O2[2] = O2[2] - Stance;
- #endregion
- #region VectoAngles
- //Calculates the X angle and Y angle to give a direction.
- //Berechnet den X Winkel und den Y Winkel um eine Richtung anzugeben.
- //Source: http://www.java2s.com/Open-Source/Java/Game/Jake2-0.9.5/Jake2/util/Math3D.java.htm
- float[] value1 = new float[] { O2[0] - O1[0], O2[1] - O1[1], O2[2] - O1[2] };
- float yaw, pitch;
- float[] angles = new float[3];
- if ((value1[1] == 0f) && (value1[0] == 0f))
- {
- yaw = 0f;
- pitch = 0f;
- if (value1[2] > 0f)
- pitch = 90f;
- else
- pitch = 270f;
- }
- else
- {
- if (value1[0] != -1f)
- yaw = (float)((Math.Atan2(value1[1], value1[0]) * 180) / Math.PI);
- else if (value1[1] > 0f)
- yaw = 90f;
- else
- yaw = 270f;
- if (yaw < 0f)
- yaw += 360f;
- float forward = (float)Math.Sqrt(((value1[0] * value1[0]) + (value1[1] * value1[1])));
- pitch = (float)((Math.Atan2(value1[2], (double)forward) * 180.0) / Math.PI);
- if (pitch < 0f)
- pitch += 360f;
- }
- angles[0] = -pitch;
- angles[1] = yaw;
- angles[2] = 0;
- #endregion
- #region SetViewAngles
- //0x1767E0 - SetClientViewAngle(gentity_s *ent, const float *angle)
- //Writes the angles to 0x1000000.
- //Schreibt die Winkel auf 0x1000000.
- WriteFloatArray(0x10040000, angles);
- //Calls the SetClientViewAnlge and sets the Angles
- //Ruft die SetCleintView Angles function auf und setzt die Winkel
- RPC1.Call(0x2C1E38, 0x012ab290 + (Client * 0x2F8), 0x10040000);
- #endregion
- }
- #endregion
- }
- //Teleport the Target in the Client Crosshairs.
- //Teleportiert den Target in das Fadenkreuz des Clienten.
- //The distance is set by a Metric size(Meters).
- //3 Yard = 1 Meter (rounded)
- public static void ForgeMode(uint Client, uint Target, uint Distance_in_Meters)
- {
- #region Get Angles and Origion
- //Get the Angles of the Client.
- //Gibt die Sicht Winkel des Clienten an.
- float[] Angles = ReadFloatLength(0x01395248 + (Client * 0x2A38), 2);
- //Get the Origin of the Client.
- //Gibt die Position des Clienten an.
- float[] Origin = ReadFloatLength(0x013950ec + (Client * 0x2A38), 3);
- #endregion
- #region AnglestoForward
- //The Distance shows how far away the target is from the client.
- //Die Distance gibt an wie weit weg der Target vom Clienten ist.
- float diff = Distance_in_Meters * 40;
- //Calculates the Angles and th to give a direction.
- //Berechnet die anzugeben.
- //http://www.nextgenupdate.com/forums/playstation-3-elite/723550-c-anglestoforward-function.html
- float num = ((float)Math.Sin((Angles[0] * Math.PI) / 180)) * diff;
- float num1 = (float)Math.Sqrt(((diff * diff) - (num * num)));
- float num2 = ((float)Math.Sin((Angles[1] * Math.PI) / 180)) * num1;
- float num3 = ((float)Math.Cos((Angles[1] * Math.PI) / 180)) * num1;
- float[] forward = new float[] { Origin[0] + num3, Origin[1] + num2, Origin[2] - num };
- #endregion
- #region Set Target Origin
- Freeze(Target, true);
- WriteFloatArray(0x013950ec + (Target * 0x2A38), forward);
- #endregion
- }
- //Returns the Client who is closest to the Attacker.
- //Gibt den Clienten wieder der am nähsten zum Angreifer ist.
- public static float[] distances = new float[18];
- public static uint FindClosestEnemy(uint Attacker)
- {
- #region Check if Alive and Get Origin
- for (uint i = 0; i < 18; i++)
- {
- //Only if the Target is Alive it stores there distance.
- //Nur wenn der Target lebt wird seine Enferung zum Clienten angezeigt.
- if (ReadInt(0x012ab424 + (i * 0x2F8)) > 0)
- {
- #region Attacker Origin
- //Get the Origin of the Attacker.
- //Gibt die Position des Angreifers an.
- float[] O1 = ReadFloatLength(0x013950ec + ((uint)Attacker * 0x2A38), 3);
- #endregion
- #region Client Origin
- //Get the Origin of the Target.
- //Gibt die Position des Gegners an.
- float[] O2 = ReadFloatLength(0x013950ec + (i * 0x2A38), 3);
- #endregion
- #region Get Distance
- //Convertet the Origin from Client and Target and shows the Distance.
- //Convertiert die Position von Client und Target und gibt die Enferung an.
- distances[i] = (float)(Math.Sqrt(
- ((O2[0] - O1[0]) * (O2[0] - O1[0])) +
- ((O2[1] - O1[1]) * (O2[1] - O1[1])) +
- ((O2[2] - O1[2]) * (O2[2] - O1[2]))
- ));
- #endregion
- }
- else
- {
- #region Dead Players get Max Value
- //If the Client is Dead the Distance set to Max.
- //Wenn der Client Tod ist wird die Enfernung auf Max gesetzt.
- distances[i] = float.MaxValue;
- #endregion
- }
- }
- #endregion
- #region Copy Distances
- float[] newDistances = new float[18];
- Array.Copy(distances, newDistances, distances.Length);
- #endregion
- #region Sort Distances and return Client
- //Sorts the Distances from Small to Big
- //Sortiert die Enfernungen von Klein zu Groß
- Array.Sort(newDistances);
- //Array.Sort(distances);
- for (uint i = 0; i < 18; i++)
- {
- //Shows which Client is the closest (0 is the attacker)
- //Zeigt an welcher Client der nähste ist(0 ist der Angreifer)
- if (distances[i] == newDistances[1])
- //if (distances[i] == distances[1])
- {
- return i;
- }
- }
- #endregion
- #region Failed
- //If finding ClosestEnemey Function is Failed it returns -1 but never happend :P
- //Wenn die ClosestEnemy Funktion einen Fehler hat gibt sie -1 zurück das Passiert aber nie :P
- int Failed = -1;
- return (uint)Failed;
- #endregion
- }
- }
Add Comment
Please, Sign In to add comment