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 |
Difference between revisions of "Talk:Pro Evolution Soccer 2016/Edit file"
ShiggyGiddy (talk | contribs) (added some stuff from tony) |
|||
Line 77: | Line 77: | ||
== Some stuff from Tony == | == Some stuff from Tony == | ||
Player appearance data | Player appearance data | ||
* 0x04-0x06 Boots | |||
** When the decimal boot ID is converted to binary/bits, you will get 4 parts. The bits used for the boot ID are the letters in the binary string below: | |||
** dddd 0000 bbbb cccc 0000 00aa | |||
** An example boot ID is 7011, in big-endian hex: 13 C5 and in binary: 0001 0011 1100 0101. The boot ID limits make sure that the last the 2 bits (first 2 on the left) are always 00, thus you actually get the following: | |||
** 01 0011 1100 0101 | |||
** Now the first 2 bits on the left are ''aa'' in the string with letters. The next 4 are ''bbbb'', then ''cccc'' and last ''dddd''. So the final string becomes: 0101 0000 0011 1100 0000 0001 | |||
** If you have lower boot ID, for example 234, it's EA in hex. But fill up from the left with 0 until you have 4 character byte string, so 00EA. | |||
* 0x06-0x07 GK Gloves | |||
** The decimal boot ID is converted to little-endian hex and everything is bitshifted 2 bits to the left. | |||
** So for example decimal ID 801 is 21 03 in LE hex and in binary: 0010 0001 0000 0011, and then bitshifted: 1000 01xx 0000 1100 | |||
** The x bits are used for the boot ID | |||
* 0x14 Spectacles | * 0x14 Spectacles | ||
** | ** 6-7 sleeve season style | ||
** | ** 3-5 style of glasses (000 = none) | ||
** | ** 0-2 glasses frame color | ||
[[File:Glasscolors.png]] | |||
* 0x2D Skin (and other things) | * 0x2D Skin (and other things) | ||
** 3-4 cheek data | |||
** | ** 0-2 skin ID (full range, where 0 and 7 are transparent skin textures (in the Gamma DLC) and thus allow custom skin texture) |
Revision as of 14:43, 26 December 2015
Here is some contribution:
Structure of EDIT00000000
- Header - The header may vary in length. There are some patches where the logo inside this file is changed, so the header length changes.
- Player entries start at offset 0x10AAA. There are 25000 entries.
Each entry has 112 bytes (0x70). - Player extra info (appearance mainly) entries start at offset 0x2BC42A. There are 25000 entries. Each entry has 72 bytes (0x48).
- Team entries start at offset 0x473B6A. There are 850 entries. Each entry has 456 bytes (0x1C8).
- Championships entries start at 0x4D257A. There are 100 entries. Each entry has 92 bytes (0x5C). Contains name and ball id.
- Stadium entries start at 0x4D496A. There are 100 entries. Each entry has 128 bytes (0x80).
- To be confirmed: Uniform entries start at 0x4D7B6A. There are 2500 entries. Each entry has 88 bytes (0x58).
- Teams roster entries start at 0x50D6CA. There are 850 entries. Each entry has 164 bytes (0xA4).
- Leagues roster entries start at 0x52F752. There are 712 entries, each entry has 4 bytes and is a team id. The league slots are fixed. It is a mess. I will post about it later.
- To be confirmed: Teams tactics entries start at 0x530272. There are 850 entries. Each entry has 520 bytes (0x208).
- To be confirmed: From 0x59C102 to the end there is nothing.
User:Heringer 08:17, 23 December 2015
I confirmed via unit testing that the position enumeration is correct and all players has values from 0 to 12. Though, the rule about the player offset 0x1F:7 does not seem to be correct.
User:Heringer 14:57, 23 December 2015
Thank you! I will look into it and start adding things once Christmas is over. I am a bit surprised that the position enumeration is correct, because when I looked at it from in-game memory all left and right positions where swapped. Then again, I never confirmed through the save file. --ShiggyGiddy (talk) 08:42, 24 December 2015 (UTC)
Oh, man, you are rigth about the swapped positions. I did not notice it before, sorry. Just swap them and everything will be right. I used my enumeration from PES2015. I thought it was equal to your values, but there is really this difference (L/R swapped).
Here is it:
public enum Position { GK = 0, CB = 1, LB = 2, RB = 3, DMF = 4, CMF = 5, LMF = 6, RMF = 7, AMF = 8, LWF = 9, RWF = 10, SS = 11, CF = 12 }
User:Heringer 14:39, 24 December 2015
On PES2015, the bit you called "Unknown B (0x17:7)" was a flag to indicate if the player was edited or not.
User:Heringer 15:24, 24 December 2015
The playable position seems to be:
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: Defensive Midfielder, Bits 12-13: Centre Midfielder, Bits 14-15: Left Midfielder, Bits 16-17: Right Midfielder, Bits 18-19: Right Back, Bits 20-21: Left Back, Bits 22-23: Centre Back, Bits 24-25: Goalkeeper
Everything else in player entry seems to be ok as you defined.
In the team entry, i can tell you:
const uint OFFSET_COACH_NATION = 0xC; const uint LENGTH_COACH_NATION = 0x2; const uint OFFSET_TEAM_NATION = 0x8; const uint LENGTH_TEAM_NATION = 0x2;
Some stuff from Tony
Player appearance data
- 0x04-0x06 Boots
- When the decimal boot ID is converted to binary/bits, you will get 4 parts. The bits used for the boot ID are the letters in the binary string below:
- dddd 0000 bbbb cccc 0000 00aa
- An example boot ID is 7011, in big-endian hex: 13 C5 and in binary: 0001 0011 1100 0101. The boot ID limits make sure that the last the 2 bits (first 2 on the left) are always 00, thus you actually get the following:
- 01 0011 1100 0101
- Now the first 2 bits on the left are aa in the string with letters. The next 4 are bbbb, then cccc and last dddd. So the final string becomes: 0101 0000 0011 1100 0000 0001
- If you have lower boot ID, for example 234, it's EA in hex. But fill up from the left with 0 until you have 4 character byte string, so 00EA.
- 0x06-0x07 GK Gloves
- The decimal boot ID is converted to little-endian hex and everything is bitshifted 2 bits to the left.
- So for example decimal ID 801 is 21 03 in LE hex and in binary: 0010 0001 0000 0011, and then bitshifted: 1000 01xx 0000 1100
- The x bits are used for the boot ID
- 0x14 Spectacles
- 6-7 sleeve season style
- 3-5 style of glasses (000 = none)
- 0-2 glasses frame color
- 0x2D Skin (and other things)
- 3-4 cheek data
- 0-2 skin ID (full range, where 0 and 7 are transparent skin textures (in the Gamma DLC) and thus allow custom skin texture)