Post: [C#/Source] Fair Aimbot
04-15-2014, 10:58 PM #1
Sticky
Mary J Wannnnna
(adsbygoogle = window.adsbygoogle || []).push({}); This aimbot is for Ghosts 1.10

Hopefully people will stop begging for aimbot scripts now, I think it has been private for long enough Happy

I am using iMCSx's PS3Lib.

    using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PS3Lib;

namespace Ghosts_1._10_Aimbot
{
class Aimbot
{
public static PS3API PS3 = new PS3API();
public class Offsets
{
public static uint
g_client = 0x00F44480,
clientSize = 0x3700,
g_entity = 0x00E04480,
entitySize = 0x280,
setClientViewAngles = 0x0022F8C0;
}
public static float[] ReadSingle(uint address, int length)
{
byte[] memory = PS3.Extension.ReadBytes(address, length * 4);
ReverseBytes(memory);
float[] numArray = new float[length];
for (int index = 0; index < length; ++index)
numArray[index] = BitConverter.ToSingle(memory, (length - 1 - index) * 4);
return numArray;
}
public static void WriteSingle(UInt32 address, float[] input)
{
Int32 length = input.Length;
Byte[] array = new Byte[length * 4];
for (Int32 i = 0; i < length; i++)
{
ReverseBytes(BitConverter.GetBytes(input[i])).CopyTo(array, (Int32)(i * 4));
}
PS3.SetMemory(address, array);
}

public static byte[] ReverseBytes(Byte[] toReverse)
{
Array.Reverse(toReverse);
return toReverse;
}
public static uint G_Client(int client)
{
return Offsets.g_client + (Offsets.clientSize * (uint)client);
}
public static uint G_Entity(int client)
{
return Offsets.g_entity + (Offsets.entitySize * (uint)client);
}
public static float[] getOrigin(int client)
{
return ReadSingle(G_Client(client) + 0x1C, 3);
}
public static float[] vectoangles(float[] Angles)
{
float num2;
float num3;
float[] numArray = new float[3];
if ((Angles[1] == 0f) && (Angles[0] == 0f))
{
num2 = 0f;
if (Angles[2] > 0f)
{
num3 = 90f;
}
else
{
num3 = 270f;
}
}
else
{
if (Angles[0] != -1f)
{
num2 = (float)((Math.Atan2((double)Angles[1], (double)Angles[0]) * 180.0) / 3.1415926535897931);
}
else if (Angles[1] > 0f)
{
num2 = 90f;
}
else
{
num2 = 270f;
}
if (num2 < 0f)
{
num2 += 360f;
}
float num = (float)Math.Sqrt((double)((Angles[0] * Angles[0]) + (Angles[1] * Angles[1])));
num3 = (float)((Math.Atan2((double)Angles[2], (double)num) * 180.0) / 3.1415926535897931);
if (num3 < 0f)
{
num3 += 360f;
}
}
numArray[0] = -num3;
numArray[1] = num2;
return numArray;
}
public static float[] getVector(int shooter, int victim)
{
float[] numArray = getOrigin(shooter);
float[] numArray2 = getOrigin(victim);
return new float[] { (numArray2[0] - numArray[0]), (numArray2[1] - numArray[1]), (numArray2[2] - numArray[2]) };
}
public static int nearestPlayer(int shooter)
{
int victim = -1;
float closest = float.MaxValue;
for (int i = 0; i < 12; i++)
{
float XYZ = getOrigin(shooter)[0] - getOrigin(i)[0];
float distance = (float)Math.Sqrt(XYZ * XYZ);
if ((i != shooter))
{
if (distance < closest)
{
victim = i;
closest = distance;
}
}
}
return victim;
}
public static void setClientViewAngles(int client)
{
int victim = nearestPlayer(client);
float[] angles = vectoangles(getVector(client, victim));
WriteSingle(0x10004000, angles);
RPC.Call(Offsets.setClientViewAngles, new object[] { G_Entity(client), 0x10004000, angles });
}
}
}


I DO NOT GIVE PERMISSION FOR THIS TO BE POSTED ANYWHERE ELSE :troll:

Credits:
Me - Coding it
Quake 3- vectoangles You must login or register to view this content.
seb5594 - ReadSingle/WriteSingle
(adsbygoogle = window.adsbygoogle || []).push({});

The following 18 users say thank you to Sticky for this useful post:

Asian, Azus, COD4_ELEVATOR, coreconfusion, eliteking69, EnVatoHD, ImPokerz, iNDMx, KL9, Mango_Knife, Notorious, rodrigovidal, Sweaty Sack, ThePaaqoHD, WeJailbreakYou, Fatality, xHostModer, xSlinkeyy
04-15-2014, 11:00 PM #2
xSlinkeyy
Pokemon Trainer
Nice!
04-16-2014, 01:15 AM #3
SC58
Former Staff
Originally posted by Sticky View Post
This aimbot is for Ghosts 1.10

Hopefully people will stop begging for aimbot scripts now, I think it has been private for long enough Happy

I am using iMCSx's PS3Lib.

    using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PS3Lib;

namespace Ghosts_1._10_Aimbot
{
class Aimbot
{
public static PS3API PS3 = new PS3API();
public class Offsets
{
public static uint
g_client = 0x00F44480,
clientSize = 0x3700,
g_entity = 0x00E04480,
entitySize = 0x280,
setClientViewAngles = 0x0022F8C0;
}
public static float[] ReadSingle(uint address, int length)
{
byte[] memory = PS3.Extension.ReadBytes(address, length * 4);
ReverseBytes(memory);
float[] numArray = new float[length];
for (int index = 0; index < length; ++index)
numArray[index] = BitConverter.ToSingle(memory, (length - 1 - index) * 4);
return numArray;
}
public static void WriteSingle(UInt32 address, float[] input)
{
Int32 length = input.Length;
Byte[] array = new Byte[length * 4];
for (Int32 i = 0; i < length; i++)
{
ReverseBytes(BitConverter.GetBytes(input[i])).CopyTo(array, (Int32)(i * 4));
}
PS3.SetMemory(address, array);
}

public static byte[] ReverseBytes(Byte[] toReverse)
{
Array.Reverse(toReverse);
return toReverse;
}
public static uint G_Client(int client)
{
return Offsets.g_client + (Offsets.clientSize * (uint)client);
}
public static uint G_Entity(int client)
{
return Offsets.g_entity + (Offsets.entitySize * (uint)client);
}
public static float[] getOrigin(int client)
{
return ReadSingle(G_Client(client) + 0x1C, 3);
}
public static float[] vectoangles(float[] Angles)
{
float num2;
float num3;
float[] numArray = new float[3];
if ((Angles[1] == 0f) && (Angles[0] == 0f))
{
num2 = 0f;
if (Angles[2] > 0f)
{
num3 = 90f;
}
else
{
num3 = 270f;
}
}
else
{
if (Angles[0] != -1f)
{
num2 = (float)((Math.Atan2((double)Angles[1], (double)Angles[0]) * 180.0) / 3.1415926535897931);
}
else if (Angles[1] > 0f)
{
num2 = 90f;
}
else
{
num2 = 270f;
}
if (num2 < 0f)
{
num2 += 360f;
}
float num = (float)Math.Sqrt((double)((Angles[0] * Angles[0]) + (Angles[1] * Angles[1])));
num3 = (float)((Math.Atan2((double)Angles[2], (double)num) * 180.0) / 3.1415926535897931);
if (num3 < 0f)
{
num3 += 360f;
}
}
numArray[0] = -num3;
numArray[1] = num2;
return numArray;
}
public static float[] getVector(int shooter, int victim)
{
float[] numArray = getOrigin(shooter);
float[] numArray2 = getOrigin(victim);
return new float[] { (numArray2[0] - numArray[0]), (numArray2[1] - numArray[1]), (numArray2[2] - numArray[2]) };
}
public static int nearestPlayer(int shooter)
{
int victim = -1;
float closest = float.MaxValue;
for (int i = 0; i < 12; i++)
{
float XYZ = getOrigin(shooter)[0] - getOrigin(i)[0];
float distance = (float)Math.Sqrt(XYZ * XYZ);
if ((i != shooter))
{
if (distance < closest)
{
victim = i;
closest = distance;
}
}
}
return victim;
}
public static void setClientViewAngles(int client)
{
int victim = nearestPlayer(client);
float[] angles = vectoangles(getVector(client, victim));
WriteSingle(0x10004000, angles);
RPC.Call(Offsets.setClientViewAngles, new object[] { G_Entity(client), 0x10004000, angles });
}
}
}


I DO NOT GIVE PERMISSION FOR THIS TO BE POSTED ANYWHERE ELSE :troll:

Credits:
Me - Coding it
Quake 3- vectoangles You must login or register to view this content.
seb5594 - ReadSingle/WriteSingle


The Quake Source is really helpful if you dont know how to use some things
04-16-2014, 01:17 AM #4
i already had 1 made but any ways nice thread Happy
04-16-2014, 01:25 AM #5
Sticky
Mary J Wannnnna
Originally posted by SC58 View Post
The Quake Source is really helpful if you dont know how to use some things


yes it is Smile
04-16-2014, 03:44 AM #6
Not to bash your thread, but I got some doubts on this. I hope this doesn't like get bad between us, but fuck it lol.

This vectoangles function does not look like the original code, looks like someone decompiled it from somewhere using Reflector or something because it has all these num's as floats numArray's... like who the fuck names there shit like that, I know reflector changes the names to that when the string can't be decompiled. This also goes to the getVector, WriteSingle, ReadSingle...

The following 9 users say thank you to Red-EyeX32 for this useful post:

br0wniiez, ErasedDev, FusionIsDaName, iNDMx, ItsLollo1000, ThePaaqoHD, VezahMoDz, xZitronenMoDz
04-16-2014, 05:54 AM #7
SC58
Former Staff
Originally posted by EyeX32 View Post
Not to bash your thread, but I got some doubts on this. I hope this doesn't like get bad between us, but fuck it lol.

This vectoangles function does not look like the original code, looks like someone decompiled it from somewhere using Reflector or something because it has all these num's as floats numArray's... like who the fuck names there shit like that, I know reflector changes the names to that when the string can't be decompiled. This also goes to the getVector, WriteSingle, ReadSingle...


Yea not to be a dick aswell but i heard its from sebs tool or somthing.. but idk and idc as i have no use for this anyways lol
04-16-2014, 06:01 AM #8
This looks alot like mine...

    
#include "data.h"
#include "mod.h"

int closestClient(int clientIndex)
{
Mod client(clientIndex);
int cl;
float flt = 3.4 * (10^3Cool Man (aka Tustin);//149.6
for(int i = 0; i < (strstr(Dvar_GetString("g_gametype"),"ffa") ? 0x7 : 0xC)/*Declare Dvar_GetString yourself*/; i++)
{
Mod lol(i);
if(!lol.Alive() || i == hostIndex || data().ReadInt32(lol.playerState() + 0x28F0) == data().ReadInt32(client.playerState() + 0x28F0) || i == clientIndex) continue;
Mod clients(i);
if(sqrt((client.bit.origin[0] - clients.bit.origin[0]) * (client.bit.origin[0] - client.bit.origin[0])) < flt)
cl = i;
}
return cl;
}

void aimAtCC(int clientIndex)
{
Mod client(clientIndex);
Mod inf(closestClient(clientIndex));
data().Origin2Angles(inf.bit.origin, client.bit.angle);
client.setAngles(client.bit.angle);
}
04-16-2014, 10:38 AM #9
I'm doubting this lol
04-16-2014, 11:02 AM #10
Sticky
Mary J Wannnnna
Originally posted by EyeX32 View Post
Not to bash your thread, but I got some doubts on this. I hope this doesn't like get bad between us, but fuck it lol.

This vectoangles function does not look like the original code, looks like someone decompiled it from somewhere using Reflector or something because it has all these num's as floats numArray's... like who the fuck names there shit like that, I know reflector changes the names to that when the string can't be decompiled. This also goes to the getVector, WriteSingle, ReadSingle...


I know for a fact that the ReadSingle/WriteSingle is from seb's decompiled source, I got them from seb's source! But I asked him if I could use them.

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo