Post: Playerdata.def Structure Info
02-15-2014, 07:27 PM #1
primetime43
Knowledge is power Tiphat
(adsbygoogle = window.adsbygoogle || []).push({});
Here is some stuff things from the playerdata.def, which is where the stat index is stored and many many other things if you can find them and dump them. :wtf:

Why am I releasing this? Well I want to see if others are able to get stuff done with this and see what happens etc.

Here is the structure not figured out:
    
enum DataType
{
STRUCTURED_DATA_INT = 0,
STRUCTURED_DATA_BYTE = 1,
STRUCTURED_DATA_BOOL = 2,
STRUCTURED_DATA_STRING = 3,
STRUCTURED_DATA_ENUM = 4,
STRUCTURED_DATA_STRUCT = 5,
STRUCTURED_DATA_INDEXEDARR = 6,
STRUCTURED_DATA_ENUMARR = 7,
STRUCTURED_DATA_FLOAT = 8,
STRUCTURED_DATA_SHORT = 9
};

#pragma pack(push,4)
struct EnumEntry
{
#ifdef IW6 // if it is Ghosts..
ScriptString name;
#else
const char *name;
#endif
unsigned __int16 index;
};
#pragma pack(pop)

struct DefinedEnum
{
int entryCount;
int unknown;
EnumEntry *entries;
};

union TypeData
{
int integer;
int stringSize;
int flags;
int enumIndex;
int enumArrIndex;
int indexedArrIndex;
int structIndex;
};

struct StructureEntryItem
{
DataType type;
TypeData data;
int index;
};

#pragma pack(push,4)
struct StructureEntry
{
#ifdef IW6 // if it is Ghosts..
ScriptString name;
#else
const char *name;
#endif
StructureEntryItem item;
#ifndef IW4 // if not Modern Warfare 2..
int unknown;
#endif
};
#pragma pack(pop)

struct DefinedStructure
{
int entryCount;
StructureEntry *entries;
int size;
int unknown;
};

struct DefinedIndexedArray
{
int numItems;
StructureEntryItem item;
};

struct DefinedEnumArray
{
int enumIndex;
StructureEntryItem item;
};

struct StructuredData
{
int version;
int hash;
int enumCount;
DefinedEnum *enums;
int structureCount;
DefinedStructure *structures;
int indexedArrCount;
DefinedIndexedArray *indexedArrays;
int enumArrayCount;
DefinedEnumArray *enumArrays;
StructureEntryItem rootItem;
};

struct StructuredDataDef
{
const char *name;
int numEntries;
StructuredData *entries;
};

//The structure is from aerosoul94


Here is the structure figured out
    
header = 0x0270EAD4

0x31b26818 - playerdata.def stored in memory
length = 0xC
0x31b2ae34 - prestigedata.def


struct StructuredDataDef
{
const char *name;
int numEntries;
StructuredData *entries;
};

31 B2 68 18 00 00 00 01 31 B2 68 2C
name = 0x31B26818 //mp/playerdata.def
int numEntries = 1
StructuredData *entries = 0x31B2682C

struct StructuredData
{
int version;
int hash;
int enumCount;
DefinedEnum *enums;
int structureCount;
DefinedStructure *structures;
int indexedArrCount;
DefinedIndexedArray *indexedArrays;
int enumArrayCount;
DefinedEnumArray *enumArrays;
StructureEntryItem rootItem;
};

version = 0xDF
hash = 0x41277f25
enumcount = 0x1A// 26
enums = 0x31B26860
structureCount = 0x18// 24
structures = 0x31B289D0
indexedArrCount = 0x40//64
indexedArrays = 0x31B2A8C4
enumArrayCount = 0x17//23
enumArrays = 0x31B2ACC4

struct StructureEntryItem
{
DataType type;
TypeData data;
int index;
};

rooiItem.type = DataType.STRUCTURED_DATA_STRUCT
rootItem.data = 0
rootItem.index = 0x9051

