Make a backup of your packfile (\fepc.ppc) before hacking it to pieces, otherwise you may need to reinstall the game to restore it.
There are 7 databases contained within the packfile, arranged according to language in alphabetical order. These can be found by doing an ASCII search in the packfile for "Seaman", for example (or whichever player you wish to edit). The first database is the Dutch, the second English, then French, German, Italian, Portuguese, and finally Spanish. So to edit the English database you'll need to edit the second occurance of Seaman (or whoever you plan to edit).
The name is fixed to 32-bytes long on disk, apart from that, a uint16 is an unsigned short, and a uint8 is an unsigned char... Have fun. MattP
char sName[32];
uint16 uiOldId; //Commentary Id
uint16 uiIdC; //now unused
//Values outside of the following ranges may crash the game on loading.
uint8 uiSkintone; //0..6
uint8 uiHaircolour; //0..6
uint8 uiHairstyle; //0..13
uint8 uiFacehair; //0..5
//Try making the players (a lot) smaller, to increase the relative size of the pitch.. Something fun to play with. May interfere with Logic/Mocap tho.
uint8 uiHeight; //in cm
uint8 uiWeight; //in kg
All the following values are converted from 1..99/1..35 to 1..9 within the frontend (the conversion is not a straight division).
uint8 uiHeading; //1..99
uint8 uiPace //1..99
uint8 uiShotrange; //1..35 yards
uint8 uiShooting; //1..99
uint8 uiDribbling; //1..99
uint8 uiAwareness; //1..99
uint8 uiStamina; //1..99
uint8 uiPassing; //1..99
uint8 uiTackling; //1..99
uint8 uiBallcontrol; //1..99
uint8 uiStrength; //1..99
Flags only contain the footedness of a player - 0x10 for the left, 0x20 for the right (allow for any combination)
uint8 flags; //Footedness
uint8 uiHeadModel; //Unused
uint8 uiPos[4]; //Positional info
Commentary flags. 0x1 Low sample exists, 0x2 High sample exists. Allow for any combination, but if either flag is set, the commentary id at the top must be set.
uint8 commentFlags;
uint8 uiShirtNumber; //1..99
uint8 PADDING[3];