Create stadiums for PES 5: tutorial about a custom 3D stadium design for PES
This tutorial explains how to design a custom stadium for PES 5, and how to import custom stadiums into Pro Evolution Soccer 5 for PC. It's possible that these football stadiums could work in PES 6 and further versions of PES, besides I haven't checked this yet. That's why this tutorial will focus on PES 5, where I modeled my custom stadium, which worked perfectly.
Programs needed to model a 3D PES Stadium:
- Harps stadium builder.
- Turf Template.
- Rhinoceros 3D [to model the stadium].
Most of the software needed to create a custom PES stadium can be downloaded for free at www.pesoccerworld.com (except Rhinoceros: you can download this program by your own means, as there is a free Rhino version on the official webpage, so Google is your friend).
The steps to create a custom PES stadium are very easy, once you get it. Just follow carefully, paying attention and without any rush, every one of the following processes. If you don't skim any step of this tutorial, which many people tend to do ("bah, this step doesn't matter, let's go to the next step", and then they don't get the right results) it will work perfectly.
Modeling a PES Stadium and importing the custom 3D stadium in PES:
- Extract the RAR file which contains the Turf Template. We will work with the files inside this stadium template package.
- In your PES installation folder, inside "/data", open with DKZ Studio the file 0_text. Once inside this file, look for the file unknow_09560.bin and export it outside to edit it. (This is the PES training stadium. I will work with this stadium in this tutorial. There are other PES stadiums inside this file, named under other filenames. The process would be similar using a different .bin file (that's a different stadium). If you want to use another PES stadium as a starting point, take a look at pesoccerworld or the PES stadium list inside the 0_text file).
- Using Zlib (inside the software tools of the DKZ Studio) open the recently extracted file unknow_09560.bin. Inside this file, you should select the unknow_002.str and then export this selected file.
- Place the recently exported file called unknow_002. str into the folder stadUnpacker of the RAR extracted before (overwriting the file inside). Then we run the executable export3d. This program will create a folder called export plus some numbers. Alright, leave this folder as it is (we will use it later) and let's move on to the next task: modeling our new PES stadium.
- Create your own PES estadio with Rhino. (You could also model a PES stadium using 3D Studio Max and then export it as an .obj, so it could be imported as an .obj using Rhino. In any case, the final exported stadium file has to be done using Rhino, even if the stadium comes from a 3ds file extension. Otherwise, the next program that we are going to use wouldn't read the model of your 3D stadium. You have been warned: if you omit this, don't think "bah, it doesn't matter, I will use 3ds Max to model it", because your PES stadium won't work). So create your own custom PES Stadium starting from the stadium template Turfpes.3dm (this 3D stadium used as a starting point is inside the RAR Template). We won't export this stadium template later: it's just a guideline to position the grass. I advise you to place inside a folder all the textures that you are willing to use, because these textures will be needed later in a certain process.
- Once you have modeled a 3D stadium design you will have to save separately every one of the 4 sides of the stadium, in 4 different files, with a .3DS extension (watch out, do not confuse with 3dm which isn't the PES file format, but the default program and template file format). If you also modify the PES stadium field itself (which I discourage), you should save the modified game terrain in a 5th part. Do it your way, as you like it the best: you can erase all the stadium parts except the one that you are goin to save, and then store it in your PC as a .3ds file, then click CONTROL+Z to restore all the model of the stadium, and then erase every stadium part except the next one, and so on, till you have 1 stadium part in each exported file.
The 3ds files that you should save have to be named this way:
- Uside.3ds = The Top of the stadium (Up)
- Dside.3ds = The Bottom of the stadium (Down)
- Rside.3ds = The Right side of the stadium (Right)
- Lside.3ds = The Left side of the stadium (Left)
The position of each section of the stadium with respect to the game field (which is already defined in the template stadium from Turfpes.3dm) determines which part of the model should be stored in each file.
Remember that the stands of the top (UP) are the ones that are seen during the PES football matches (as it is the default camera of the Pro Evolution Soccer). That's why you sould pay more attention in modeling the top of the 3D stadium, as the bottom stands will only be seen during the replay.
- Once you have Lside.3ds, Uside.3ds, Dside.3ds and Rside.3ds, perform the next process on these files, one by one. I'm going to explain it using the left side of the stadium, Lside.3ds, for example. You should follow these same steps with your 4 PES stadium files:
· Open the Harps stadium builder, and click Tools/Stadium Importer. Then select Lside.3ds. Once you have selectes this file, a menu will pop-up, and then you should specify where are the texture files for this 3d stadium model part (that's why I advised you to have all the textures together inside a single directory). Once you have specified the location of the textures, a new menu will pop-up, displaying all the textures used in the imported .3ds file. You will have to place all these textures inside the square on the right (sometimes you will have to stretch and move your textures so all the textures would fit inside the square; make sure that the most frequently seen textures, or those textures that you will need with high-quality remain big, with good resolution, as the smaller they become, the worse they are rendered). Select the textures one by one and click Map/Unmap (those of you with 3D experience will recognize a simple creation of an UV Map for the stadium), placing the textures, till you complete the whole PES stadium with all the textures shown. (You will find out here that it is advisable to design a 3D stadium with few textures, or repeating the texture maps. It's also advisable to create a 3D stadium based on flat planes, so the UV mapping will be easy to define). The texture map can have neither any image outside the square nor any overlapping texture fragments. Once you have mapped all the 3D textures on your PES stadium model just click Check Bounds to verify that all your textures are alright. Under the Settings section verify that the "Flip V" option is checked if you used Rhino to model the stadium, because Rhino by default uses the inverted texture map.
Then you should click Import Model and Texture (so the program will read the 3D model of the PES stadium with the UV Map that you created), and then you should export the UV Mapping in one file and the PES Stadium model in another file with OIF extension:
- Save texture BMP (make sure you save the texture of the stadium with the same name that the side of the stadium that you are currently creating; for example, if you are working with the UV map of Lside.3ds, save it as Lside.bmp).
- Then, File / Save OIF, and this file keeping the same with an OIF extension (for example, Lside.oif).
Repeat this process with the remaining sides of this 3D stadium (Stadium Importer, Save BMP, Save OIF) with their respective file names.
- Once you have done it, take all the sides of the PES stadium that you exported in OIF, Lside.oif, Uside.oif, Dside.oif, Rside.oif, and put all these files inside the folder OIF2BIN from the original pack. Once you have copied all the stadium files in the specified destination folder click the BAT of each "side": convLside.bat, convDside.bat, convRside.bat, convLside.bat. If you placed every file of the stadium in the same folder, and if every part of the soccer stadium was alright, this will create 4 new files with numbers. Put these new files inside the folder called export that you created in the very beginning inside the folder stadUnpacker, replacing the old files.
- Now it's time to follow the same steps that we followed in the beginning, but in reverse order. At first we were extracting files. Now we are going to pack the final files of the new PES stadium.
- Once we copied the files with numbers inside the folder stadUnpacker/export, go to the folder stadUnpacker and perform the same steps you did in the beginning but in reverse order (at first we clicked export3d.bat in order to extract the stadium files from unknow_002.str to export) now we perform the inverse operations: we shall click import3d.bat, and this will put into the unknow_002.str file all the stuff inside the import folder.
- From the Zlib of DKZ Studio we should open unknow_09560.bin and then select the unknow_002.str file which is contained inside. Then we should right click on it and select import in order to import our new unknow_002.str (with our custom PES stadium) and replace the old stadium files. Once it's ready, we should save the unknow_09560.bin file. (It's very important to remember the location of this file, because this is the edited PES stadium, and we won't want to confuse this file with other default stadium). So let's save our recently created PES stadium.
Now we should open with DKZ the 0_text file, and we should look for the contained unknow_09560.binfile. Let's select this file and then click import, so we can import our recently saved file called unknow_09560.bin (thus replacing the original stadium file).
Once this is completed, we have to save the 0_text. As this file is already open, we won't be able to overwrite the file. So we should save this file with a new file name next to the original file, with an easily recognizable filename (for example,0_text_edited). Once we have saved this file with the new custom PES stadium, we should close the DKZ, and then erase (or rename, or store in a different folder, or whatever you want) the original 0_text file. Then we should replace the original file with the PES stadium that we designed, 0_text_edited, which we should rename as just 0_text, so that Pro Evolution Soccer will read this file with our custom stadium.
The new PES stadium 3D model is ready! Now, the textures:
There are some other tutorials out there that will tell you to use the WE Picture Decoder, but I have skipped that step because
I really cannot stand that program: with Game Graphic Studio you can perform the same operations, in a better way, without having to save again the 0_text file if I want to edit the textures of the custom stadium again, if I think that these textures look ugly, or just if I want to replace the textures of the stadium (however, the edited textures of the stadium should keep the same area as the current textures).
As everybody is free to do as one prefers, if you want to use WE picture decoder instead, look up the PES tutorials at pesssoccerworld, or in the forums: I'm going to teach you how to do it using Game Graphic Studio, which in my opinion, is a better and easier program:
You will have to check inside Pro Evolution Soccer which textures appear in each stand of the stadium. Using Game Graphic Studio, open 0_text and look for the unknow_09560.bin file. You will find a complete list of all the textures inside that PES stadium model. Open (by right-clicking and selecting "open", inside the big work area at the top) each one of your stadium textures, Lside.bmp, Rside.bmp... etc. Make sure that all your texture BMP files of the PES stadium were stored in an Indexed Color mode (open with Photoshop all the BMP files, and select Image/Mode/Indexed Color, maximum 256 modes) and save this way the 4 files.
Open all the BMPs from Game Graphic Studio. Once you have opened each one of these BMP files, select in "all" Set Opacity, in order to make them opaque (no transparent, as well as the textures of the soccer balls, just check some soccer ball texture tutorials out there), and then drag the textures over the other textures in the list, replacing them. This way you can even change the grass textures of the PES game fields, and so on. Using this procedure you can clearly check which texture replaces each other, without having to save the whole 0_text file, as the edited textures of the PES stadium are automatically stored inside this file.
The rest consists just of checking your custom 3D stadium for PES. If any of your edited stadium textures is not rendered appropriately, check why it's being displayed wrong, place the texture in the right place of the stadium, and so on.
Take into account that, for optimal performance of the Pro Evolution Soccer game, your custom stadium should be modeled with the fewer number of polygons possible. A PES stadium composed of simple shapes (even just flat planes) is preferred. As an example, you could check this custom PES stadium, which I modeled (it's the football playground of my old school). This custom PES stadium was modeled just using flat planes: that way, Pro Evolution Soccer runs smoothly in your PC even using edited PES stadiums.