rootItem =

struct DefinedEnum
{
int entryCount;
int unknown;
EnumEntry *entries;
};

entryCount = 0x1C;//28
unknown = 0x20;
entries = 0x31B26898;

typedef unsigned __int16 ScriptString;

#pragma pack(push,4)
struct EnumEntry
{
#ifdef IW6 // if it is Ghosts..
ScriptString name;
#else
const char *name;
#endif
unsigned __int16 index;
};
#pragma pack(pop)

name = 0x26

enum EnumEntry
{
dm = 0,
war = 1,
sd = 2,
sab = 3,
dom = 4,
koth = 5,
ctf = 6,
dd = 7,
conf = 8,
tdef = 9,
siege = 10,
mtdm = 11,
grnd = 12,
tjugg = 13,
jugg = 14,
gun = 15,
infect = 16,
oic = 17,
mugger = 18,
aliens = 19,
blitz = 20,
sr = 21,
bnty = 22,
grind = 23,
cranked = 24,
sotf = 25,
sotf_ffa = 26,
horde = 27,
}

name: Z657dd5eb83c0aceec5fdd0ab9ec981607000e26c90b2021d541592338f9f5e2
type: data_struct
structIndex: 20
index: 8

name: Zed4f006c0e57232d73b1e9538b33f8bf228f7e97172c181dff018d2ccaa2c81
type: data_struct
structIndex: 21
index: 21080

name: Z62639918ae5cf2999b9097a7a8a6d3c721220f3bf1aecad5777165f0436a9c1
type: data_struct
structIndex: 22
index: 29760

name: Z491056b8ad1e0039ae1af4b3163ff872d147bb90852667c95affe3c7b01cb7b
type: data_struct
structIndex: 23
index: 34720


Just go to where the playerdata is stored in the memory and take a look, you will find some good stuff. :yes:
(adsbygoogle = window.adsbygoogle || []).push({});

The following 5 users say thank you to primetime43 for this useful post:

ErasedDev, GMTPS3, NotALegitPlayer, xDLuisssxD
02-17-2014, 02:24 PM #11
Tustin
Balls of Steel
Originally posted by VezahMoDz View Post
Well the other problem with this would be that its for c++ and i think the most people dont even know how to connect to ps3 with c or c++, but well nice find tho Needa


Why would you want to make a modding program with C? :p
02-17-2014, 02:57 PM #12
FarSideX
I’m too L33T
Originally posted by Tustin View Post
Why would you want to make a modding program with C? :p


C is my favourite high level language, don't be disrespecting it. But for super simple shit like modding apps any of those Application Construction Kits like C# will do. C++ is like C with training wheels.

The following user thanked FarSideX for this useful post:

VezahMoDz
02-17-2014, 02:59 PM #13
Tustin
Balls of Steel
Originally posted by FarSideX View Post
C is my favourite high level language, don't be disrespecting it. But for super simple shit like modding apps any of those Application Construction Kits like C# will do. C++ is like C with training wheels.

Oh I know. I like C too :p. I was just wondering why someone would want to make a PS3 RTE program with it. I just meant it would be much easier to just use C# and C++.
02-18-2014, 12:30 AM #14
Taylor
Former Black Knight.
Originally posted by iBullet1 View Post
You're so cool for learning an irrelevant skill of making tools on ngu for games, quit being an ego pizza, you dirty avocado.


u wot m8

The following user thanked Taylor for this useful post:

primetime43
02-18-2014, 04:17 AM #15
Originally posted by iBullet1 View Post
You're so cool for learning an irrelevant skill of making tools on ngu for games, quit being an ego pizza, you dirty avocado.


An 'Irrelevant Skill' :ha!: So you're saying that coding programs is irrelevant? That means the machine you're posting on is made on irrelevance, and the internet you are using is based on an irrelevant skill. Think about shit before you talk it.

The following 2 users say thank you to Black Panther for this useful post:

primetime43,

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo