Jump to content

TUTORIAL : PORTING OVER MOVE ANIMATIONS - UNDERSTANDING OF THE MOVE ANIMATION AND MOTION DATA STRUCTURE


BlindedByTheGrace

Recommended Posts

Hi,

I will be creating a multi - part tutorial on move animations which I should complete within the next few weeks. First it is important to realise I am not Yukes Animation Studios and I can't answer all questions, but I will try as best as I can. What I am basically doing is sharing as much as I know and have discovered with the community. This will be multipart because I will be starting off with some basics and some explanations. I will also be discussing part of porting move animations in wwe 2k16 and wwe 2k17. This only covers the current gen games, but some of the aspects should still work with the last gen consoles. So I begin

TOOLS REQUIRED : @tekken57's XPACKER 2017.7 (for extracting and repacking the pac files), Pac Editor 6.0.1(for extracting and repacking the pac files) , Hxd (for reading and editing the hexadecimal data contained in the pac files).

PART 1. EXPLANATION OF THE MOVE ANIMATIONS STRUCTURE AND MOTION DATA FILES STRUCTURE.

I will first like to acknowledge @jakeypearce and @Elg for their previous work regarding move animations, the tutorials they created and knowledge they shared in the 2k16 and 2k17 forum. Without going through these at the onset, this wouldn't have been possible.

I will also acknowledge Yukes Animation Studios Japan who create the entrance and moveset animations for the game.

First and foremost entrance animations are different from moveset animations and don't function the same way in the game. It is relatively easy to port over entrance animations since all the data controlling the motion is contained within the entrance file. Other aspects like effects and lights are not part of the basic character motion. Move animations function differently in that the data controlling each move animation is spread across multiple files which makes it a bit complicated. Secondly each move animation is composed of the attacker's animation and the defender's animation

in WWE 2K18, all the moveset motion files are located in the wwe 2k18 \ ingame \motion\ body folder and listed as 45_mpc.pac /45_mpc.param, 65_mpc-pac/65_mpc.param for example. there is a structured listing of files from 1 to 65. The extra moves for the dlc characters are placed in the wwe 2k18 \ ingame folder. This also contains animations which are part of the game mechanics but not selectable as movesets e.g the character climbing the barricade, a run-in motion by a character mid-way into the match, the double Royal Rumble elimination in wwe 2k17 etc.

In the body folder , all standing front grapple moves are in the 50_mpc.pac and 50_param.pac files with the following

Taunts -           37_mpc.pac and 37_param.pac

Running strikes  42_mpc.pac and 42_param.pac

Rear standing grapple moves 51_mpc.pac and 51_param.pac

Ground strike moves    33_mpc.pac and 33_param.pac.

 

Using the 50_mpc file as an example, the 50_mpc.pac file ( and all xxxxx_mpc.pac files) contains all the basic move animations listed in hexadecimal order. There are slots with hex listings from C350 (50000) to C737 (50999) . The next set will begin with the next file 51_mpc which contains slots listing beginning at C738 (51000).

50000 in Hex is C350

51000 in Hex is C738.

Not all slots contain move animations as some have not being used and some had been removed from the current game , but were used in previous games. Each slot in use contains a pac file with the Hex name. For instance C689.pac is in the 50_mpc.pac batch file which is the animation file for F-5 3.

When the contents of the 50_mpc.pac  file are extracted , either using the mass extract function in Pac Edtior, you will observe some files with a 0kb size. These are files which have no aniomation in the slot or which have been removed from the game.

A simple example is C476 which is the animation Hex ID for Stone Cold Stunner 1 in 2k15. This file is listed but has a 0kb file size which means the animation is missing. 

The first process of porting this move is to look in the wwe 2k15 move animation file which contains the move (mot05.pac) extract it's contents, search for the C476.pac file and rebuild a new 50_mpc.pac file with the C476.pac file included.

This was the process @tekken57 used to port over Hulk Hogan's taunts (9230.pac, 9231.pac,9232.pac,9264.pac)and Hulk Hogan Legdrop (Running Leg Drop 4 - 822E.pac) into wwe 2k16 and wwe 17, but he added them to the mot_patch30 file in these games instead.

Easy isn't it ? Well not quite.

Taunts ported to wwe 2K16,2K17 and 2k18 without any other modifications will work in the game, but with move animations, the characters will freeze after the move is executed in the CAM preview or in the game. The reason The Hulk Hogan legdrop worked in wwe 2k16 and wwe 2k17 was it replaced running leg drop 4 as they both have the same Hex ID. In these games, no other move was ported apart from these. All other move animations tried either glitch or the characters froze. This is where the complications arise as I mentioned before. The move animation files do not contain all the information to control the move in the game. This is where the motion data files come in.

THE MOTION DATA FILES

These are the files that control the animations in the game. They control the animation timing, the animation looping in the preview, the damage parameters, mat impact sounds and a few other bits I haven't actually figured out. But this is the engine room for the move animations.

Now in wwe 2k18, you will notice that for each xxx_mpc.pac file, there is a corresponding xxx_param.pac file. The param files contain most aspects of the motion data in WWE 2k18. This is a new format, as Yukes had implemented a different structure in wwe 2k15,wwe 2k16 and wwe 2k17, which I will explain further down the road.

So for example the C689.pac file for F-5 3, there is a corresponding C689.shdc file in the 50_param.pac batch file. This file controls most aspects of the move animation. All move animations in the game have corresponding XXXX.shdc param files which control their animation. When these files are removed, the moves will freeze or glitch when performed in the game. If data bytes are zeroed out from these files, one will notice the opponent gets up immediately after the animation is performed, there is no damage when the move is performed, no mat impact sound or body part damage indicated. 

There are a few categories of moveset animations I have discovered in the game.

normal move animations in the game. All these have a XXXX.pac file and a XXXX.param file.

Animations 2K or Yukes Studios  did not include in the game for selection for some reason - These moves have XXXX_param files which were created for wwe 2k18  but no XXXX.pac files. ( Stone Cold Stunner 1 for example). Porting these is easy as all that needs to be done is to extract the XXX.Pac file from the previous game and inject it into the empty slot in 2k18.

Animations 2k or Yukes removed from the game and did not create XXX.param files for. - Most are in this category. Porting moves like these entails injecting the XXX.pac file from the previous game, then extracting a XXXX_param.pac file for a similar move in 2k18, changing it's id to that of the ported move, and injecting it to the param patch file. Some might work and some might glitch. in most cases, I had to look for about 5 similar moves ands test all these as a param file till I got one which works with the move animation.

ADDITIONAL INFORMATION

The other two files which contain other aspects of the motion data in WWE 2K18 are located in the pac/ingame folder ; The m3.pac file and the motion_param_pcdb.pac. file

The motion_param_pcdb.pac in the wwe 2k17 ingame folder file contained the motion data for all the moves in wwe 2k17, but this file is a smaller size with it's contents stripped and the data placed in individual param files in WWE 2K18.

In WWE 2K15 and WWE 2K16, The m3.pac file and the m3_dlc files contained all the motion data. This was split into a smaller size m3.pac file and the  motion_param_pcdb.pac. in wwe 2k17.

 

Well that's all for the introductory aspect................................. Stay tuned for the second part........

 

PART 2 

2a. The Createmode.pac file.

The last thing I forgot to mention in part 1 is the createmode.pac file. This has been present in the previous 2k games, since wwe 2k14. This file contains a list of all the move animations in the CAM menu and their Hexadecimal ID's. Animations which are part of the game mechanics are not listed in this file. Some move animations are locked by placing a 01 byte close to the ID. 

As an example, when you open this file using a Hex Editor and search for G.T.S 2 , you will get the following. I have copied the data bytes and pasted , shown below. In the wwe 2k18 createmode.pac file, each move listing is composed of 8 rows of data bytes and 16 columns of data bytes . The row with C07944 at the end is the first line of bytes for every new listing

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00034D80  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00034D90  00 00 00 00 00 00 00 00 97 C4 00 00 00 00 00 00  ........—Ä......
00034DA0  00 00 00 00 E0 07 68 06 01 01 00 00 00 0F FF 00  ....à.h.......ÿ.
00034DB0  00 00 00 00 00 00 00 00 00 00 78 00 50 80 00 00  ..........x.P€..
00034DC0  00 20 00 00 00 00 00 00 47 2E 54 2E 53 2E 20 32  . ......G.T.S. 2
00034DD0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00034DE0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00034DF0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00034E00  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00034E10  00 00 00 00 00 00 00 00 25 C6 00 00 00 00 00 00  ........%Æ......
 

The 97C4 in green is the Move ID (Hexadecimal) in big endian format. The id is reversed in pairs. 97 C4 will read normally as C4 97

C4 97 in decimal notation is 50327. I usually use the windows 10 calculator and set it on the programmer option. This enables you to do Hexadecimal calculations.

E0 07 68 06 is the ID for the listing . I have added the 01 01 beside this for illustration purposes only. 

The first 01 locks the move. With this the move is not listed or available for selection in the CAM menu. This doesn't prevent the move from working. For instance if you added it in through data editor, it will work. 

The Second 01 places the move in the NEW category

The 78 in the third row enables the move to be listed as a finisher or submission. Other bytes like the 50 80 ( There are lots of them) determine if they are listed in more than one category. For instance front grapple slam, front grapple bomb, head target listing, body target listing etc.

I have noticed 2k developers disabled quite a few moves which work perfectly or probably looked similar to another move in the game. One thing I have realised however is there seems to be a memory allocation for the createmode.pac file listing,  a limit as to how many moves can be listed in memory. The default file size for the createmode.pac file is 710kb. As entries are added for ported moves, the file size increases. At 713kb, I have discovered some of the move listings in certain categories do not load. I have kept this file size down to 712kb as that seems to be the optimum file size for the move listings to show up in the menu. What I have done is to change the ID's and the names for the moves 2k locked and are unused to that of the ported move. This especially happened with the last set of moves I ported as the additional listings for the previous moves I ported increased the file size to 712kb.

That's all with the createmode.pac file for now. I will come back to it later on.

MOVE PORTING EXAMPLE 1  - PORTING OVER A TAUNT

Now it's time to get a bit practical here. I will start of with the simplest kind of move to port over, which is a taunt. A taunt is a single character animation as it doesn't involve an opponent unlike normal move animations. What I will be doing will be porting over two taunts from WWE 2K15. The first one is OOZING CHARISMA 1 (One of Christian's taunts removed from the game) and One of Hogan's taunts (Hulk Hogan 4) . The Hulk Hogan taunt has been previously ported by @elg and is listed in the modified createmode.pac file if you have downloaded the ported moves from my thread. I will just go through the steps for understanding.

step 1 : If you open the createmode.pac file in a hex editor, select search (text string data type) and type in OOZING CHARISMA, you will be presented with two entries, Oozing Charisma 1 and Oozing Charisma 1_Not_Used.

 

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F                                                               

The Highlighted bytes in purple is the listing for the OOZING CHARISMA taunt in the game, which is selectable in the CAM Menu. The 2nd highlighted set of bytes below represent the entry for OOZING  CHARISMA 1. The "not used" means it is not implemented in the game and not available for selection. The 01 byte in blue locks this move as I explained earlier in the createmode.pac file. The Hexadecimal ID for the moves listed are underlined. The Hex ID for the taunt is 91 00 (listed in reverse as 00 91). Oozing charisma 1 is 91 89 (89 91 in reverse)

00055600  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00055610  00 00 00 00 00 00 00 00 89 91 00 00 00 00 00 00  ........‰‘......
00055620  00 00 00 00 33 03 74 0A 00 00 00 00 FF FF FF 00  ....3.t.....ÿÿÿ.
00055630  00 00 00 00 00 00 00 00 C1 20 00 00 00 00 00 00  ........Á ......
00055640  00 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
00055650  68 61 72 69 73 6D 61 20 31 00 00 00 00 00 00 00  harisma 1.......
00055660  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00055670  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

00055680  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00055690  00 00 00 00 00 00 00 00 84 91 00 00 00 00 00 00  ........„‘......
000556A0  00 00 00 00 2E 03 75 0A 00 00 00 00 FF FF FF 00  ......u.....ÿÿÿ.
000556B0  00 00 00 00 00 00 00 00 40 20 00 00 00 00 00 00  ........@ ......
000556C0  00 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
000556D0  68 61 72 69 73 6D 61 20 32 00 00 00 00 00 00 00  harisma 2.......
000556E0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000556F0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00055700  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00055710  00 00 00 00 00 00 00 00 D5 91 00 00 00 00 00 00  ........Õ‘......
00055720  00 00 00 00 76 03 76 0A 00 00 00 00 FF FF FF 00  ....v.v.....ÿÿÿ.
00055730  00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00  ................
00055740  00 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
00055750  68 61 72 69 73 6D 61 20 33 00 00 00 00 00 00 00  harisma 3.......
00055760  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00055770  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00055780  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00055790  00 00 00 00 00 00 00 00 00 91 00 00 00 00 00 00  .........‘......
000557A0  00 00 00 00 B9 02 77 0A
01 00 00 00 FF FF FF 00  ....¹.w.....ÿÿÿ.
000557B0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000557C0  00 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
000557D0  68 61 72 69 73 6D 61 5F 4E 6F 74 5F 55 73 65 64  harisma_Not_Used
000557E0  5F 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00  _1..............
000557F0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

The Hulk Hogan taunt as we all know has been removed from the game. His taunts and legdrop have been the most requested moves for porting, but we need to know the ID for his taunts as they are not listed in the umnmodified createmode.pac file.

If you are going to port moves over from any previous game, you will need to have the necessary game files. The files required for wwe 2k15 are the Ceatemode.pac file (with an uppercase C) and the mot.pac files (will explain further down).

If you have the wwe 2k15 files ( I will upload these files sometime later), you will need to open up the Ceatemode.pac file in the WWE2K15 \pac folder and search for both taunts.

The OOZING CHARISMA 1 (Not used) is the Oozing Charisma 1 taunt in wwe 2k15 ( As the taunt was removed in subsequent games, one of his other taunts was renamed "Oozing Charisma 1" in wwe 2k18) . The listing for the Oozing Charisma taunts in the wwe 2k15 Createmode.pac file is as found below

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00029B10  00 00 00 00 00 00 00 00 00 91 00 00 45 01 1D 06  .........‘..E...
00029B20  00 00 00 00 00 FF FF 00 00 00 00 00 00 00 00 00  .....ÿÿ.........
00029B30  03 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
00029B40  68 61 72 69 73 6D 61 20 31 00 00 00 00 00 00 00  harisma 1.......
00029B50  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029B60  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029B70  00 00 00 00 00 00 00 00 89 91 00 00 C2 01 1E 06  ........‰‘..Â...
00029B80  00 00 00 00 00 FF FF 00 00 00 00 00 00 00 00 00  .....ÿÿ.........
00029B90  03 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
00029BA0  68 61 72 69 73 6D 61 20 32 00 00 00 00 00 00 00  harisma 2.......
00029BB0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029BC0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029BD0  00 00 00 00 00 00 00 00 84 91 00 00 BD 01 1F 06  ........„‘..½...
00029BE0  00 00 00 00 00 FF FF 00 00 00 00 00 00 00 00 00  .....ÿÿ.........
00029BF0  03 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
00029C00  68 61 72 69 73 6D 61 20 33 00 00 00 00 00 00 00  harisma 3.......
00029C10  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029C20  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029C30  00 00 00 00 00 00 00 00 D5 91 00 00 0A 02 20 06  ........Õ‘.... .
00029C40  00 00 00 00 00 FF FF 00 00 00 00 00 00 00 00 00  .....ÿÿ.........
00029C50  03 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
00029C60  68 61 72 69 73 6D 61 20 34 00 00 00 00 00 00 00  harisma 4.......
00029C70  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00029C80  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
You will notice Oozing Charisma 1 (00 91) 91 00 is the id we previously noted in the 2k18 file. This is the taunt we arte looking for. You will also observe oozing charisma 2 (89 91) is now Oozing Charisma 1 in wwe 2k18.

Next we do a search for Hulk Hogan in the wwe 2k15 createmode.pac file

 

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

000203F0  00 00 00 00 00 00 00 00 30 92 00 00 64 02 8A 04  ........0’..d.Š.
00020400  00 64 00 00 00 FF FF 00 6D 00 6B 01 E7 00 00 00  .d...ÿÿ.m.k.ç...
00020410  03 00 00 00 00 00 00 00 48 75 6C 6B 20 48 6F 67  ........Hulk Hog
00020420  61 6E 20 31 00 00 00 00 00 00 00 00 00 00 00 00  an 1............
00020430  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00020440  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00020450  00 00 00 00 00 00 00 00 31 92 00 00 65 02 8B 04  ........1’..e.‹.
00020460  00 64 00 00 00 FF FF 00 6D 00 6B 01 E7 00 00 00  .d...ÿÿ.m.k.ç...
00020470  03 00 00 00 00 00 00 00 48 75 6C 6B 20 48 6F 67  ........Hulk Hog
00020480  61 6E 20 32 00 00 00 00 00 00 00 00 00 00 00 00  an 2............
00020490  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000204A0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000204B0  00 00 00 00 00 00 00 00 32 92 00 00 66 02 8C 04  ........2’..f.Œ.
000204C0  00 64 00 00 00 FF FF 00 6D 00 6B 01 E7 00 00 00  .d...ÿÿ.m.k.ç...
000204D0  03 00 00 00 00 00 00 00 48 75 6C 6B 20 48 6F 67  ........Hulk Hog
000204E0  61 6E 20 33 00 00 00 00 00 00 00 00 00 00 00 00  an 3............
000204F0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00020500  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00020510  00 00 00 00 00 00 00 00 64 92 00 00 89 02 8D 04  ........d’..‰...
00020520  00 64 00 00 00 FF FF 00 6D 00 6B 01 E7 00 00 00  .d...ÿÿ.m.k.ç...
00020530  03 00 00 00 00 00 00 00 48 75 6C 6B 20 48 6F 67  ........Hulk Hog
00020540  61 6E 20 34 00 00 00 00 00 00 00 00 00 00 00 00  an 4............
00020550  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00020560  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00020570  00 00 00 00 00 00 00 00 8A C5 00 00 0A 07 8E 04  ........ŠÅ....Ž.
00020580  00 64 00 00 00 FF FF 00 6D 00 6B 01 E7 00 00 00  .d...ÿÿ.m.k.ç...
00020590  10 00 00 00 00 00 00 00 48 75 6C 6B 20 48 6F 67  ........Hulk Hog
000205A0  61 6E 20 43 6F 6D 65 62 61 63 6B 00 00 00 00 00  an Comeback.....
000205B0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000205C0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
 

The taunt we are looking for is Hulk Hogan 4, it's ID is 92 64 (64 92 in reverse). 

The last one below is the ID for the Hulk Hogan Comeback (8A C5)  C58A. Even though the listing places it in the CAM for selection, the full animation is spanned to a second file C58B. This file is not listed as it is not a separate move animation, but the leg drop and pin which ends the comeback sequence. Quite a few moves are spread across two, for instance a splash pin (Ultimate Warrior) and a legdrop pin (Running leg drop 4) are also spread across two files , the second file is for the combo pin animation.

The next step is to extract the move animation files from the wwe 2k15 motion pac files. The first thing we need to do is find out the ID in decimal notation for both moves. Using the windows 10 calculator (programmer mode) select Hex and type in 91 00, you will  get 37120, 92 64 will give you 37476. C58A for example will give you 50570.

In the wwe 2k15 pac folder , you will find a set of files listed as mot00.pac,mot01.pac,mot02.pac ending with mot09.pac.Each is a batch file with a set of move animations.

The first digit of the decimal notation will give you a hint in which batch the taunts or moves are located.

3 is the first digit for both taunts , so the taunt files are in the mot03.pac.

The Hogan Comeback has 5 as the first digit, so the move file is in the mot05.pac

In wwe 2k18, the first two digits are used. For instance 37120 and 37476 both begin with 37. The moves id's will be part of the 37_mpc.pac and 37_param.pac file batch

The comeback move begins with 50. The move ID will be part of the 50_mpc.pac and 50_param.pac batch.

Now we need to extract the files. 

Open up the mot03 file in Pac editor 6.0.1. (place a copy of the file in a separate folder )

Select the ZMOT/ALW3 and select EXTRACT.

Open the ALW3.pac file you have just extracted. You will find a list of files beginning with 0162.pac and ending in 01CE.pac. Each is a compressed pac file containing a set of move animation files. If you click on each one, you will find another set of files. These are animation files in a compressed format. we will need to uncompress them. The taunts we are looking for are in the 01AD and 01B1 .pac batch.

Scroll down to 01AD double click , select 9100.zlib and choose uncompress.

go back, scroll to 01B1, double click, select 9264.zlib and choose uncompress.

When you look in the folder with the uncompressed files, you will notice both have the extension .uncompress. Change the file extension for both to .dat  so they are now renamed as 9264.dat and 9100.dat.

We now want to inject these into wwe 2k18.

As I mentioned before , the 37_mpc file is the target location for these files .

copy the 37_mpc pac located in the pac/ingame/motion.body folder  file to a separate location and open with Pac Editor.

Highlight the pac file which begins with 6AAFD... and extract.

Open the extracted file 6AAFD9B677C64E52.pac in pac Editor. You will see a listing of files from 9088.dat to 946F.dat.

First we want to inject the Christian taunt. Scroll down to 9100.dat and highlight . This is a zerokb if you extract this file  as the animation file is not present in the game.

select INJECT FILE from the menu, choose the 9100.dat file extracted from 2k15 and clock OPEN. Wait for the message FILE INJECTION COMPLETED

Please take note you do not want more that one instance of Pac editor Running or you will get  a backup error message. Do check the taskbar often to make sure you don't have another instance of Pac Editor running.

Next, Scroll down to 9264.dat, select inject file, choose the 9264.dat file and select open. Wait for the inject success message.

Now we want to place the modified 6AAFD9B677C64E52.pac file in the 37_mpc.pac file. 

Open the 37_mpc.pac file, highlight the 6AA,select INJECT FILE, choose the modified 6AAFD9B677C64E52.pac file and select open. Wait for the success message.

Copy the 37_mpc.pac file to the pac /ingame/motion/ body folder , overwriting the previous one.

so we are nearly done. For the move to be selectable, we need to make sure they are listed and unlocked in the createmode.pac file under the pac/root folder. Do remember the file is already modified with a listing for Hulk Hogan 4 added. The Oozing charisma 1 (not used) is locked and not available for selection.

Open the createmode.pac file and search for oozing charisma. move down to the Oozing Charisma taunt (not used) 

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00055780  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00055790  00 00 00 00 00 00 00 00 00 91 00 00 00 00 00 00  .........‘......
000557A0  00 00 00 00 B9 02 77 0A 01 00 00 00 FF FF FF 00  ....¹.w.....ÿÿÿ.
000557B0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000557C0  00 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
000557D0  68 61 72 69 73 6D 61 5F 4E 6F 74 5F 55 73 65 64  harisma_Not_Used
000557E0  5F 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00  _1..............
000557F0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

The highlighted 01 locks the move. The 01 will need to be changed to 00. I have also edited the move name and changed it to Oozing Charisma 4. In the name listing type a space after a and 4. When Hex editing, please do not you are typing over characters not inserting characters . If you make a mistake when typing, use the undo option.The C1 00 bytes added will make the taunt selectable in more than one taunt category

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00055780  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
00055790  00 00 00 00 00 00 00 00 00 91 00 00 00 00 00 00  .........‘......
000557A0  00 00 00 00 B9 02 77 0A 00 00 00 00 FF FF FF 00  ....¹.w.....ÿÿÿ.
000557B0  00 00 00 00 00 00 00 00 C1 00 00 00 00 00 00 00  ........Á.......
000557C0  00 00 00 00 00 00 00 00 4F 6F 7A 69 6E 67 20 43  ........Oozing C
000557D0  68 61 72 69 73 6D 61 20 34 00 00 00 00 00 00 00  harisma 4.......
000557E0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
000557F0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
 

when 4 is typed, there are still letters left over from the previous name listing. The best practise will be placing the cursor after 34 in the Hex offset section and typing zeros over the remaining digits.

As the createmode.pac file is modified, an entry for Hulk Hogan 4 has already been added in the game

 

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

0003EB80  00 00 00 00 00 00 00 00 00 00 00 00 00 C0 79 44  .............ÀyD
0003EB90  00 00 00 00 00 00 00 00 64 92 00 00 00 00 00 00  ........d’......
0003EBA0  00 00 00 00 1F 0F 37 05 00 00 00 00 FF FF FF 00  ......7.....ÿÿÿ.
0003EBB0  00 00 00 00 00 00 00 00 C1 00 00 00 00 00 00 00  ........Á.......
0003EBC0  00 00 00 00 00 00 00 00 48 75 6C 6B 20 48 6F 67  ........Hulk Hog
0003EBD0  61 6E 20 34 00 00 00 00 00 00 00 00 00 00 00 00  an 4............
0003EBE0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0003EBF0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

The createmode.pac file is saved and the game started.

The clips below show the taunts in game.

You will notice the Oozing Charisma 4 works perfectly and the animation loops in the CAM preview, but the character model freezes in the preview after the Hogan taunt . You will also notice in the practise play preview, the character model freezes after the taunt is performed in till the character is moved in any direction using the directional pad. these are illustrated in the captured clips below.

 

https://streamable.com/pmpyi

 

https://streamable.com/ohgfd

 

https://streamable.com/5ivbm

 

So what,s the issue with the Hogan taunt ? It's with the 37_param.pac file. There is no file for the Hogan Taunt. Yukes animation had created a 9100.pac file for the taunt even though the animation wasn't included in the game. These files are in a different format in wwe 2k15 so can't be read in wwe 2k18. These are the motion data files which control multiple aspects of each move animation. As there is none for the Hogan taunt 9264, we will need to implement a workaround. 

This will be the next step which rounds off PART 2. Enjoy. Do feel free to ask any questions.

A copy of the wwe 2k15 createmode.pac file and mot03.pac file are in the link below

https://mega.nz/#!MvB3HSiS!W4E2LoC-u35XsvbON-c6lupRZJgnGqeakELSJHne3n0


Fixing the freezing problem. 

first it is important to note that move animations will not loop in the CAM preview screen without a param file which contains additional data for the motion.

As I mentioned previously , a taunt is a simple one - character motion unlike a moveset which involves an opponent. The motion data for the taunts are quite similar ,and in this case , I will extract the motion data file for another taunt ,modify it and inject it into the param_pac file.

As an example, I will be using the motion_param file for one of the taunts I had previously ported and renamed as Doink the clown. It is listed as CLOWN_Not_Used with a Hexadecimal ID 909E  (9E90 in the createmode.pac file)

To obtain the file, we need to find out what the ID is in decimal notation. Using the windows 10 calculator in programmer mode, 909E Is 37022. As the first 2 digits are 37, the taunt is in the 37_mpc and 37_param file. 

We now need to extract 909E.pac from the 37_param.pac file.

Copy the file to a new folder and open it in Pac editor 6.0.1, highlight the 977D...file and select EXTRACT.

Open the extracted file, 917D5AD0C893446B.pac with Pac Editor. Scroll down to 909E.pac and select EXTRACT .(Do take note that in wwe 2k18, the motion files are not compressed, so no need to use the UNCOMPRESS  command when working with any of the mpc and param files

Open up the extracted 909E.pac file using a hex Editor. This is not the same file as the 909E.pac file in the 37_mpc.pac batch file. To avoid confusion, I usually change the motion files in the mpc to .dat extension after extracting. The hex bytes data is as shown below

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000  53 48 44 43 DA 07 00 00 40 00 00 00 01 00 00 00  SHDCÚ...@.......
00000010  6D 82 BD 20 40 00 00 00 14 00 00 00 54 00 00 00  m‚½ @.......T...
00000020  10 00 00 00 64 05 00 00 52 00 00 00 B6 05 00 00  ....d...R...¶...
00000030  38 00 00 00 00 00 00 00 01 00 00 00 00 05 00 00  8...............
00000040  C2 3D 2C BE 43 34 59 6A 00 00 00 00 00 00 00 00  Â=,¾C4Yj........
00000050  FF FF FF FF 00 00 00 00 64 00 00 00 FF 04 00 00  ÿÿÿÿ....d...ÿ...
00000060  00 00 00 00 53 48 44 43 DA 07 00 00 40 00 00 00  ....SHDCÚ...@...
00000070  01 00 00 00 67 82 BD 20 40 00 00 00 04 01 00 00  ....g‚½ @.......
00000080  44 01 00 00 D0 00 00 00 DC 03 00 00 52 00 00 00  D...Ð...Ü...R...
00000090  2E 04 00 00 D1 00 00 00 00 00 00 00 0D 00 00 00  ....Ñ...........
000000A0  C8 01 00 00 C2 3D 2C BE 43 34 59 6A 00 00 00 00  È...Â=,¾C4Yj....
000000B0  00 00 00 00 FF FF FF FF 65 66 4F 30 B6 84 38 9D  ....ÿÿÿÿefO0¶„8.
000000C0  00 00 00 00 10 00 00 00 FF FF FF FF F9 63 8D 08  ........ÿÿÿÿùc..
000000D0  3A 09 31 51 00 00 00 00 20 00 00 00 FF FF FF FF  :.1Q.... ...ÿÿÿÿ
000000E0  5C E0 D9 9F AF B0 16 C5 00 00 00 00 30 00 00 00  \àÙŸ¯°.Å....0...
000000F0  FF FF FF FF B0 04 5C 14 64 B4 82 C4 00 00 00 00  ÿÿÿÿ°.\.d´‚Ä....
00000100  40 00 00 00 FF FF FF FF C4 70 DE 4C A8 BE 39 5B  @...ÿÿÿÿÄpÞL¨¾9[
00000110  00 00 00 00 50 00 00 00 FF FF FF FF 8A 1D 78 CE  ....P...ÿÿÿÿŠ.xÎ
00000120  9D 72 11 3E 00 00 00 00 60 00 00 00 FF FF FF FF  .r.>....`...ÿÿÿÿ
00000130  F0 A4 C9 3E EC D7 69 3E 00 00 00 00 70 00 00 00  ð¤É>ì×i>....p...
00000140  FF FF FF FF 92 1C 87 44 23 67 C2 B8 00 00 00 00  ÿÿÿÿ’.‡D#g¸....
00000150  80 00 00 00 FF FF FF FF C3 BC AA 62 A8 B7 70 0F  €...ÿÿÿÿüªb¨·p.
00000160  00 00 00 00 90 00 00 00 FF FF FF FF 61 DC 92 DE  ........ÿÿÿÿaÜ’Þ
00000170  EF 5E 49 6F 00 00 00 00 A0 00 00 00 FF FF FF FF  ï^Io.... ...ÿÿÿÿ
00000180  2E FF 20 C6 94 75 20 03 00 00 00 00 B0 00 00 00  .ÿ Æ”u .....°...
00000190  FF FF FF FF 48 A0 5F 53 A7 0C 78 E3 00 00 00 00  ÿÿÿÿH _S§.xã....
000001A0  C0 00 00 00 FF FF FF FF 00 00 00 00 14 02 00 00  À...ÿÿÿÿ........
000001B0  70 00 00 00 00 00 00 00 01 00 00 00 84 02 00 00  p...........„...
000001C0  2A 00 00 00 00 00 00 00 02 00 00 00 B0 02 00 00  *...........°...
000001D0  1C 00 00 00 00 00 00 00 03 00 00 00 CC 02 00 00  ............Ì...
000001E0  16 00 00 00 00 00 00 00 04 00 00 00 E4 02 00 00  ............ä...
000001F0  16 00 00 00 00 00 00 00 05 00 00 00 FC 02 00 00  ............ü...
00000200  26 00 00 00 00 00 00 00 06 00 00 00 24 03 00 00  &...........$...
00000210  16 00 00 00 00 00 00 00 07 00 00 00 3C 03 00 00  ............<...
00000220  16 00 00 00 00 00 00 00 08 00 00 00 54 03 00 00  ............T...
00000230  1C 00 00 00 00 00 00 00 09 00 00 00 70 03 00 00  ............p...
00000240  16 00 00 00 00 00 00 00 0A 00 00 00 88 03 00 00  ............ˆ...
00000250  16 00 00 00 00 00 00 00 0B 00 00 00 A0 03 00 00  ............ ...
00000260  16 00 00 00 00 00 00 00 0D 00 00 00 B8 03 00 00  ............¸...
00000270  22 00 00 00 00 00 00 00 42 50 45 20 00 01 00 00  ".......BPE ....
00000280  60 00 00 00 6A 00 00 00 FE 7F FC FE FF 01 FF 30  `...j...þ.üþÿ.ÿ0
00000290  0D 0A 54 00 31 FE FD 31 FF 33 37 30 32 32 FE FD  ..T.1þý1ÿ37022þý
000002A0  31 39 31 31 36 FF 33 37 30 32 32 61 30 30 30 2E  19116ÿ37022
a000.
000002B0  79 6D 61 FF 43 6C 6F 77 6E 5F 4E 6F 74 5F 55 73  ymaÿClown_Not_Us
000002C0  65 64 5F 31 FF 44 6F 69 6E 6B 20 74 68 65 20 43  ed_1ÿDoink the C
000002D0  6C 6F 77 6E 20 8B BE 8D 87 82 ED 82 B9 83 41 83  lown ‹¾.‡‚킹ƒAƒ
000002E0  73 81 5B 83 8B FF FF FD 42 50 45 20 00 01 00 00  s.[ƒ‹ÿÿý
BPE ....
000002F0  1A 00 00 00 20 00 00 00 FE 7F FB FD FE 01 FE FE  .... ...þ.ûýþ.þþ
00000300  00 00 80 0D 00 0F 1D 14 FD 00 FF FF FD FC 01 FD  ..€.....ý.ÿÿýü.ý
00000310  FC 00 00 00 42 50 45 20 00 01 00 00 0C 00 00 00  ü...
BPE ........
00000320  08 00 00 00 FE 7F FE 00 00 05 00 FF FF 01 FF 00  ....þ.þ....ÿÿ.ÿ.
00000330  42 50 45 20 00 01 00 00 06 00 00 00 00 00 00 00  
BPE ............
00000340  FE 7F FE FF 00 00 00 00 42 50 45 20 00 01 00 00  þ.þÿ....BPE ....
00000350  06 00 00 00 00 00 00 00 FE 7F FE FF 00 00 00 00  ........þ.þÿ....
00000360  42 50 45 20 00 01 00 00 16 00 00 00 40 00 00 00  BPE ........@...
00000370  FE 7F FB FD FD 02 FE FE FF FF 00 00 08 00 FC FC  þ.ûýý.þþÿÿ....üü
00000380  FC FF 01 FD FE 00 00 00 42 50 45 20 00 01 00 00  üÿ.ýþ...BPE ....
00000390  06 00 00 00 00 00 00 00 FE 7F FE FF 00 00 00 00  ........þ.þÿ....
000003A0  42 50 45 20 00 01 00 00 06 00 00 00 00 00 00 00  BPE ............
000003B0  FE 7F FE FF 00 00 00 00 42 50 45 20 00 01 00 00  þ.þÿ....BPE ....
000003C0  0C 00 00 00 08 00 00 00 FE 7F FE 00 00 05 00 FF  ........þ.þ....ÿ
000003D0  42 FF FF 00 42 50 45 20 00 01 00 00 06 00 00 00  Bÿÿ.BPE ........
000003E0  00 00 00 00 FE 7F FE FF 00 00 00 00 42 50 45 20  ....þ.þÿ....BPE 
000003F0  00 01 00 00 06 00 00 00 00 00 00 00 FE 7F FE FF  ............þ.þÿ
00000400  00 00 00 00 42 50 45 20 00 01 00 00 06 00 00 00  ....BPE ........
00000410  00 00 00 00 FE 7F FE FF 00 00 00 00 42 50 45 20  ....þ.þÿ....BPE 
00000420  00 01 00 00 12 00 00 00 14 00 00 00 FE 7F FC FE  ............þ.üþ
00000430  FE 01 FF FF 00 00 06 00 DD FD FD 00 01 00 00 00  þ.ÿÿ....Ýýý.....
00000440  5A 4C 49 42 30 12 00 00 42 00 00 00 70 00 00 00  ZLIB0...B...p...
 


The basic data structure for the motion param file is shown above.

the BPE sequence starts from offset 278 This is the 00.bpe. The next highlighted sequence in red is 01.bpe. This goes on 03,04,05,06,07,08,09,0A,0B,0D.

If you look above in the bytes highlighted in orange (beginning with 00 in offset 1A8), these represent the sequence of BPE files below. For now we only need to focus on the section highlighted in blue.

The 37022 is the ID for the taunt in Decimal notation, which we calculated earlier. The a000 is the label for the motion. There is only one since the motion is a taunt. To further explain ;

A simple move animation will have another set of bytes for the opponent motion

000a is the attacker motion

000b is the opponent motion - b is for the opponent motion

Some move animations are composed of a sequence of motions and will have multiple a and b files e.g

000a   attacker

000b  opponent

001a attacker 2nd motion sequence

001b opponent second motion sequence

002a attacker 3rd motion sequence

002b defender third motion sequence

010a attacker 4th motion sequence

010b defender 4th motion sequence

 

Getting back on track, the first thing we need to do is change the id to the ID for Hulk Hogan's taunt in decimal notation (remember the 37476 -9264 in Decimal format). Rename both instances of 37022 to 37476 and it will look like this.

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000240  16 00 00 00 00 00 00 00 0A 00 00 00 88 03 00 00  ............ˆ...
00000250  16 00 00 00 00 00 00 00 0B 00 00 00 A0 03 00 00  ............ ...
00000260  16 00 00 00 00 00 00 00 0D 00 00 00 B8 03 00 00  ............¸...
00000270  22 00 00 00 00 00 00 00 42 50 45 20 00 01 00 00  ".......BPE ....
00000280  60 00 00 00 6A 00 00 00 FE 7F FC FE FF 01 FF 30  `...j...þ.üþÿ.ÿ0
00000290  0D 0A 54 00 31 FE FD 31 FF 33 37 34 37 36 FE FD  ..T.1þý1ÿ37476þý
000002A0  31 39 31 31 36 FF 33 37 34 37 36 61 30 30 30 2E  19116ÿ37476a000.
000002B0  79 6D 61 FF 43 6C 6F 77 6E 5F 4E 6F 74 5F 55 73  ymaÿClown_Not_Us
000002C0  65 64 5F 31 FF 44 6F 69 6E 6B 20 74 68 65 20 43  ed_1ÿDoink the C
000002D0  6C 6F 77 6E 20 8B BE 8D 87 82 ED 82 B9 83 41 83  lown ‹¾.‡‚킹ƒAƒ
000002E0  73 81 5B 83 8B FF FF FD 42 50 45 20 00 01 00 00  s.[ƒ‹ÿÿýBPE ....
000002F0  1A 00 00 00 20 00 00 00 FE 7F FB FD FE 01 FE FE  .... ...þ.ûýþ.þþ
00000300  00 00 80 0D 00 0F 1D 14 FD 00 FF FF FD FC 01 FD  ..€.....ý.ÿÿýü.ý
00000310  FC 00 00 00 42 50 45 20 00 01 00 00 0C 00 00 00  ü...BPE ........

That's all we need to change with regards to taunts. Save and exit.

We now need to open the 917D5AD0C893446B.pac file in pac editor, scroll down to 9264.pac and select FILE INJECT and choose the modified 909E.pac file and open

Wait for the FILE INJECTION COMPLETED MESSAGE.

Open the 37_PARAM.PAC FILE WITH PAC EDITOR, select INJECT FILE and choose the modified 917D5AD0C893446B.pac file, then open to inject.

Copy and paste the modified 37_PARAM.PAC file to the pac/ingame/motion/body folder.

Start your game. When you now view the taunt (Hulk Hogan 4 ) it loops in the menu screen 

https://streamable.com/1i8wu

In part three, I will go through the process of porting over a move animation and the challenges which come with making the move function perfectly in the game.

 

Edited by squaredcirclefan
  • Like 3
  • Too Sweet 5
  • Thanks 1
  • Woo 1
Link to comment
Share on other sites

  • BlindedByTheGrace changed the title to TUTORIAL : PORTING OVER MOVE ANIMATIONS - UNDERSTANDING OF THE MOVE ANIMATION AND MOTION DATA STRUCTURE

Great guide man. :) Slightly off-topic statement coming up, but I wanted to say it. I know the second part is currently a WIP, but the createmode.pac's "existence" was from as far back as WWE 2K14. In '13 and prior, it was in the misc file in the WAZA PACH as MOVS.dat. 

  • Too Sweet 1
Link to comment
Share on other sites

1 hour ago, jakeypearce said:

Great guide man. :) Slightly off-topic statement coming up, but I wanted to say it. I know the second part is currently a WIP, but the createmode.pac's "existence" was from as far back as WWE 2K14. In '13 and prior, it was in the misc file in the WAZA PACH as MOVS.dat. 

Thanks for pointing this out. I knew it was in as far  back as 2k14. i sort of knew the format was different but i wanted to confirm the data structure for the previous games by looking into the files, before stating anything else concerning it. Thank you though.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...
  • 3 months later...
  • 8 months later...
  • 1 month later...
  • 2 years later...

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.

×
×
  • Create New...