Cave Waverider

WWE 2k18 Data Breakdown and Analysis

Recommended Posts

Cave Waverider

WWE 2k18 Data Breakdown and Analysis

This thread has been created to post our findings on various data files relevant to modding like .pofo, .moveset, .team_info, .attire_names, .title_history, .title_info and more. I'll be working on figuring it out myself, but it would be great if we could undertake a collaborative effort to speed things up considerably.
It's imperative that we figure out the most important things, otherwise the development of the Data Editor for WWE 2k18 and other free modding tools may not be able to proceed.
I'll update all findings on the WWE 2k18 Data Analysis on the Smacktalks Community Wiki page, make sure to check it our regularly for the latest findings!

If you have any additions, corrections, etc., please reply to this thread, state which file type you wish to add to and give us the decimal offset of the byte(s) in the file and what it's function is. Help in identifying the yet Unknown Bytes and values would be greatly appreciated. Click here to find some instructions on how you can help identify the values.

Thank you very much!

Links to Wiki Pages or posts with Analysis and the Breakdown for each file type [current status]:

Resources and Links:

  • WWE 2k18 Data Analysis on the Smacktalks Community Wiki
    The up-to-date Analyzed Data may be found on this Wiki page.
     
  • WWE 2k18 memory table
    Use this with cheat engine to look at/extract .pofo, .moveset, .team_info data and monitor your changes in real time.
     
  • WWE 2k17 Data Breakdown and Analysis
    The WWE 2k17 version of this thread. Head over there to see how the files were structured in WWE 2k17 which can be handy when you try to figure things out by comparing the files from this and the current game.
     
  • WWE 2k16 Data Breakdown and Analysis
    The WWE 2k16 version of this thread. Head over there to see how the files were structured in WWE 2k16 which can be handy when you try to figure things out by comparing the files from this and the current game.
  • Like 5
  • Too Sweet 1

Share this post


Link to post
Share on other sites
Cave Waverider

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):

 

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 Wrestler + (file length -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.

Share this post


Link to post
Share on other sites
kim666

My findings about the "real" moveset, no entrance etc, just moves.

The "real" moveset starts at Offset 0000068A in a 2K18 moveset file.

In a 2K17 moveset file it starts directly at Offset 0. 

I copied a 2k17 moveset from Offset 0  till Offset 00000391 and paste it into a 2k18 moveset at Offset 0000068A.

This "converted" moveset worked fine in 2k18. That means most of the move Offsets from 2k17 are still the same in 2k18. Just 68A Bytes later.

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
Cave Waverider
17 minutes ago, kim666 said:

My findings about the "real" moveset, no entrance etc, just moves.

The "real" moveset starts at Offset 0000068A in a 2K18 moveset file.

In a 2K17 moveset file it starts directly at Offset 0. 

I copied a 2k17 moveset from Offset 0  till Offset 00000391 and paste it into a 2k18 moveset at Offset 0000068A.

This "converted" moveset worked fine in 2k18. That means most of the move Offsets from 2k17 are still the same in 2k18. Just 68A Bytes later.

Great, thank you very much. I've thought as much glancing over it, but haven't tested it out. Thanks for confirming it, that should save quite a bit of work. :)

It looks like some of the entrance stuff was moved above the actual moves, hopefully the structure hasn't changed all that much.

  • Like 1

Share this post


Link to post
Share on other sites
kim666

Yes, the entrance part starts now at Offset 0000014C. It's also nearly the same, they just filled it up with some more 00s.

Share this post


Link to post
Share on other sites
Youngmeezy

40-41 seems to be the actual weight in pounds of the superstar

  • Thanks 1

Share this post


Link to post
Share on other sites
Cave Waverider

Thanks for the pointers and help so far, guys, please keep them coming.

I've analyzed the first part of the .pofo so far. Still quite a bit to go and I have to take a break, but you can see the progress here.

 

  • Like 1

Share this post


Link to post
Share on other sites
Cave Waverider

