

public static byte[] Reverse(byte[] bytes)
{
Array.Reverse(bytes);
return bytes;
}
public int ReadKills(uint client)
{
byte[] GetKills = new byte[2];
PS3.GetMemory(0x0178651A + 0x5808 * (uint)client, GetKills);
return BitConverter.ToInt16(Reverse(GetKills), 0);
}
public int ReadDeaths(uint client)
{
byte[] GetDeaths = new byte[2];
PS3.GetMemory(0x178651E + 0x5808 * (uint)client, GetDeaths);
return BitConverter.ToInt16(Reverse(GetDeaths), 0);
}
public string ReadTeam(uint client)
{
byte[] GetTeam = new byte[1];
PS3.GetMemory(0x178642F + 0x5808 * (uint)client, GetTeam);
bool Seals = new byte[] { 0x01 }.SequenceEqual<byte>(GetTeam);
bool Auto = new byte[] { 0x02 }.SequenceEqual<byte>(GetTeam);
bool Spectator = new byte[] { 0x09 }.SequenceEqual<byte>(GetTeam);
bool FFA = new byte[] { 0x00 }.SequenceEqual<byte>(GetTeam);
byte[] Get = new byte[1];
bool Team = Get.SequenceEqual<byte>(GetTeam);
if (Seals) { return "Seals"; }
if (Auto) { return "Auto-Assign"; }
if (Spectator) { return "Spectator"; }
if (FFA) { return "Free for All"; }
return "Error";
}
public string ReadAlive(uint client)
{
byte[] GetStatus = new byte[1];
PS3.GetMemory(0x178634B + 0x5808 * (uint)client, GetStatus);
bool Dead = new byte[] { 0x01 }.SequenceEqual<byte>(GetStatus);
bool Alive = new byte[] { 0x00 }.SequenceEqual<byte>(GetStatus);
bool Spectate = new byte[] { 0x02 }.SequenceEqual<byte>(GetStatus);
bool Connecting = new byte[] { 0x03 }.SequenceEqual<byte>(GetStatus);
byte[] Get = new byte[1];
bool AD = Get.SequenceEqual<byte>(GetStatus);
if (Dead) { return "Dead"; }
if (Alive) { return "Alive"; }
if (Spectate) { return "Spectating"; }
if (Connecting) { return "Connecting"; }
return "Error";
}
for (int i = 0; i < 18; i++)
{
dataClientView.Update();
dataClientView.Rows[i].Cells[0].Value = i;
dataClientView.Rows[i].Cells[1].Value = GetClients(i);
dataClientView[2, Convert.ToInt32(i)].Value = ReadKills((uint)i); //This is what you need
dataClientView[3, Convert.ToInt16(i)].Value = ReadDeaths((uint)i); //This is what you need
dataClientView[4, Convert.ToInt16(i)].Value = ReadTeam((uint)i); //This is what you need
dataClientView[5, Convert.ToInt16(i)].Value = ReadAlive((uint)i); //This is what you need
Application.DoEvents();
}
Offsets i used:
Ingame Kills = 0x0178651A
Ingame Deaths = 0x178651E
Check Team = 0x178642F
Check Alive = 0x178634B



public static byte[] Reverse(byte[] bytes)
{
Array.Reverse(bytes);
return bytes;
}
public int ReadKills(uint client)
{
byte[] GetKills = new byte[2];
PS3.GetMemory(0x0178651A + 0x5808 * (uint)client, GetKills);
return BitConverter.ToInt16(Reverse(GetKills), 0);
}
public int ReadDeaths(uint client)
{
byte[] GetDeaths = new byte[2];
PS3.GetMemory(0x178651E + 0x5808 * (uint)client, GetDeaths);
return BitConverter.ToInt16(Reverse(GetDeaths), 0);
}
for (int i = 0; i < 18; i++)
{
dataClientView.Update();
dataClientView.Rows[i].Cells[0].Value = i;
dataClientView.Rows[i].Cells[1].Value = GetClients(i);
dataClientView[2, Convert.ToInt32(i)].Value = ReadKills((uint)i); //This is what you need
dataClientView[3, Convert.ToInt16(i)].Value = ReadDeaths((uint)i); //This is what you need
Application.DoEvents();
}
Offsets i used:
Ingame Kills = 0x0178651A
Ingame Deaths = 0x178651E

Copyright © 2026, NextGenUpdate.
All Rights Reserved.