Pro Evolution Soccer 2021/Edit file

From Rigged Wiki
Jump to navigation Jump to search
2021 4chanlogo.png
Pro Evolution Soccer 2021
This is still a work in progress.
Please be patient.
Game
Rules
Info
Tools
Modding

The Edit file is called EDIT00000000 and can be found in %HOMEPATH%\Documents\KONAMI\eFootball PES 2021 SEASON UPDATE\%steamid%\save.

It is encrypted and thus, cannot be simply edited directly.

Refer to the Tools page for decrypting and editing tools.

Note: This edit file mapping applies to Pro Evolution Soccer 2020 as well.

Structure

Note: The beginning of the file is considered what pesXcrypter exports as data.dat.

  • Header
  • Player entries
  • Player appearance entries
  • Team entries
  • Manager entries
  • Competitions
  • Stadiums
  • Undocumented entries
  • Team-Player table
  • Competition entry entries
  • Game plan entries

Header

Start: HEX block 0
End: HEX block 7B
Length: 124 (0x7C) bytes, first 96 (0x60) omitted for now

Offset (byte:bit) Length Description Format Enforced limits Default value
0x60:0 2 bytes Amount of player entires (appearance and data) 0xDE12 (4830)
0x62:0 2 bytes Unknown A Possible leftover of appearance entry count. 0x0000
0x64:0 2 bytes Amount of team entires 0xD200 (210)
0x66:0 2 bytes Amount of manager entries 0xE700 (231)
0x68:0 2 bytes Amount of stadium entires 0x3700 (55)
0x6A:0 2 bytes Amount of competition entries 0x2E00 (46)
0x6C:0 2 bytes Amount of entries of a currently undocumented entry 0x4F00 (79)
0x6E:0 2 bytes Unknown B 0x0000
0x70:0 2 bytes Amount of team-player table entries 0xD200 (210)
0x72:0 2 bytes Unknown C 0x0000
0x74:0 2 bytes Amount of team game plan entries 0xD200 (210)
0x76:0 2 bytes Unknown D 0x0000
0x78:0 2 bytes Unknown E 0x0000
0x7A:0 2 bytes Unknown F 0x0000

Player entry

Start: HEX block 7C
End: HEX block 8ED2FB
Entry length: 240 (0xF0) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x00:0 4 bytes Player ID PES: must be unique >= 1048576
0x04:0 4 bytes Commentary Name References a player ID. Same as the player ID.
0x08:0 2 bytes Nationality/Region 0x0401 = Others 0xE700 (San Marino)
0x0A:0 8 bits Height (cm) PES: must be in range [155, 210] 180
0x0B:0 8 bits Weight (kg) PES: must be in range [max(30, Height - 129), Height - 81] 80
0x0C:0 8 bits Motion: Goal Celebration 1 0 = OFF PES: must be in range [0, 140] 0
0x0D:0 8 bits Motion: Goal Celebration 2 0 = OFF PES: must be in range [0, 140] 0
0x0E:0 7 bits Offensive Awareness PES: must be in range [40, 99] 77
0x0E:7 7 bits Ball Control PES: must be in range [40, 99] 77
0x0F:6 2 bits Weak Foot Usage In-game value minus one PES: must be in range [0, 3] 1
0x10:0 7 bits Tight Possession PES: must be in range [40, 99] 77
0x10:7 7 bits Low Pass PES: must be in range [40, 99] 77
0x11:6 7 bits Lofted Pass PES: must be in range [40, 99] 77
0x12:5 7 bits Finishing PES: must be in range [40, 99] 77
0x13:4 4 bits Motion: Arm Movement (Dribbling) In-game value minus one PES: must be in range [0, 7] (full range) 0
0x14:0 7 bits Place Kicking PES: must be in range [40, 99] 77
0x14:7 7 bits Curl PES: must be in range [40, 99] 77
0x15:6 7 bits Speed PES: must be in range [40, 99] 77
0x16:5 7 bits Acceleration PES: must be in range [40, 99] 77
0x17:4 4 bits Motion: Arm Movement (Running) In-game value minus one PES: must be in range [0, 7] (full range) 0
0x18:0 7 bits Jump PES: must be in range [40, 99] 77
0x18:7 7 bits Physical Contact PES: must be in range [40, 99] 77
0x19:6 7 bits Balance PES: must be in range [40, 99] 77
0x1A:5 7 bits Stamina PES: must be in range [40, 99] 77
0x1B:4 4 bits Motion: Corner Kick In-game value minus one PES: must be in range [0, 5] 0
0x1C:0 7 bits Ball Winning PES: must be in range [40, 99] 77
0x1C:7 7 bits Aggression PES: must be in range [40, 99] 77
0x1D:6 7 bits GK Awareness PES: must be in range [40, 99] 77
0x1E:5 7 bits GK Catching PES: must be in range [40, 99] 77
0x1F:4 3 bits Conditioning In-game value minus one PES: must be in range [0, 7] (full range) 3
0x1F:7 1 bit Edited Player Name Whether the player name was edited (1) or not (0). PES: must be in range [0, 1] (full range) 0
0x20:0 7 bits GK Reach PES: must be in range [40, 99] 77
0x20:7 6 bits Age PES: must be in range [15, 50] 21
0x21:5 4 bits Registered Position Possible values are:
  • 0 - Goalkeeper
  • 1 - Centre Back
  • 2 - Left Back
  • 3 - Right Back
  • 4 - Defensive Midfielder
  • 5 - Centre Midfielder
  • 6 - Left Midfielder
  • 7 - Right Midfielder
  • 8 - Attacking Midfielder
  • 9 - Left Wing Forward
  • 10 - Right Wing Forward
  • 11 - Second Striker
  • 12 - Centre Forward
PES: must be in range [0, 12] 1
0x22:1 1 bit Unknown A Presumably unused/padding. 0
0x22:2 5 bits Playing Styles
  • 0 - None
  • 1 - Goal Poacher
  • 2 - Dummy Runner
  • 3 - Fox in the Box
  • 4 - Target Man
  • 5 - Creative Playmaker
  • 6 - Prolific Winger
  • 7 - Roaming Flank
  • 8 - Cross Specialist
  • 9 - Classic No. 10
  • 10 - Hole Player
  • 11 - Box-to-Box
  • 12 - The Destroyer
  • 13 - Orchestrator
  • 14 - Anchor Man
  • 15 - Offensive Full-back
  • 16 - Full-back Finisher
  • 17 - Defensive Full-back
  • 18 - Build Up
  • 19 - Extra Frontman
  • 20 - Offensive Goalkeeper
  • 21 - Defensive Goalkeeper
PES: must be be in range [0, 21] 0
0x22:7 5 bits Motion: Free Kick In-game value minus one PES: must be in range [0, 15] (full range) 0
0x23:4 3 bits Star Rating Probably reputation PES: inaccessible feature 7
0x23:7 1 bit Edited Basic Settings Whether one of the player's basic settings was edited (1) or not (0). PES: must be in range [0, 1] (full range) 0
0x24:0 7 bits Defensive Awareness PES: must be in range [40, 99] 77
0x24:7 7 bits GK Clearing PES: must be in range [40, 99] 77
0x25:6 7 bits Heading PES: must be in range [40, 99] 77
0x26:5 3 bits Motion: Hunching (Dribbling) In-game value minus one PES: must be in range [0, 2] 0
0x27:0 3 bits Motion: Hunching (Running) In-game value minus one PES: must be in range [0, 2] 0
0x27:3 3 bits Motion: Penalty Kick In-game value minus one PES: must be in range [0, 3] (full range) 0
0x27:6 2 bits Weak Foot Accuracy In-game value minus one PES: must be in range [0, 3] (full range) 1
0x28:0 7 bits Dribbling PES: must be in range [40, 99] 77
0x28:7 2 bits Injury Resistance In-game value minus one PES: must be in range [0, 2] 2
0x29:1 2 bits Playing Attitude PES: inaccessible feature 0
0x29:3 2 bits Dribble Motion PES: inaccessible feature 0
0x29:5 18 bits Playable Position (Values 5-13) An array of 9 2-bit entries with the following as values:
  • 0 - C
  • 1 - B
  • 2 - A

Each entry pertains to one position, in the following order:

  • Bits 0-1: Goalkeeper
  • Bits 2-3: Centre Back
  • Bits 4-5: Left Back
  • Bits 6-7: Right Back
  • Bits 8-9: Defensive Midfielder
  • Bits 10-11: Centre Midfielder
  • Bits 12-13: Left Midfielder
  • Bits 14-15: Right Midfielder
  • Bits 16-17: Attacking Midfielder
PES: each entry must be in range [0, 2] 0
0x2B:7 1 bit Edited Registered Position Whether one of the player's registered position was edited (1) or not (0). PES: must be in range [0, 1] (full range) 0
0x2C:0 6 bits Playable Position (Values 1-3) An array of 3 2-bit entries with the following as values:
  • 0 - C
  • 1 - B
  • 2 - A

Each entry pertains to one position, in the following order:

  • Bits 0-1: Right Wing Forward
  • Bits 2-3: Second Striker
  • Bits 4-5: Centre Forward
PES: each entry must be in range [0, 2] 0
0x2C:6 7 bits GK Reflexes PES: must be in range [40, 99] 77
0x2D:5 7 bits Kicking Power PES: must be in range [40, 99] 77
0x2E:4 2 bits Playable Position (Value 4) A single 2-bit entry with the following as values:
  • 0 - C
  • 1 - B
  • 2 - A

This entry pertains to the remaining one position:

  • Bits 0-1: Left Wing Forward
PES: must be in range [0, 2] 0
0x2E:6 5 bits Edited Settings Whether one of the player's settings was edited (1) or not (0).

Bitmask with 5 entries:

  • Bit 0: Edited Playable Position
  • Bit 1: Edited Player Ability
  • Bit 2: Edited Player Skills
  • Bit 3: Edited Playing Style
  • Bit 4: Edited COM Playing Style
PES: must be in range [0, 1] (full range) 0
0x2F:3 1 bit Unknown B Seems to have value of 0 or 1, can't figure it out what it is. Maybe an edit flag? 0
0x2F:4 1 bit Unknown C Presumably unused/padding. 0
0x2F:5 1 bit Stronger Foot Possible values are:
  • 0 - Right foot
  • 1 - Left foot
PES: must be in range [0, 1] (full range) 0
0x2F:6 1 bit Stronger Hand Possible values are:
  • 0 - Right hand
  • 1 - Left hand
PES: inaccessible feature 0
0x2F:7 7 bits COM Playing Style Bitmask with 7 entries:
  • Bit 0 - Trickster
  • Bit 1 - Mazing Run
  • Bit 2 - Speeding Bullet
  • Bit 3 - Incisive Run
  • Bit 4 - Long Ball Expert
  • Bit 5 - Early Cross
  • Bit 6 - Long Ranger
PES: at most 5 may be active at once 0
0x30:6 41 bits Player Skills Bitmask with 41 entries:
  • Bit 0 - Scissors Feint
  • Bit 1 - Double Touch
  • Bit 2 - Flip Flap
  • Bit 3 - Marseille Turn
  • Bit 4 - Sombrero
  • Bit 5 - Cross Over Turn
  • Bit 6 - Cut Behind & Turn
  • Bit 7 - Scotch Move
  • Bit 8 - Step On Skill Control
  • Bit 9 - Heading
  • Bit 10 - Long Range Drive
  • Bit 11 - Chip Shot Control
  • Bit 12 - Long Range Shooting
  • Bit 13 - Knuckle Shot
  • Bit 14 - Dipping Shots
  • Bit 15 - Rising Shots
  • Bit 16 - Acrobatic Finishing
  • Bit 17 - Heel Trick
  • Bit 18 - First-time Shot
  • Bit 19 - One-touch Pass
  • Bit 20 - Through Passing
  • Bit 21 - Weighted Pass
  • Bit 22 - Pinpoint Crossing
  • Bit 23 - Outside Curler
  • Bit 24 - Rabona
  • Bit 25 - No Look Pass
  • Bit 26 - Low Lofted Pass
  • Bit 27 - GK Low Punt
  • Bit 28 - GK High Punt
  • Bit 29 - Long Throw
  • Bit 30 - GK Long Throw
  • Bit 31 - Penalty Specialist
  • Bit 32 - GK Penalty Saver
  • Bit 33 - Gamesmanship
  • Bit 34 - Man Marking
  • Bit 35 - Track Back
  • Bit 36 - Interception
  • Bit 37 - Acrobatic Clear
  • Bit 38 - Captaincy
  • Bit 39 - Super-sub
  • Bit 40 - Fighting Spirit
PES: at most 10 may be active at once 0
0x35:7 1 bit Unknown D Presumably unused/padding. 0
0x36:0 61 bytes Player Name Null-terminated string PES: must not exceed 20 characters

Up to 60 characters are handled by the game

PLACEHOLDER
0x73:0 61 bytes Print Name (Club) Null-terminated string PES: must not exceed 20 characters, uppercase letters only PLACEHOLDER
0xB0:0 64 bytes Print Name (National Team) Null-terminated string PES: must not exceed 20 characters, uppercase letters only PLACEHOLDER

Note: default values are based on a newly created edited player.

Player appearance entry

Note: A player appearance entry always follows the player data entry. That's why the start and end of the entire datablock are the same as the player entry's.
Start: HEX block 7C
End: HEX block 8ED2FB
Entry Length: 72 (0x48) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x00:0 4 bytes Player References a player ID
0x04:0 1 bit Edited Face settings Whether default Face settings are used (0) or not (1) 0
0x04:1 1 bit Edited Hairstyle settings Whether default Hairstyle settings are used (0) or not (1) 0
0x04:2 1 bit Edited Physique settings Whether default Physique settings are used (0) or not (1) 0
0x04:3 1 bit Edited Strip Style settings Whether default Strip Style settings are used (0) or not (1) 0
0x04:4 14 bits Boots References a boots ID (for 0, ID 62 will be displayed instead) PES: must be in range [1, 9999] 23
0x06:2 10 bits Goalkeeper gloves References a gloves ID (for 0, ID 1 will be displayed instead) PES: must be in range [1, 999] 10
0x07:4 4 bits Unknown A
0x08:0 4 bytes Base Copy Player References a player ID if the player is a base copy, references itself if the player is defaulted.
0x0C:0 4 bits Player physique: Neck Length In-game value plus seven PES: must be in range [0, 14] 7
0x0C:4 4 bits Player physique: Neck Size In-game value plus seven PES: must be in range [0, 14] 7
0x0D:0 4 bits Player physique: Shoulder Height In-game value plus seven PES: must be in range [0, 14] 7
0x0D:4 4 bits Player physique: Shoulder Width In-game value plus seven PES: must be in range [0, 14] 7
0x0E:0 4 bits Player physique: Chest Measurement In-game value plus seven PES: must be in range [0, 14] 7
0x0E:4 4 bits Player physique: Waist Size In-game value plus seven PES: must be in range [0, 14] 7
0x0F:0 4 bits Player physique: Arm Size In-game value plus seven PES: must be in range [0, 14] 7
0x0F:4 4 bits Player physique: Arm Length In-game value plus seven PES: must be in range [0, 14] 7
0x10:0 4 bits Player physique: Thigh Size In-game value plus seven PES: must be in range [0, 14] 7
0x10:4 4 bits Player physique: Calf Size In-game value plus seven PES: must be in range [0, 14] 7
0x11:0 4 bits Player physique: Leg Length In-game value plus seven PES: must be in range [0, 14] 7
0x11:4 4 bits Player physique: Head Length In-game value plus seven PES: must be in range [0, 14] 7
0x12:0 4 bits Player physique: Head Width In-game value plus seven PES: must be in range [0, 14] 7
0x12:4 4 bits Player physique: Head Depth In-game value plus seven PES: must be in range [0, 14] 7
0x13:0 3 bits Wrist Tape: Color left 000 for strip color, 001 for white, 010 for black and 011 for beige

Verify unused bit!

PES: must be in range [0, 3] 0
0x13:3 3 bits Wrist Tape: Color right 000 for strip color, 001 for white, 010 for black and 011 for beige

Verify unused bit!

PES: not editable; same as Wrist Tape: Color left 0
0x13:6 2 bits Wrist Taping 00 for OFF, 01 for right arm, 10 for left arm and 11 for both PES: must be in range [0, 3] (full range) 0
0x14:0 3 bits Spectacles frame color Glasscolors.png PES: inaccessible feature

Full range is handled in-game

0x14:3 3 bits Spectacles References a glasses ID (000 = no glasses)
Glassstyles.png
PES: inaccessible feature

Full range is handled in-game

0
0x14:6 2 bits Sleeves 00 is Season specific, 01 is Short, 10 is Long PES: must be in range [0, 2] 0
0x15:0 2 bits Long-Sleeved Inners 00 is Off. 01 is Normal. 10 is Turtle Neck. PES: must be in range [0, 2] 0
0x15:2 2 bits Sock Length 00 is Standard. 01 is Long. 10 is Short. PES: must be in range [0, 2] 0
0x15:4 2 bits Undershorts 00 is S: Off / W: Off. 01 is: S: Short / W: Short. 10 is: S: Off / W: Long. 11 is: S: Short / W: Long. PES: must be in range [0, 3] (full range) 0
0x15:6 1 bit Shirttail 0 is Tucked in, 1 is Untucked PES: must be in range [0, 1] (full range) 0
0x15:7 1 bit Ankle Taping 0 is Off , 1 is On PES: must be in range [0, 1] (full range) 0
0x16:0 1 bit Player Gloves 0 is Off , 1 is On PES: must be in range [0, 1] (full range) 0
0x16:1 3 bits Player Gloves color Glasscolors.png PES: must be in range [0, 7] (full range) 0
0x16:4 4 bits Appearance: Jawline In-game value plus seven PES: must be in range [0, 14] 7
0x17:0 4 bits Appearance: Jaw Height In-game value plus seven PES: must be in range [0, 14] 7
0x17:4 4 bits Appearance: Jawline (duplicate) Set by the game but doesn't affect anything alone PES: must be in range [0, 14] 7
0x18:0 4 bits Appearance: Cheekbones In-game value plus seven PES: must be in range [0, 14] 7
0x18:4 4 bits Unknown B
0x19:0 4 bits Appearance: Cheekbones (duplicate) Set by the game but doesn't affect anything alone PES: must be in range [0, 14] 7
0x19:4 4 bits Unknown C
0x1A:0 4 bits Unknown D
0x1A:4 4 bits Appearance: Brow Width In-game value plus seven PES: must be in range [0, 14] 7
0x1B:0 4 bits Appearance: Inner Eyebrow Height In-game value plus seven PES: must be in range [0, 14] 7
0x1B:4 4 bits Appearance: Eyebrow Depth In-game value plus seven PES: must be in range [0, 14] 7
0x1C:0 4 bits Appearance: Temple Width In-game value plus seven PES: must be in range [0, 14] 7
0x1C:4 4 bits Appearance: Outer Eyebrow Height In-game value plus seven PES: must be in range [0, 14] 7
0x1D:0 4 bits Unknown E
0x1D:4 4 bits Appearance: Pupil Size In-game value plus seven PES: must be in range [0, 14] 7
0x1E:0 4 bits Appearance: Eye Depth In-game value plus seven PES: must be in range [0, 14] 7
0x1E:4 4 bits Appearance: Inner Eye Position In-game value plus seven PES: must be in range [0, 14] 7
0x1F:0 4 bits Appearance: Inner Eye Height In-game value plus seven PES: must be in range [0, 14] 7
0x1F:4 4 bits Appearance: Outer Eye Position In-game value plus seven PES: must be in range [0, 14] 7
0x20:0 4 bits Appearance: Eye Corner Height In-game value plus seven PES: must be in range [0, 14] 7
0x20:4 4 bits Appearance: Upper Eyelid Width Inner In-game value plus seven PES: must be in range [0, 14] 7
0x21:0 4 bits Appearance: Upper Eyelid Height Inner In-game value plus seven PES: must be in range [0, 14] 7
0x21:4 4 bits Appearance: Upper Eyelid Width Outer In-game value plus seven PES: must be in range [0, 14] 7
0x22:0 4 bits Appearance: Upper Eyelid Height Outer In-game value plus seven PES: must be in range [0, 14] 7
0x22:4 4 bits Unknown F
0x23:0 4 bits Appearance: Bottom Eyelid Height In-game value plus seven PES: must be in range [0, 14] 7
0x23:4 4 bits Appearance: Horizontal Eye Position In-game value plus seven PES: must be in range [0, 14] 7
0x24:0 4 bits Appearance: Eye Height In-game value plus seven PES: must be in range [0, 14] 7
0x24:4 4 bits Appearance: Nose Height In-game value plus seven PES: must be in range [0, 14] 7
0x25:0 4 bits Appearance: Nose Tip Depth In-game value plus seven PES: must be in range [0, 14] 7
0x25:4 4 bits Appearance: Nostril Width In-game value plus seven PES: must be in range [0, 14] 7
0x26:0 4 bits Unknown G
0x26:4 4 bits Appearance: Nose Depth In-game value plus seven PES: must be in range [0, 14] 7
0x27:0 4 bits Appearance: Nose Width In-game value plus seven PES: must be in range [0, 14] 7
0x27:4 4 bits Unknown H
0x28:0 4 bits Appearance: Mouth Height In-game value plus seven PES: must be in range [0, 14] 7
0x28:4 4 bits Appearance: Mouth Depth In-game value plus seven PES: must be in range [0, 14] 7
0x29:0 4 bits Appearance: Lip Size In-game value plus seven PES: must be in range [0, 14] 7
0x29:4 4 bits Unknown I
0x2A:0 4 bits Appearance: Mouth Corner Height In-game value plus seven PES: must be in range [0, 14] 7
0x2A:4 4 bits Appearance: Lip Width In-game value plus seven PES: must be in range [0, 14] 7
0x2B:0 4 bits Appearance: Mouth Depth (duplicate) Set by the game but doesn't affect anything alone PES: must be in range [0, 14] 7
0x2B:4 4 bits Appearance: Chin Width In-game value plus seven PES: must be in range [0, 14] 7
0x2C:0 4 bits Appearance: Chin Height In-game value plus seven PES: must be in range [0, 14] 7
0x2C:4 4 bits Appearance: Chin Depth In-game value plus seven PES: must be in range [0, 14] 7
0x2D:0 3 bits Skin color Possible values are:
  • 0: Caucasian white / Transparent for custom models
  • 1-6:
Skin colors 2015.jpg
  • 7: None / Transparent for custom models