Alright, spent the past couple of days and nights with .pofo analysis. I'm exhausted due to little to no sleep, but at least I've been able to figure out most of the stuff. There are still a bunch of unknown values, however. Please have a look here and let me know if you figure out what any of the unknown values stand for! Thank you very much!

  • Like 2

Share this post


Link to post
Share on other sites
Youngmeezy

one thing i noticed this year is that attributes for caws can go up to 255. pretty much useful for people that want to build a superstar with 255 strength because that is determined in squash matches this year

Edited by Youngmeezy
  • Thanks 1

Share this post


Link to post
Share on other sites
Youngmeezy

I noticed the height for caws in 08-09. Im pretty sure thats different for normal superstars

  • Thanks 1

Share this post


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

I noticed the height for caws in 08-09. Im pretty sure thats different for normal superstars

Hm. Are you sure you looked at the proper start value for the CAW? Since the height appears to be in bytes 06-07 for regular wrestlers, you might just have taken a byte more at the beginning. I haven't had a chance to look at CAWs yet since I haven't had time to make any so far.

Share this post


Link to post
Share on other sites
Youngmeezy
23 hours ago, Cave Waverider said:

Hm. Are you sure you looked at the proper start value for the CAW? Since the height appears to be in bytes 06-07 for regular wrestlers, you might just have taken a byte more at the beginning. I haven't had a chance to look at CAWs yet since I haven't had time to make any so far.

you're right that's my bad i lined them up wrong.

  • Thanks 1

Share this post


Link to post
Share on other sites
TheVisitorX

@Cave Waverider I could try to send you an updated countries/states/cities list if you want. There were some changes with 2K18. They have removed some entries and added some new... I only need some time to get that values from the game and write them all down. It was really time consuming last year.

Edited by TheVisitorX

Share this post


Link to post
Share on other sites
Cave Waverider
18 minutes ago, TheVisitorX said:

@Cave Waverider I could try to send you an updated countries/states/cities list if you want. There were some changes with 2K18. They have removed some entries and added some new... I only need some time to get that values from the game and write them all down. It was really time consuming last year.

That would be lovely.

Share this post


Link to post
Share on other sites
pozzum

@Cave Waverider I added a Custom match tab on my memory sheet they are pretty short and I haven't done much breakdown of it, but I saw you mention it in another thread so I wanted to bring it up.

Share this post


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

@Cave Waverider I added a Custom match tab on my memory sheet they are pretty short and I haven't done much breakdown of it, but I saw you mention it in another thread so I wanted to bring it up.

That's great, thank you very much! I've devised a file type with the extension .match for custom matches which I'm planning to add a tab for in the Data Editor and have created a Wiki page for it's Analysis/Breakdown. The link has also been added to the top post.

  • Like 2

Share this post


Link to post
Share on other sites
AznBlusuazn

@Cave Waverider the entrance music offset is 392-395 in the .moveset :)

Also I don't know if it is my own experimenting that caused this issue, but it doesn't appear that I can edit movesets in game with a ch in slot 256.  I get like x of 0 options available for all the categories.

unknown.png

I worked around this by modifying Rock's moveset and copying it over.  :shrug: 

Hope this is helpful.

  • Thanks 1

Share this post


Link to post
Share on other sites
Cave Waverider

A bit of an update. I've figured out most of the .pofo and .team_info (made some major revisions to the latter) as well as a lot of the non-Moveset related stuff (Entrance, Victory, Managers, Teams, Attires, etc.) in the .moveset file. You can have a look here.
The Advanced Entrance Data and actual Moveset in the .moveset file is still a big chunk of work, I'd appreciate it if there was some help with that.

Share this post


Link to post
Share on other sites
Cave Waverider

An Update about .moveset files. They were previously outlined in a wrong way as they included parts of unrelated Data at the beginning (316 Bytes) and the end (40 Bytes). This could have lead to big problems, so we've adjusted it to what appear to be the correct boundaries.

The Moveset file's corrected start value is 316 Bytes later than it was outlined before and it ends 40 Bytes sooner. Thus it's length is 3300 Bytes (it was previously believed to be 3656 Bytes).

