Difference between revisions of "Pro Evolution Soccer 2021/Edit file"

From Rigged Wiki
Jump to navigation Jump to search
(Basic Info and Edit File Header)
 
(Player Data and Appearance)
Line 138: Line 138:
|-
|-
|}
|}
=== Player entry ===
Start: HEX block 7C <br>
End: HEX block 8ED2FB <br>
Entry length: 240 (0xF0) bytes
{| class="wikitable"
|-
! 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
| 7 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:7
| 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 bits
| ''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 - Crossing Specialist
* 9 - Classic No. 10
* 10 - Hole Player
* 11 - Box to Box
* 12 - The Destroyer
* 13 - Orchestrator
* 14 - Anchor Man
* 15 - Build Up
* 16 - Offensive Fullback
* 17 - Fullback Finisher
* 18 - Defensive Fullback
* 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
| 7 bits
| Edited Settings
| Whether one of the player's settings was edited (1) or not (0).
Bitmask with 7 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
* Bit 5: {{tt|''Unedited Player''|Not Entirely Sure}}
* Bit 6: {{tt|''Edited Motion''|Not Entirely Sure}}
| PES: must be in range [0, 1] (full range)
| 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 bits
| ''Unknown B''
| 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. <br>
Start: HEX block 7C <br>
End: HEX block 8ED2FB <br>
Entry Length: 72 (0x48) bytes
{| class="wikitable"
|-
! 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
| [[File:Glasscolors.png]]
| PES: inaccessible feature<br/>
Full range is handled in-game
|
|-
| 0x14:3
| 3 bits
| Spectacles
| References a glasses ID (000 = no glasses)<br/>
[[File:Glassstyles.png|thumbnail|none]]
| PES: inaccessible feature<br/>
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
| [[File: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:
[[File:Skin colors 2015.jpg|thumbnail|none]]
* 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
| [[File: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''
|
|
|
|}


== Limitations enforced by PES ==
== Limitations enforced by PES ==

Revision as of 04:07, 3 November 2020

2020 4chanlogo.png
Pro Evolution Soccer 2020
This is still a work in progress.
Please be patient.
Game
Rules
Info
Tools
Modding
Incomplete.svg The content of this page or section is incomplete because we're a bunch of lazy fucks. Feel free to help out.

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

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

Refer to the Tools page for decrypting and editing tools.

This page is a work in progress, and currently only contains the parts that are somewhat properly mapped out.

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 7 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:7 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 bits 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 - Crossing Specialist
  • 9 - Classic No. 10
  • 10 - Hole Player
  • 11 - Box to Box
  • 12 - The Destroyer
  • 13 - Orchestrator
  • 14 - Anchor Man
  • 15 - Build Up
  • 16 - Offensive Fullback
  • 17 - Fullback Finisher
  • 18 - Defensive Fullback
  • 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 7 bits Edited Settings Whether one of the player's settings was edited (1) or not (0).

Bitmask with 7 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
  • Bit 5: Unedited Player
  • Bit 6: Edited Motion
PES: must be in range [0, 1] (full range) 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 bits Unknown B 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


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.