The logo competition for the 2025 4chan Winter Cup is now taking submissions.
The deadline is January 6th, 23:59 UTC. Logos will be placed in this gallery to facilitate discussion. This will be followed by a polling period to determine which logo will be used.

Please send all submissions to Potatotron. You must supply a high-res PNG file (5000x5000 limit) and the original multi-layer source file.

Cloverleaf logo: .png .svg

Cloverball logo: .ai .png .svg

Pro Evolution Soccer 2016/Edit file

From Rigged Wiki
Revision as of 14:53, 20 December 2015 by ShiggyGiddy (talk | contribs) (Added note regarding weird bit behavior)
Jump to navigation Jump to search
2016 4chanlogo.png
Pro Evolution Soccer 2016
Game
Rules
Info
Tools
Modding

The save game is called EDIT00000000 and can be found in %HOMEPATH%\documents\KONAMI\Pro Evolution Soccer 2016\save.

It is encrypted and thus, cannot be simply edited directly. Also, when moving from PES15 to PES16, Konami changed both the file names and the ecryption used for save games.

Tools

pes16decrypter

The first decrypter, called pes16decrypter, is a command-line tool and was written by members of the 4chan Cup community. It is available on GitHub. A binary download can also be found there.

The 4CCC maintains its own fork here. Be sure to check both as occasionally one might be ahead of the other.

Hex editors

After decrypting the save file, you may use a hex editor to change a few values yourself. Please keep in mind however that it is very easy to break the save game, so be careful. This is a good and simple way to change player names, for example.

Save game editors

Since the save was not decrypted until recently, there are currently no save game editors. This is expected to change in the near future once the PES modding community catches up with recent developments.

Notes

Structure of EDIT00000000

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

  • Header
  • Player entries
  • unkown
  • Team entries
  • unknown

Header

Length: 76 bytes

  • 52 bytes - unknown
  • 2 bytes - Number of players
  • 22 bytes - unknown

Player entry

Length: 112 bytes

Offset (byte:bit) Length Description Format Enforced limits
0x00:0 4 bytes Player ID
0x04:0 4 bytes Commentary Name References a player ID
0x08:0 2 bytes Unknown Always 0xFFFF
0x0A:0 2 bytes Country
0x0C:0 8 bits Height (cm) PES: must be in range [155, 210]
0x0D:0 8 bits Weight (kg) PES: must be in range [max(30, Height - 129), Height - 81]
0x0E:0 8 bits Motion: Goal Celebration 1 0 = OFF PES: must be in range [0, 122]
0x0F:0 8 bits Motion: Goal Celebration 2 0 = OFF PES: must be in range [0, 122]
0x10:0 7 bits Attacking Prowess PES: must be in range [40, 99]
0x10:7 7 bits Defensive Prowess PES: must be in range [40, 99]
0x11:6 7 bits Goalkeeping PES: must be in range [40, 99]
0x12:5 7 bits Dribbling PES: must be in range [40, 99]
0x13:4 4 bits Motion: Free Kick Value minus one
0x14:0 7 bits Finishing PES: must be in range [40, 99]
0x14:7 7 bits Low Pass PES: must be in range [40, 99]
0x15:6 7 bits Lofted Pass PES: must be in range [40, 99]
0x16:5 7 bits Header PES: must be in range [40, 99]
0x17:4 3 bits Motion: Form Value minus one PES: must be in range [0, 7] (full range)
0x17:7 1 bit Unknown
0x18:0 7 bits Swerve PES: must be in range [40, 99]
0x18:7 7 bits Catching PES: must be in range [40, 99]
0x19:6 7 bits Clearing PES: must be in range [40, 99]
0x1A:5 7 bits Reflexes PES: must be in range [40, 99]
0x1B:4 2 bits Injury Resistance Value minus one PES: must be in range [0, 2]
0x1B:6 2 bits Unknown
0x1C:0 7 bits Body Balance PES: must be in range [40, 99]
0x1C:7 7 bits Kicking Power PES: must be in range [40, 99]
0x1D:6 7 bits Explosive Power PES: must be in range [40, 99]
0x1E:5 7 bits Jump PES: must be in range [40, 99]
0x1F:4 3 bits Motion: Arm Movement (dribbling) Value minus one
0x1F:7 1 bit Unknown Seems to be based on Registered Positon:
  • 0 - Registered position is CB
  • 1 - Registered position is not CB
0x20:0 4 bits Registered Position Possible values are
  • 12 - Centre Forward,
  • 11 - Second Striker,
  • 10 - Left Wing Forward,
  • 9 - Right Wing Forward,
  • 8 - Attacking Midfielder,
  • 7 - Left Midfielder,
  • 6 - Right Midfielder,
  • 5 - Centre Midfielder,
  • 4 - Defensive Midfielder,
  • 3 - Left Back,
  • 2 - Right Back,
  • 1 - Centre Back,
  • 0 - Goalkeeper
