Cave Waverider

WWE 2k18 Data Breakdown and Analysis

Recommended Posts

Freon
1 hour ago, pozzum said:

That is very weird I can only imagine some formatting for some being two lines vs being a single line.

Possibly, or it could be a remnant from a long time ago that never got changed.  Since we know they keep old entrances from wrestlers who are no longer in the game. Perhaps the editing for them was a hassle, so they just coded a line to plug it in.  On a side note, Rey Mysterio's complete entrance with the Pyro technics explosion left & right worked fine.  Funny thing is on some venues, the Pyro explosion happens in the audience like Batista.  Interesting nonetheless.

Share this post


Link to post
Share on other sites
Cave Waverider
3 hours ago, Freon said:

Possibly, or it could be a remnant from a long time ago that never got changed.  Since we know they keep old entrances from wrestlers who are no longer in the game. Perhaps the editing for them was a hassle, so they just coded a line to plug it in.  On a side note, Rey Mysterio's complete entrance with the Pyro technics explosion left & right worked fine.  Funny thing is on some venues, the Pyro explosion happens in the audience like Batista.  Interesting nonetheless.

Although I have noticed that alot of things in WWE 2k18's .pofo and .moveset files resemble the structure of WWE 2k15 and WWE 2k16 more than they did 2k17, this one seems to be a new one. It's really odd that there are so many name strings this year, so different formatting for some would make sense, I guess.
I think @pozzum  is onto something here. I also think this discovery might be important for string research, since it's yet another "duplicate" set of string for wrestlers that is actually used by the game.

  • Like 1

Share this post


Link to post
Share on other sites
Cave Waverider

I've mostly analyzed and broken down the .match file type for custom matches. Feel free to have a look at it on the corresponding Wiki page. I've also updated the correct offsets for custom matches in @pozzum's Create a Match memory sheet.

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites
pozzum
On 11/18/2017 at 6:05 AM, Cave Waverider said:

I've redefined the structure of the .attire_names file to store attire type information for use with the latest version of Data Editor for WWE 2k18 and updated the Wiki page accordingly.

You might have to grab the original but did you happen to find how they made Demon Finn an attire for universe mode only?  He has his demon model as attire 1 on his base slot so I imagine it's like something other than FF or 02 for that Unlock Type.

Share this post


Link to post
Share on other sites
Cave Waverider
4 minutes ago, pozzum said:

You might have to grab the original but did you happen to find how they made Demon Finn an attire for universe mode only?  He has his demon model as attire 1 on his base slot so I imagine it's like something other than FF or 02 for that Unlock Type.

I don't think special attires for universe, career, hidden etc. are defined in the misc file. You can still unlock them normally with the other flags in their slots, though (if they use standard .pac conventions, at least). It could be that there are values for other situations, but I haven't actively looked for them.

Share this post


Link to post
Share on other sites
pozzum
38 minutes ago, Cave Waverider said:

I don't think special attires for universe, career, hidden etc. are defined in the misc file. You can still unlock them normally with the other flags in their slots, though (if they use standard .pac conventions, at least). It could be that there are values for other situations, but I haven't actively looked for them.

I only say it because Finn Has one set to Universe Mode only by default, so that should be something detectable in the default file if you still have a copy.

Share this post


Link to post
Share on other sites
Cave Waverider
19 minutes ago, pozzum said:

I only say it because Finn Has one set to Universe Mode only by default, so that should be something detectable in the default file if you still have a copy.

I've looked, but it doesn't seem like there is anything nothing with any of his IDs in the COS section in the original misc (there are just the 9 that have accessible alternate attires, it seems). It's just the nine that have the defaults. It must be defined elsewhere, I suspect in the mysterious section wherever character specific things like what media, animations, etc. alternate attires can use, types of trons are.

Share this post


Link to post
Share on other sites
Cave Waverider

I've redefined the specificaiton of the .attire_names file once more. It's now the full 168 bytes used by the misc file and includes Wrestler ID and number of Unlocked attires to support the latest features of the newest Data Editor closed beta build. This should hopefully be the final change of the spec. :)

  • Like 3

Share this post


Link to post
Share on other sites
olympic_hurz
On 30.9.2017 at 1:05 AM, Cave Waverider said:

Since people have been asking how they could help, here are some steps to do so (there may be better, more advanced ways to do it more efficiently, however):

  Reveal hidden contents

Figuring out the bulk of the .pofo/.moveset/.team_info, etc. isn't particularly difficult once you get the hang of it (although it should be easier once Custom Character Tools is released), but it is incredibly time consuming as there are tons of bytes and values to figure out one by one (last year I spent several weeks often working day and night on it to figure everything out - sadly alot has changed again this year, so it all has to be done again ).