PES: must be in range [1, 6] 1
0x2D:3 5 bits Appearance: Cheek Type In-game value minus one PES: must be in range [0, 5] 0
0x2E:0 3 bits Appearance: Forehead Type In-game value minus one PES: must be in range [0, 6] 0
0x2E:3 5 bits Appearance: Facial Hair Type In-game value, 0=OFF PES: must be in range [0, 19] 0
0x2F:0 3 bits Appearance: Laughter Lines In-game value minus one PES: must be in range [0, 4] 0
0x2F:3 3 bits Appearance: Upper Eyelid Type In-game value minus one PES: must be in range [0, 7] 0
0x2F:6 2 bits Unknown J
0x30:0 3 bits Appearance: Bottom Eyelid Type In-game value minus one PES: must be in range [0, 6] 0
0x30:3 1 bit Unknown K
0x30:4 4 bits Appearance: Ear Length In-game value plus seven PES: must be in range [0, 14] 7
0x31:0 4 bits Appearance: Ear Width In-game value plus seven PES: must be in range [0, 14] 7
0x31:4 4 bits Appearance: Ear Angle In-game value plus seven PES: must be in range [0, 14] 7
0x32:0 3 bits Appearance: Eyebrow Type In-game value minus one PES: must be in range [0, 7] 0
0x32:3 2 bits Unknown L
0x32:5 2 bits Appearance: Neck Line Type In-game value minus one PES: must be in range [0, 3] 0
0x32:7 1 bit Unknown M
0x33:0 4 bits Appearance: Face Size In-game value plus seven PES: must be in range [0, 14] 7
0x33:4 4 bits Appearance: Face Height In-game value plus seven PES: must be in range [0, 14] 7
0x34:0 3 bits Appearance: Nose Type In-game value minus one PES: must be in range [0, 7] 0
0x34:3 5 bits Unknown N
0x35:0 3 bits Appearance: Upper Lip Type In-game value minus one PES: must be in range [0, 4] 0
0x35:3 3 bits Appearance: Lower Lip Type In-game value minus one PES: must be in range [0, 4] 0
0x35:6 6 bits Appearance: Hair Colour Red PES: must be in range [0, 63]
0x36:4 6 bits Appearance: Hair Colour Green PES: must be in range [0, 63]
0x37:2 6 bits Appearance: Hair Colour Blue PES: must be in range [0, 63]
0x38:0 3 bits Appearance: Hairstyle 1=Normal, 2=Dry, 3=Mohican, 4=Afro, 5=Dreadlocks, 6=Braided, 7=Special PES: must be in range [1, 7] 1
0x38:3 1 bit Unknown O
0x38:4 3 bits Appearance: Cropped Hair Style PES: must be in range [1, 6] 1
0x38:7 1 bit Unknown P
0x39:0 6 bits Appearance: Eyebrow Colour Red PES: must be in range [0, 63]
0x39:6 2 bits Appearance: Eyebrow Style 0=Normal, 1=Thick, 2=Thin PES: must be in range [0, 2] 0
0x3A:0 6 bits Appearance: Eyebrow Colour Green PES: must be in range [0, 63]
0x3A:6 2 bits Appearance: Eyebrow Density PES: must be in range [0, 3] 3
0x3B:0 6 bits Appearance: Eyebrow Colour Blue PES: must be in range [0, 63]
0x3B:6 2 bits Appearance: Eyebrow Thickness PES: must be in range [0, 2] 1
0x3C:0 3 bits Appearance: Hair Length 1=Shaven, 2=Very Short, 3=Short, 4=Medium, 5=Long PES: must be in range [1, 5] 2
0x3C:3 3 bits Appearance: Wave Level In-game value plus one PES: must be in range [1, 7] 1
0x3C:6 2 bits Unknown Q
0x3D:0 1 bit Appearance: Hair Accessories 0=OFF, 1=ON PES: must be in range [0, 1] 0
0x3D:1 3 bits Appearance: Hair Accessory Colour PES: must be in range [0, 7] 0
0x3D:4 6 bits Appearance: Facial Hair Colour Red PES: must be in range [0, 63]
0x3E:2 6 bits Appearance: Facial Hair Colour Green PES: must be in range [0, 63]
0x3F:0 6 bits Appearance: Facial Hair Colour Blue PES: must be in range [0, 63]
0x3F:6 2 bits Appearance: Facial Hair Thickness PES: must be in range [0, 3] 3
0x40:0 4 bits Iris color Eyeofthepony.png PES: must be in range [0, 10] 1
0x40:4 5 bits Hair Variation PES: must be in range [1, 29] 1
0x41:1 7 bits Unknown R
0x42:0 2 bits Hair Style Front 01=Up, 10=Down, 11=Combed Back
0x42:2 1 bit Unknown S
0x42:3 3 bits Hair Combed Back 001=Off, 010=Left2, 011=Left1, 100=Centre, 101=Right1, 110=Right2
0x42:6 3 bits Hair Cropped 001=Normal, 010=Reduce Body, 011=Shorter Sides, 100=Cropped
0x43:1 2 bits Hairline Type 01=Type 1, 10=Type 2, 11=Type 3
0x43:3 1 bit Unknown T
0x43:4 2 bits Forehead Width 01=Narrow 1, 10=Normal, 11=Wide
0x43:6 2 bits Unknown U
0x44:0 1 byte Unknown V

Team entry

Start: HEX block 8ED2FC
End: HEX block 958DA3
Entry Length: 588 (0x24C) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x000:0 4 bytes Team ID PES: must be unique
0x004:0 4 bytes Manager ID Assigned Manager ID
0x008:0 2 bytes Team Emblem
  • 0xFFFF if using default emblem
  • References loaded emblem number if not
0xFFFF
0x00A:0 2 bytes Home Stadium References a Stadium ID PES: must be unique
0x00C:0 2 bytes Stadium Image
  • 0xFFFF if using default stadium image
  • References loaded image number if not
