MGP21 MotoGP 21 Modding Tutorial

IMPORTANT: Following a recent umodel update, it is now possible to export models from the game.

This thread will teach you the very basics of modding the MotoGP games, I am going to try and explain more things this year but to start with we'll just stick to the basics.

Requirements:
1) Download these tools: https://www.racedepartment.com/downloads/motogp-21-modding-tools.42020/
2) You need Umodel (a.ka UE Viewer): https://www.gildor.org/en/projects/umodel
3) You need Unreal Engine Editor 4.25:
https://www.epicgames.com/unrealtournament/download
4) Also make sure you have Python 2.7 installed:
https://www.python.org/download/releases/2.7/

Text tutorial:
First of all we'll start with a bike skin as it's the main thing people want to edit and it's super easy, but once you understand the process you can try with something else.

Section 1: Export
-Launch Umodel
- Copy the path to MotoGP 21 into the text box (Normally it is: C:\Program Files (x86)\Steam\steamapps\common\MotoGP™21 or wherever you have installed it).
- Don't try to navigate to it as you'll have issues, just copy the path directly into the text box.
- Select "Override Game Detection"
- Select "Unreal Engine 4" And "Unreal Engine 4.25 Plus"

unknown.png


Then hit OK.
- You'll now have a window with all the directories of the game. Navigate to: motogp21\Content\assets\graphics\vehicles\bikes\cat001\chassis\chassis101'

unknown.png


If you're unsure of the ID of the bike you want to edit click on textures and then on "livery001.uasset".
This will load the first texture of the bike so you can see if this is the bike you want to edit.

It will display something like this:

unknown.png


If you want to return to the previous screen press "O" and it will exit the preview.

- Once you have found the texure you want to edit click on "Tools->Export current object" and Umodel will export the texture currently being viewed.
-Umodel will automatically create a folder called "UmodelExport" located where Umodel.exe is.
You can now find the texture (.tga format) and edit it!

Section 2: Import back in game
Part 1: Prepare your modded textures.
Basically we need to convert our modded .tga texture to .uasset.
- Launch Unreal Engine editor.
- Select Games.
unknown.png


- Select Blank Project.
unknown.png


- Select no starter content, choose a path to save the project to and then you can name it whatever you want. I'm going to call mine "Tutorial".
- Click on Create Project.
unknown.png


- Drag your modded texture here:
unknown.png


- Double Click the texture and change the Mip Gen setting to "NoMipmaps", this is so the texture doesn't appear blurry in game before loading fully.
unknown.png


- Click on File->Save all. This way you will not need to create a new project next time.
- Close texture window to return to the previous screen.
- Click on File->Cook content for windows. Wait till it finishes. You can close Unreal Engine now!
Part 2: Repack.
Go into "MotoGP 21 Modding Tools" folder from the rar. There you will see a folder called "motogp21". Inside it, you need to create the same Directory where you extracted the file from in Umodel:
"motogp21\Content\assets\graphics\vehicles\bikes\cat001\chassis\chassis101\textures"
Create the missing folders.
- Go to the location you saved the project to earlier (by default it will be "Documents\Unreal Projects\Name")
- Then from there go to "Saved\Cooked\WindowsNoEditor\Name\Content" here you will find the files Unreal Engine cooked for you. You should have 2 files. Copy BOTH of them into "motogp21\Content\assets\graphics\vehicles\bikes\cat001\chassis\chassis101\textures".
We're almost done!
- Now go back to the “MotoGP 21 Modding Tools” folder and double click repack command.bat
Once it's done (it's quick), you will have a file called "pakchunk0-WindowsNoEditor_X_P.pak". Replace the X with something else, like "pakchunk0-WindowsNoEditor_MyMod_P.pak"
Copy the pak file you created and paste into:
C:\Program Files (x86)\Steam\steamapps\common\MotoGP™21\motogp21\Content\Paks
or wherever you have installed the game. Make sure you copy it where all the other pak files are.
You're done! Check your mod in game.
 
Last edited:
Hi @BIKER7202 ,

first of all, thanks for your awesome work!
I saw that you were able to successful change the official calendar. I tried to do that as well (in changing the db) but nothing changed for the career mode. Could you guide me on how you achieved that? I guess its in some other file and I might have to change it via HxD I guess.

Also another question regarding AI performances: I looked up a lot of posts and understood in which files and where in these files the values are stored. My problem now is that I just don't understand what these symbols mean. I tried to read sth. out of the HEX values but I couldn't translate it into number between 0.000 and 1.xxx - would be really cool if you could share how you are reading the file :)

Thanks a lot!
 
Hi @BIKER7202 ,

first of all, thanks for your awesome work!
I saw that you were able to successful change the official calendar. I tried to do that as well (in changing the db) but nothing changed for the career mode. Could you guide me on how you achieved that? I guess its in some other file and I might have to change it via HxD I guess.