I've already corrected the Addresses in @pozzum's Memory table for the Movesets of both Superstars and CAWs. The .moveset Breakdown and Analysis Wiki Page  has been updated with the new Offsets as well. Just make sure to re-extract fresh moveset files before you continue (or delete the first 316 Bytes and the last 40 Bytes from the previous Moveset files).

  • Thanks 1
  • Glorious 1

Share this post


Link to post
Share on other sites
Cave Waverider

Good news, I've identified all the Advanced Entrance Data Bytes. 

What's mostly needed now in the .moveset is the actual Moveset. I've put the old actual Moveset Data from WWE 2k17 on the Moveset Analysis Wiki Page as a placeholder, as much may still be in the same Order. If you wish to help, focus on figuring out the new moves in WWE 2k18 (including pre-match warmup, new OMG moves, etc.) and maybe try to verify which parts of the 2k17 moveset are still valid.

You can check out the progress here.

  • Too Sweet 1

Share this post


Link to post
Share on other sites
Cave Waverider

I've found the byte offsets for Pre-Match Warmup 1-5, Pre-Match Title Match (Champion), Pre-Match Title Match (Challenger) 1 & 2, Stage (toss), Semi-Trailer, Top Rope Climb Front, Top Rope Climb Back, Car Finisher and added them to the .moveset Analysis Wiki page.
Are there any other new moves I'm missing?

  • Like 1

Share this post


Link to post
Share on other sites
Freon

@Perfectplex @pozzumSomething i thought might interest you guys.  Looking at the WIKI Pofo Breakdown 488-491.  I could be wrong but a simple extraction from Kalisto should verify that for you.  Long story short as i was telling @Perfectplex yesterday, i was doing some surgery between Kalisto's Pofo and a Rey Mysterio MOD.  Just a few minutes ago I was fighting in a venue that unfortunately i fail to recall at the moment.  I will test again to see if it was WCW or ECW but after i thought i had gotten rid of all NAME tags referring to Kalisto, in this particular Venue, Rey Mysterio came in with Kalisto's name during the Entrance on the plate.  Looking at the extracted PoFO's side by side and referencing the 2K18 String Sheet, I found the culprit.

Line 488-489    Hex A211   was placing Kalisto's name in this venue on the plate.  This may be helpful as its listed as Unknown but it seems to plug in the Superstars name.

EDIT---

So after going through almost every venue, the only two venues that read the nameplate during the entrance from Line 488-489 was RAW and RAW16 

Edited by Freon
  • Thanks 1

Share this post


Link to post
Share on other sites
Cave Waverider

Hm, so it's a seventh Name? How odd. A nice find nonetheless. Thanks @Freon, I'll add it to the Wiki page.

I wonder if the Name at Bytes 20-23 is also related to certain arenas only. Would someone be so kind and check it?

I guess this will postpone the closed testing phase of Data Editor some. ;)

Share this post


Link to post
Share on other sites
pozzum
8 hours ago, Freon said:

@Perfectplex @pozzumSomething i thought might interest you guys.  Looking at the WIKI Pofo Breakdown 488-491.  I could be wrong but a simple extraction from Kalisto should verify that for you.  Long story short as i was telling @Perfectplex yesterday, i was doing some surgery between Kalisto's Pofo and a Rey Mysterio MOD.  Just a few minutes ago I was fighting in a venue that unfortunately i fail to recall at the moment.  I will test again to see if it was WCW or ECW but after i thought i had gotten rid of all NAME tags referring to Kalisto, in this particular Venue, Rey Mysterio came in with Kalisto's name during the Entrance on the plate.  Looking at the extracted PoFO's side by side and referencing the 2K18 String Sheet, I found the culprit.

Line 488-489    Hex A211   was placing Kalisto's name in this venue on the plate.  This may be helpful as its listed as Unknown but it seems to plug in the Superstars name.

EDIT---

So after going through almost every venue, the only two venues that read the nameplate during the entrance from Line 488-489 was RAW and RAW16 

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

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.