Basically, what you need for it is the full version of the game, Cheat Engine, and Pozzum's memory table. You'll also want to look at the WWE 2k18 Data Analysis Page to see which things are already identified so you can skip these things.

How you can figure things out:

  1. Ensure Steam isn't running (important!) and backup your entire Save game Folder ( ...\Steam\SteamApps\userdata\<userId>\664430 ), copy it somewhere outside the Steam directory.
  2. Install WWE 2k18 and Cheat Engine.
  3. Start Steam.
  4. In Steam click Start->Go Offline and restart Steam in Offline Mode to prevent a potentially screwed save game from being uploaded to the cloud.
  5. Start WWE 2k18.
  6. Task out of the game (You might have/want to press CTRL+Return to switch to Windowed mode first).
  7. Start Cheat Engine.
  8. Click on the "Click process to open" icon.
  9. Select the one that contains WWE2k18_x64.exe
  10. Click "Open". This will hook Cheat Engine to WWE 2k18's memory.
  11. Click on Memory View.
  12. Right-click in the field of Hex values and select "Go to Address".
  13. To research .pofo and .moveset files, open Pozzum's memory table "Superstar Sheet" scroll down to one of the wrestlers from ID 100 on (100 is The Rock, so you can just use that). In the same line as your Wrestler's Wrestler ID/Name, copy the value from the column "Moveset Start Hex" (for .moveset), "Pofo Start Hex" (for .pofo) column.
    For .team_info files go to the "Team Info" Sheet of the same memory table.  In the same line as your Tag Team's ID name, copy the value from the column "Team Start Hex".
    For .match files go to the "Match" Sheet of the same memory table.  In the same line as your Custom Matche's Slot, copy the value from the column "Team Start Hex".
  14. Paste the value into the "Go to Address" field of Cheat Engine's memory editor and click OK.
  15. This will take you to the start of the Pofo/Moveset for the wrestler with the ID you choose, or the Team Info of your chosen team, Match of the saved custom match, etc.
     
  16. Task back into the game, best to keep it windowed and running side-by-side with the cheat engine memory window.
  17. For Moveset research, go either to Creations->Moveset (for the moves) or Creations->Entrance (for the entrance - Easy and Advanced use different addresses so you'd have to check out all of those), Creations->Victory in the game. The .moveset file contains both actual moveset and entrance, victory data, managers, team, attire selection info.
    For .pofo, go MyWWE->Superstars and change Values for your wrestler there.
    For .team_info go to MyWWE->Teams.
    For Match Types go to Creations->Match Types.
  18. In the game, select the wrestler you have loaded the moveset memory region (if you loaded the memory of Wrestler ID 100, load the Rock in the game - just focus on one wrestler, that should be enough).
  19. Change a single value and save the Moveset/Entrance/Victory/Superstar/Match (this will often take you back out of the respective in-game Editor, so you'll have to enter it again for the next value).
  20. Observe the memory region and see which value changed (the changed value will blink for a second in cheat engine - keep in mind that the moveset is long, so you might have to scroll down a bit to find it) and compare the unmodified and modified files. Alternatively, you could also search for changed values, check out cheat engine tutorials on the web to learn how to do that.
  21. Note down the address of the byte that changed and what you changed in the game to have it changed in memory. 
  22. If you aren't good in doing math in the hexadecimal system in your head, open the Windows Calulator, set it to Programmer mode and set it to Hexadecimal, then subtract the starting address of the moveset from the address of the changed value to get the Byte number (look at the Decimal result). You then note down/post the Byte number(s) (depending on how many bytes got changed for the thing you changed in the game), have a look how I did it in this thread, where you then also post your results. Also make sure to check the breakdown before you start to see which values/settings may already be figured out so you won't have to tackle those.
  23. Alternatively you can also extract the memory region of the .pofo, .moveset, .team_info, .match, etc. (Start Hex of the Wrestler to Start Hex of the next Wrestler-1 without cheat engine header via Save memory Region in Cheat Engine's memory editor), open it in a Hex Editor like HxD and every time after a change and compare the unmodified one to the modified one (this method might be the way to go once CCT is released, it's a bit tedious with cheat engine). 
  24. Go back to step 16. and rinse and repeat by changing other Unknown things in the Moveset/Entrance settings until everything that's available is figured out.
     
  25. When done, exit the game.
  26. Exit the game, exit Steam.
  27. Replace your save folder (...\Steam\SteamApps\userdata\<userId>\664430) with the backed up save folder (Steam must be off when you replace it, or it will corrupt).
  28. Post your findings with bytes (start-end) and names of the values as reply in this thread.

This will allow you to at least figure out the known values, which already is a lot. With hundreds and thousands of values It's alot of time consuming work. As for the unknowns, it's a process of trial and error, but it's best to just focus on the known values that you can set in the game first, the rest is secondary.

What you can also be helpful is have a look at the .moveset of the same Wrestler in WWE 2k17 and see if there are any structural similarities to get an idea where to look for what in memory.

i have got problems extracting moveset files via cheatengine following your description (subtract nex start hex -1 etc) with the (updated) memory sheet. wheni try to open them in you data editor, i get this message: "critical error. Illegal file size ... etc." what do i do wrong? thanks in advance for your help... :-)

 

Share this post


Link to post
Share on other sites
Cave Waverider
5 minutes ago, olympic_hurz said:

i have got problems extracting moveset files via cheatengine following your description (subtract nex start hex -1 etc) with the (updated) memory sheet. wheni try to open them in you data editor, i get this message: "critical error. Illegal file size ... etc." what do i do wrong? thanks in advance for your help... :-)

 

