It is the year 2938. The long wished-for encounter of the X Universe and the Earth holds both joy and sorrow for the people. Despite flourishing trade, the clash of the diverse races, cultures and life forms creates new tensions, mistrust and open conflict that need to be overcome!
Some weeks ago I decided to write a tutorial about the basics of general editing Terran Conflict with a focus on the modding-part as this is my 'speciality' (aka I cannot do scripting nor MD-programming ^^' ). This tutorial really covers only the most basic things you need to know and is written for total beginners who've yet to even touch the X modding-tools. Though even more experienced modders may find the one or other thing they didn't know.
Posted by enenra on Feb 1st, 2009 Page 6 of 7
Basic Starting a mod.
Now, after we have set up our modding directory and have all the necessary applications ready, I'm going to explain how Egosoft's data files (and with that every mod) is structured and what file influences what in the game. This will be a long theory lesson - be prepared!
This part of the basics tutorial is structured like the insides of a data file to make things easier to understand. This means that every following dot represents a folder in your x3tc_exctracted-directory.
Note: There are actually more of these extensions, but those may be in the data-files because of some tests the Egosoft guys did... usually they don't bother to remove unused material as the space it uses up is negligible. I don't know what those other extensions mean.
That's it for the extensions, but there are way more parts of the names which are standardised. The usual way a texture is named is like this:
(unique_) : If this is placed at the beginning of a texture name, it means that this is a texture that can only be applied on the object defined in ([OBJECT SIZE/TYPE]_).
([RACE]_) : This defines the race of the object's texture. This texture is not used by any other race as long as they don't use the ships of other races (like pirates in some cases)
([OBJECT SIZE/TYPE]_) : This defines the object class or its size. Expressions used are for example "asteroid", "planet", "M3" or "large".
([SPECIFIC PART]_) : This defines the specific part of a model the texture is applied to.
([EXTENSION]) : I explained those above.
Of course, not every texture uses all those components in their name. Some consist only out of the object size/type.
Use: You can either import them into your 2D-application or apply them with your 3D-application on your models.
How they work: Textures are applied on a 3D model and give it their color. They can't modify the shape of an objects but they can appear to modify it. Textures can be used to make a model look more complex than it is, resulting in a better look with less impact on performance than if those details would be modelled. More specific explanations won't be covered in the basics tutorial.
Naming: The good news: There are only two types of files in here: .bob- and .bob-files. The bad news: There are many different ways to use them.
Note: bob-files are compressed .bod-files. We cannot work with .bob-files so we have to decompress them to .bod-files, which is what the X2BODCompiler does. If the file extension is associated correctly with the X2BC, you only have the double click on the .bob-files to decompress them to .bod-files. The useful thing is that this works with multiple files at once as well so it'll cost us much less time to decompress many .bob-files. Also note that it may happen that the X2BC asks you whether he should overwrite an existing file. Here it's the same as with the data-files only that it's not about the number but about compression or no compression: The compressed file is always preferred. This means that you should always overwrite those .bods with the .bobs .
The models in this directory are named very differently but it's not really hard to figure out the pattern (aka I'm too lazy to write it down, go and find it out for yourself! :P). The only important thing is to note the extension "_scene". This means that this is a scene-file and not a normal model (a so called "body").
Note: A so called "scene" is a file which may have the same file extension ( .bod) like a normal body, but it does a totally different thing. A scene can be compared to a construction plan. It tells your 3D-application, which bodys (normal .bod-files) to load. An example: There is no body for the Argon Nova which contains everything needed to make it fully functional. There is, however, a body which contains the model of the Argon Nova. There is as well a scene which has the same filename as the model of the Argon Nove but with the extension "_scene". In that scene is written, where the model of the Argon Nova has to be placed and where to place the engine effect as well as where to place the weapons. In a scene, there can also be animated objects, like a spinning wheel (or whatever) which can't be done with a simple body.
Use: .bob-files have to be extracted with the X2BODCompiler. BOD-format-files can be opened and edited with the notepad or wordpad, though this is pointless for bigger changes. The best way to edit scenes and bodys is to start up 3DsMax or GMax, activate DBOX2 and the import them.
How they work: How BOD-format-files work isn't really part of the "basics". Also, I explained already quite a lot things above.