Also another question regarding AI performances: I looked up a lot of posts and understood in which files and where in these files the values are stored. My problem now is that I just don't understand what these symbols mean. I tried to read sth. out of the HEX values but I couldn't translate it into number between 0.000 and 1.xxx - would be really cool if you could share how you are reading the file :)

Thanks a lot!
To read the hex values you need to reverse the bytes (e.g. 00 12 34 56 would become 56 34 12 00)

Then input them into a converter like this:

Once you've edited to a value you like, just do the opposite, reverse the bytes and then overwrite the existing ones.
 
To read the hex values you need to reverse the bytes (e.g. 00 12 34 56 would become 56 34 12 00)

Then input them into a converter like this:

Once you've edited to a value you like, just do the opposite, reverse the bytes and then overwrite the existing ones.

Thank you, now I understood it!

Could you also guide me on how you achieved to change the career events? I checked these careerConstants files but I am quite lost at the moment

Would be awesome if you could give me a hint on that :)

Thank you!
 
Thank you, now I understood it!

Could you also guide me on how you achieved to change the career events? I checked these careerConstants files but I am quite lost at the moment

Would be awesome if you could give me a hint on that :)

Thank you!
Yeah you’re looking in the right place, it’s in the mcareerconstants file. I can’t remember exactly where abouts in the file it starts but for each event there’s a byte for the week number and then one for the track it is at.
 
Yeah you’re looking in the right place, it’s in the mcareerconstants file. I can’t remember exactly where abouts in the file it starts but for each event there’s a byte for the week number and then one for the track it is at.

Capture.PNG

Thank you! I think I figured it out now and want to share my findings so other might benefit from it:

Relevant File:
\motogp21\Content\assets\data\MCareerConstants_BP.uexp

Import / Export
I used the tool quickbms with the unreal tournament 4 script to extract that file out of pakchunk0-WindowsNoEditor.pak (or e.g. the Project21 pak) - also quickbms for the reimport.

Navigate to the correct spot in the file
Open the .uexp file with the tool Hxd. Then, at the top you can insert a number which is the amount of symbols in one row - I found 41 to be the most helpful.

Then scroll through the file until you reach to the point where a lot of symbols are close together (blue). Below that, the events for the full season start.

motogp21 calendar tut.png


Event (race) structure in the file
The green box shows the relevant section for one event (from the 'I' to one row below the 'yyyy'). This sections repeats from now on.

Calendar Week
To see, which event is which, I go to the ':' and move 12 bytes to the left. This byte tells you in what week that event takes place. Use a hexadecimal to decimal converter to get the week.

Disable Event
If you want to disable that event you have to put the two red marked bytes to '00'.

Track Selection
The two yellow bytes define the track. Good thing is, these are always exactly one line below the big FF FF FF FF part, so its easy to spot.


So how do you know what entry you have to edit to move a certain track/event?
I went through each section and checked the calendar week and the track to then look up ingame what event it is - I recommend it doing with care since there are also entries for the driver transfer window opening, pre-season and in-season test etc.
Keep in mind that it is not in chronological order! Sometimes they are mixed (e.g. week 38 (Chang) comes really early). So always check the calendar week!

I guess that if you go on in the file you will also get to the "offical 2021 calendar" events but I didn't check.

Track Codes
I went through all events of the full calendar to get the track IDs:

B9 00 - Losail
0A 00 - Termas
47 01 - Texas
1B 01 - Portimao
98 00 - Jerez
B8 00 - Le Mans
FF 00 - Mugello
27 00 - Catalunya
2C 01 - Sachsenring
0C 00 - Assen
B7 00 - Kymiring
24 01 - Red Bull Ring
34 01 - Silverstone
09 00 - Aragon
CC 00 - Misano
CE 00 - Motegi
2C 00 - Chang
11 01 - Philip Island
33 01 - Sepang
59 01 - Valencia

In a small test (as you can see in the screenshot with valencia, Philip Island, Misano and Sachsenring are 2x in it) it seems that these codes are correct, but no guarantee.

Also in general, no 100% guarantee if my explanations are correct but for me it worked to delete events, move tracks and also progres through the deleted/modified/moved events in career mode.
 

Latest News

What would make you race in our Club events

  • Special events

    Votes: 62 29.1%
  • More leagues

    Votes: 41 19.2%
  • Prizes

    Votes: 44 20.7%
  • Trophies

    Votes: 26 12.2%
  • Forum trophies

    Votes: 14 6.6%
  • Livestreams

    Votes: 32 15.0%
  • Easier access

    Votes: 117 54.9%
  • Other? post your reason

    Votes: 35 16.4%
Back
Top