The file size must be wrong.

That said, there is no need to extract these files with cheat engine anymore, just use Custom Character Tools 2018 to export it into Data Editor.

Share this post


Link to post
Share on other sites
olympic_hurz
7 minutes ago, Cave Waverider said:

The file size must be wrong.

That said, there is no need to extract these files with cheat engine anymore, just use Custom Character Tools 2018 to export it into Data Editor.

Ok, will try this. i just like hacking around with cheateninge - feels more lika being a pro... ;-) and the the pofos worked well, so i think there must be something wrong in the memory sheet

Share this post


Link to post
Share on other sites
Cave Waverider
59 minutes ago, olympic_hurz said:

Ok, will try this. i just like hacking around with cheateninge - feels more lika being a pro... ;-) and the the pofos worked well, so i think there must be something wrong in the memory sheet

It's good for practice, but it's safer, faster, less of a hassle and more reliable to just use tools when available.

I think that since I wrote the how to months ago we've figured out there is a section between the moveset files which we had previously mistaken for being part of the moveset. Thus the end address for the moveset is no longer start address of the next moveset -1. The following formula should work, though:

MovesetEndAddress = MovesetStartAddress + (MovesetLength - 1)

Share this post


Link to post
Share on other sites
olympic_hurz
10 hours ago, Cave Waverider said:

It's good for practice, but it's safer, faster, less of a hassle and more reliable to just use tools when available.

I think that since I wrote the how to months ago we've figured out there is a section between the moveset files which we had previously mistaken for being part of the moveset. Thus the end address for the moveset is no longer start address of the next moveset -1. The following formula should work, though:

MovesetEndAddress = MovesetStartAddress + (MovesetLength - 1)

Ah... I see. So i would have to look up, what length a moveset has (in general?!). Ok then, now my ambition is woken. Imagine, there is nobody making such great tools as you do in one of the next editions - so ist always useful to learn some basics... ;-)

Ok, got it now! thanks for your support! :-)

Edited by olympic_hurz
  • Too Sweet 1

Share this post


Link to post
Share on other sites
fatpapas

Sorry for the noob question, and again, GREAT WORK! but I've been wondering.. how the hell do you guys map the game for all those memory addresses we all love and enjoy?

Share this post


Link to post
Share on other sites
Cave Waverider
1 hour ago, fatpapas said:

Sorry for the noob question, and again, GREAT WORK! but I've been wondering.. how the hell do you guys map the game for all those memory addresses we all love and enjoy?

Using Cheat Engine and it's functions to look at the memory while we change things in the game, the Hex Editor, comparisons with files and memory structures from previous games and lots of trial and error.

Share this post


Link to post
Share on other sites
fatpapas
2 hours ago, Cave Waverider said:

Using Cheat Engine and it's functions to look at the memory while we change things in the game, the Hex Editor, comparisons with files and memory structures from previous games and lots of trial and error.

Sounds too much to my head, awesome job!

Share this post


Link to post
Share on other sites
Perfectplex

Byte 34 (pofo) and byte 38 (dat) is which pack the character belongs to , 00 (00), 0A (10) and 1E (30).

Edited by Perfectplex
  • Thanks 1

Share this post


Link to post
Share on other sites
Perfectplex

Byte 35 (pofo) / byte 39 (dat) is much like above, only its 04 for Kurt Angle Pack, 05 is Cena Nuff Pack.

 

Looking into unknown bytes 37,38 and 39, here are the ones that dont use 01 00 00

All Others			01 00 00