PES: must be in range [0, 12]
0x20:4 1 bits Unknown
0x20:5 5 bits Playing Style
0x21:2 7 bits Ball Control PES: must be in range [40, 99]
0x22:1 7 bits Ball Winning PES: must be in range [40, 99]
0x23:0 7 bits Coverage PES: must be in range [40, 99]
0x23:7 1 bit Unknown
0x24:0 3 bits Motion: Arm Movement (running) Value minus one
0x24:3 3 bits Motion: Corner Kick Value minus one
0x24:6 2 bits Weak Foot Accuracy Value minus one PES: must be in range [0, 3]
0x25:0 2 bits Weak Foot Usage Value minus one PES: must be in range [0, 3]
0x25:2 26 bits Playable Position An array of 13 2-bit entries with:
  • 0 - C
  • 1 - B
  • 2 - A

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

  • Bits 0-1: Centre Forward,
  • Bits 2-3: Second Striker,
  • Bits 4-5: Left Wing Forward,
  • Bits 6-7: Right Wing Forward,
  • Bits 8-9: Attacking Midfielder,
  • Bits 10-11: Left Midfielder,
  • Bits 12-13: Right Midfielder,
  • Bits 14-15: Centre Midfielder,
  • Bits 16-17: Defensive Midfielder,
  • Bits 18-19: Left Back,
  • Bits 20-21: Right Back,
  • Bits 22-23: Centre Back,
  • Bits 24-25: Goalkeeper
PES: each entry must be in range [0, 2]
0x28:4 2 bits Motion: Hunching (dribbling) Value minus one
0x28:6 2 bits Motion: Hunching (running) Value minus one
0x29:0 2 bits Motion: Penalty Kick Value minus one
0x29:2 7 bits Place Kicking PES: must be in range [40, 99]
0x2A:1 7 bits Speed PES: must be in range [40, 99]
0x2B:0 6 bits Age PES: must be in range [15, 50]
0x2B:6 2 bits Unknown
0x2C:0 7 bits Stamina PES: must be in range [40, 99]
0x2C:7 1 bit Unknown
0x2D:0 4 bits Unknown
0x2D:4 1 bits Stronger Foot Value stands for
  • 0 - Right
  • 1 - Left
0x2D:5 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
0x2E:4 28 bits Player Skills A bitmask with 28 entries:
  • Bit 0 - Scissors Feint
  • Bit 1 - Flip Flap
  • Bit 2 - Marseille Turn
  • Bit 3 - Sombrero
  • Bit 4 - Cut Behind & Turn
  • Bit 5 - Scotch Move
  • Bit 6 - Heading
  • Bit 7 - Long Range Drive
  • Bit 8 - Knuckle Shot
  • Bit 9 - Acrobatic Finishing
  • Bit 10 - Heel Trick
  • Bit 11 - First-time Shot
  • Bit 12 - One-touch Pass
  • Bit 13 - Weighted Pass
  • Bit 14 - Pinpoint Crossing
  • Bit 15 - Outside Curler
  • Bit 16 - Rabona
  • Bit 17 - Low Lofted Pass
  • Bit 18 - Low Punt Trajectory
  • Bit 19 - Long Throw
  • Bit 20 - GK Long Throw
  • Bit 21 - Malicia
  • Bit 22 - Man Marking
  • Bit 23 - Track Back
  • Bit 24 - Acrobatic Clear
  • Bit 25 - Captaincy
  • Bit 26 - Super-sub
  • Bit 27 - Fighting Spirit
PES: at most 10 may be active at once
0x32:0 46 bytes Player Name Null-terminated string

PES: must not exceed 15 characters
Up to 45 characters are handled by the game

0x60:0 16 bytes Print Name Null-terminated string PES: must not exceed 15 characters, uppercase letters only

Note: some settings also change other values within the player entry, e.g. if Registered Position is set to CB it also changes the byte left of it (in one example from 0x89 to 0x09). It is assumed that this behavior occurs for whatever values PES considers to be default.

Team entry

Length: 456

  • 4 bytes - Team ID
  • 60 bytes - unknown
  • 4 bytes - Rival Team 1 (Team ID)
  • 4 bytes - Rival Team 2 (Team ID)
  • 4 bytes - Rival Team 3 (Team ID)
  • 72 bytes - unknown
  • 70 bytes - Team Name (last byte should probably be 00) (length is assumed, not proven)
  • 189 bytes - Team Score Board Name (last byte should probably be 00) (length is assumed, not proven)
  • 0 bytes - probably something else within Team Score Board Name
  • 49 bytes - Manager Name (last byte should probably be 00) (length is assumed, not proven)

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 behavior 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.