0xFFFF
0x00E:0 2 bytes Team Nationality References a Nation ID, 0x0401 = Others 0xE700 (San Marino)
0x010:0 2 bytes Team Callname References a Commentary Callname ID 0xFFFF
0x012:0 6 bits Goal Net Colour 1 - Red PES: Must be in range [0-63]
0x012:6 6 bits Goal Net Colour 1 - Green PES: Must be in range [0-63]
0x013:4 4 bits Goal Netting Design
0x14:0 6 bits Goal Net Colour 2 - Red PES: Must be in range [0-63]
0x14:6 6 bits Goal Net Colour 2 - Green PES: Must be in range [0-63]
0x15:4 6 bits Goal Net Colour 2 - Blue PES: Must be in range [0-63]
0x016:2 6 bits Team Color 1 Red PES: Must be in range [0-63]
0x017:0 6 bits Team Color 1 Green PES: Must be in range [0-63]
0x017:6 1 bit Edited Team Name/Abbreviation Flag indicating if team name or abbreviation has been changed (1) or not (0). PES: must be in range [0, 1] (full range)
0x017:7 1 bit Edited Team Emblem Flag indicating if team emblem has been changed (1) or not (0). PES: must be in range [0, 1] (full range)
0x018:0 6 bits Team Color 2 Green PES: Must be in range [0-63]
0x018:6 6 bits Team Color 2 Blue PES: Must be in range [0-63]
0x019:4 6 bits Media Backdrop Colour - Red PES: Must be in range [0-63]
0x1A:2 6 bits Media Backdrop Colour - Green PES: Must be in range [0-63]
0x1B:0 6 bits Media Backdrop Colour - Blue PES: Must be in range [0-63]
0x01B:6 1 bit Edited Stadium Selection Flag indicating if home stadium has been changed (1) or not (0). PES: must be in range [0, 1] (full range)
0x01B:7 1 bit Edited Stadium Name Flag indicating if the home stadium name has been changed (1) or not (0). PES: must be in range [0, 1] (full range)
0x1C:0 4 bits Stadium Goal Style
0x1C:4 4 bits Stadium Turf Pattern
0x1D:0 4 bits Stadium Sideline Colour
0x1D:4 4 bits Stadium Seat Colour
0x01E:0 6 bits Team Color 1 Blue PES: Must be in range [0-63]
0x01E:6 6 bits Team Color 2 Red PES: Must be in range [0-63]
0x01F:4 4 bits Goal Net Design
0x020:0 6 bits Goal Net Colour 1 - Blue PES: Must be in range [0-63]
0x020:6 10 bits Edited Team Settings Whether one of the team's settings was edited (1) or not (0).

Bitmask with 10 entries, of which 2 are unknown:

  • Bit 0: Edited Stadium Image
  • Bit 1: Edited Stadium Settings
  • Bit 2: Edited Rival Clubs
  • Bit 3: Edited Banners
  • Bit 4: Edited Team Colour
  • Bit 5: Edited Manager
  • Bit 6: Unknown A
  • Bit 7: Edited Official Partners
  • Bit 8: Edited Media Backdrop
  • Bit 9: Unknown B
PES: must be in range [0, 1] (full range) 0
0x022:0 16 bytes Unknown C Presumably unused/padding.
0x024:0 96 bytes Official Partners (1-3) Image An array of 3 4-byte entries with the following as value:
  • 0xFFFFFFFF if using default partner
  • References loaded partner number if not

Each entry pertains to each three partner images, in the following order:

  • Byte 0-3: Official Partner 1
  • Byte 4-7: Official Partner 2
  • Byte 8-11: Official Partner 3
0xFFFFFFFF
0x030:0 320 bytes Team Strip (1-10) An array of 10 4-byte entries with the following as value:
  • 1st byte = Number of kit starting from 00, or 0x80 if goalkeeper
  • Next 3 bytes = Team ID * 0x4000

Each entry pertains to a kit entry, in the following order:

  • Byte 0-3: Team Strip 1
  • Byte 4-7: Team Strip 2
  • Byte 8-11: Team Strip 3
  • Byte 12-15: Team Strip 4
  • Byte 16-19: Team Strip 5
  • Byte 20-23: Team Strip 6
  • Byte 24-27: Team Strip 7
  • Byte 28-31: Team Strip 8
  • Byte 32-35: Team Strip 9
  • Byte 36-39: Team Strip 10