64 00	The Rock		01 00 0A 
65 00	Steve Austin '97	04 01 00 
67 00 	Undertaker		03 00 0A 
6B 00	Kane			03 00 0A 
6F 00	JBL			04 00 00 
71 00	Rob Van Dam '06		05 00 00 
73 00	Andre the Giant		07 00 06 
74 00	Lita			08 00 04 
75 00	Big Show		04 01 06 
76 00	Trish Stratus		01 00 04 
79 00	John Cena		04 00 00 
7E 00	Stephanie McMahon	08 00 04 
80 00	Shane McMahon		0C 00 00 
81 00	Batista '10		01 00 09 
82 00	Randy Orton		06 00 00 
83 00	Kofi Kingston		00 00 00 
84 00	Bret Hart '97		02 00 00 
85 00	Mark Henry		09 00 0B 
8C 00	Dusty Rhodes		01 00 0B 
8E 00	British Bulldog		03 00 0A 
8F 00	Luke Gallows		01 00 0A 
97 00	Big Boss Man '91	01 00 0B 
9A 00	Cactus Jack '98		01 00 0B 
9B 00	Mankind			01 00 0B 
9C 00	Dude Love		01 00 0B 
9E 00	Ultimate Warrior	01 00 0A 
A1 00	? Superstar		08 00 04 
A7 00	Sheamus			04 00 00 
A8 00	Tyson Kidd		01 00 08 
AC 00	Natalya			08 00 0C 
AE 00	Alicia Fox		08 00 00 
AF 00	Tamina			08 00 0C 
B3 00	Jimmy Uso		02 00 08 
B4 00	Jey Uso			05 00 00 
B6 00	Kevin Nash		04 00 0A 
B8 00	Vader			03 00 0B 
B9 00	Heath Slater		01 00 08 
BA 00	Sin Cara		05 00 05 
BB 00	Brock Lesnar		01 00 09 
BC 00	The Rock '01		01 00 0A 
BD 00	Undertaker		01 00 0A 
BF 00	Kane '98		03 00 0A 
C0 00	Big Show '00		07 00 06 
C1 00	Naomi			08 00 0C 
C9 00	Dean Ambrose		03 00 00 
CA 00	Roman Reigns		04 00 00 
CE 00	Paul Heyman		01 00 0B 
D1 00	Big E			04 00 09 
D3 00	Brie Bella		08 00 04 
D4 00	Nikki Bella		08 00 04 
D5 00	Summer Rae		08 00 07 
D7 00	Diesel			01 00 0A 
D8 00	Scott Hall		07 00 00 
DA 00	Bray Wyatt		06 00 0B 
DC 00	Erick Rowan		07 00 00 
DD 00	Luke Harper		07 00 00 
DE 00	Lex Luger		04 00 00 
DF 00	Bam Bam Bigelow		07 00 0B 
E0 00	DDP '98			04 00 00 
E1 00	Sting '99		04 00 00 
E2 00	Sting '91		04 00 00 
E3 00	Viktor			04 00 00 
E4 00	Konnor			04 00 00 
E8 00	Rusev			0B 00 0A 
EA 00	Corey Graves		03 00 00 
EB 00	Sami Zayn		01 00 08 
EC 00	Lana			08 00 04 
ED 00	Paige			08 00 07 
EE 00	Emma			08 00 04 
EF 00	Daniel Bryan		02 00 08 
1B 01	Brody Tyson		06 00 00 
1C 01	?			07 00 00 
1D 01	Stephanie NPC?		08 00 04 
1E 01	?			08 00 04 
25 01	Kalisto			05 00 05 
28 01	Renee Young		08 00 04 
2C 01	Rikishi			07 00 0B 
2E 01	Stephanie McMahon	08 00 04 
33 01	Finn Balor		01 00 08 
34 01	Hideo Itami		01 00 08 
35 01	Kevin Owens		01 00 0B 
36 01	Samoa Joe		01 00 0B 
37 01	Tyler Breeze		01 00 08 
38 01	Alundra Blayze		01 00 04 
3B 01	Earthquake		01 00 0B 
3F 01	Typhoon			01 00 0B 
43 01	AJ Styles		01 00 0A 
44 01	Becky Lynch		01 00 04 
45 01	Charlotte		01 00 04 
46 01	Sasha Banks		01 00 04 
4D 01	Alexa Bliss		01 00 04 
4E 01	Asuka			01 00 0C 
4F 01	Bayley			01 00 04 
50 01	Carmella		01 00 04 
51 01	Dana Brooke		01 00 0C 
52 01	Apollo Crews		01 00 09 
53 01	Finn Balor Demon	01 00 08 
55 01	Nia Jax			01 00 0A 
58 01	Big Boss Man '99	01 00 0B 
5C 01	Ivory			01 00 04 
5D 01	Jacqueline		01 00 0C 
60 01	Papa Shango		01 00 0A 
61 01	Cactus Jack '92		01 00 0B 
65 01	Lady Accomplice		01 00 04 
DD 01	Lars Sullivan		07 00 00 

 

Edited by Perfectplex
  • Thanks 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.