0x058:0 4 bytes Rival Team 1 References a Team ID 0xFFFF0300
0x05C:0 4 bytes Rival Team 2 References a Team ID 0xFFFF0300
0x060:0 4 bytes Rival Team 3 References a Team ID 0xFFFF0300
0x064:0 1 byte Banner 1 Edited Flag Special case, 0x00 always
0x065:0 1 byte Banner 2 Edited Flag 0x00 if not edited, 0x01 if edited
0x066:0 1 byte Banner 3 Edited Flag 0x00 if not edited, 0x02 if edited
0x067:0 1 byte Banner 4 Edited Flag 0x00 if not edited, 0x03 if edited
0x068:0 70 bytes Team Name Null-terminated string
0x0AE:0 4 bytes Scoreboard name Null-terminated string PES: must not exceed 3 characters
0x0B2:0 181 bytes Custom Stadium Name Null-terminated string PES: must not exceed 60 characters
0x167:0 16 bytes Banner 1 Text Null-terminated string PES: must not exceed 15 characters
0x177:0 16 bytes Banner 2 Text Null-terminated string PES: must not exceed 15 characters
0x187:0 16 bytes Banner 3 Text Null-terminated string PES: must not exceed 15 characters
0x197:0 16 bytes Banner 4 Text Null-terminated string PES: must not exceed 15 characters
0x1A7:0 165 bytes Unknown D

Manager entry

Start: HEX block 958DA4
End: HEX block 974C83
Entry Length: 88 (0x58) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x00:0 4 bytes Manager ID PES: must be unique
0x04:0 2 bytes Manager Nationality
0x06:0 2 bytes Manager picture ID 0xFFFF
0x08:0 1 byte Unknown A 0x60
0x09:0 79 bytes Manager Name

Competitions

Start: HEX block 974C84
End: HEX block 980D7B
Entry Length: 760 (0x2F8) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value

Stadium Entry

Start: HEX block 980D7C
End: HEX block 983D37
Entry Length: 188 (0xBB) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x00:0 4 bytes Stadium ID PES: must be unique
0x04:0 184 bytes Stadium Name PES: must not exceed 60 characters

Unknown section

This section is located between the Stadium name and Team Player tables, but has not been documented yet.
Start: HEX block 983D38
End: HEX block 9D4647
Entry Length: 132 (0x84) bytes

Team-Player Table

The Team-Player table is what links a Player ID to a Team ID. It is basically a Team ID, followed by a list of 40 Player IDs that correspond to the players in that team, then the respective shirt numbers for those players.
Start: HEX block 9D4648
End: HEX block A0864F
Entry Length: 284 (0x11C) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x00:0 4 bytes Team ID PES: must be unique
0x04:0 160 bytes Player IDs / Index IDs 40 x 4 bytes

This table also assigns (what I would like to call them anyways) Index IDs.
The first player in the table will get the Index ID 0x00, the second will get 0x01, and if your team has 40 players, the 40th will get 0x27.
These Index IDs are then used for the Game Plan menu to assign players to positions.

0x00000000 (no player)
0xA4:0 80 bytes Shirt Numbers 40 x 2 bytes PES: must be in range [0, 999]
0xF4:0 40 bytes Unknown A

Competition Entry

This section does not use separators nor do individual sections have a fixed length.
It is almost a continued list of Team IDs (length: 4 bytes) that will determine what team plays in what league. For example, the first 20 team IDs are teams that will play in the English League. Right after that you get 20 team IDs that will play in the English 2nd Division. Therefore this section will be slightly different from the other ones. 0xFFFF0300 is used to mark 'no team' in the list.

Start: HEX block A08650
End: HEX block A0987F
Entry Length: 4656 (0x1230) bytes (whole section)

Offset (byte:bit) Length Amount of teams League/Cup

Team Game Plan

In addition to storing saved tactics in the Edit File, this exact same structure is present in PES memory for both teams during a match and pre-match (after team select) and contains the currently set tactics for each team.
Some values or settings may be marked "invalid in Edit Mode" or "pre-match only" to indicate that PES cannot be used to set them in the Edit File.
Start: HEX block A09880
End: HEX block A7C857
Entry Length: 628 (0x274) bytes

Offset (byte:bit) Length Description Format Enforced limits Default value
0x000:0 4 bytes Team ID
  • PES: must be unique
  • 0xFFFF0300 if the team slot is not used
0x004:0 520 bytes Unknown A
0x20C:0 1 byte Long FK Taker Index ID of a player to take the long free kick.
0x20C:0 1 byte Long FK Taker Index ID of a player to take the long free kick.
0x20E:0 1 byte FK Taker 2 Index ID of a second player to take the short free kick.
0x20F:0 1 byte Left CK Taker Index ID of a player to take the corner kick on the left side of the pitch.
0x210:0 1 byte Right CK Taker Index ID of a player to take the corner kick on the right side of the pitch.
0x211:0 1 byte PK Taker Index ID of a player to take the penalty kick in regulation and extra time.
0x212:0 3 byte Players To Join The Attack 3 x 1 byte

Index ID of the players to join the attack.

0x215:0 1 byte Captain Index ID of the player to be the Captain.

Limitations enforced by PES

Even though editing the save files externally technically allows using the full range of all values, PES puts some additional limitations in place. Some of these might be checked and corrected by the game, others are just taken as they are. This might lead to unexpected behaviour or even crash the game. Be sure to check Appendix:Rules or the rules of the invitational in question to find out what is considered legal.