I did and failed as well. The reason why is easy. It is called types\Components.txt
This file hold position of all "special" parts in all bodies (meshes). Unlike X2, X3 does not use the "special" parts in mesh to determine the cockpit/laser positions. Instead it will look in the "component" file and use the position stored there. That's why moving the cockpit part "does nothing".
So I have to alter the "components" file?
No, you don't have to. Just move the cockpit/laser parts where you want them, export the body file and then delete the Components.txt file. X3 will re-create the file based on the body data and your cockpit/lasers position will be as you exported them.
Why I don't like the "components" file
I really don't see any reason why Egosoft did this. There can hardly be some performance gain as you can simply calculate all the positions "on the fly" while loading the mesh - that is when the corresponding ship (whatever) is being displayed.
Re-creation of the components file takes AGES to complete. At last at my computer (which is not really up to date anymore...). I don't understand why it takes so long to recreate the file. Hmm... as I'm thinking of it now, maybe I know why, but nevertheless I'm refusing to wait ages every time I move my cockpit.
I think that the components file can make problems when creating ship mods.
Example:
I will shift cockpit in my Dragon forward but Deadly will leave it as it is in his "Super duper X3 mod". I will use his mod which will have to include the compoennts file as well and the result will be that my changes to cockpit position will be lost because overwriten by Deadly's componenets file from his mod.
So just delete the compoenents file and you are ok...
No, that's not so easy. If you are running the "unpacked" game, then you can do it. If not then you hav problem because the components file is located in 04.cat and 05.cat (X3 ver 1.2) so you cannot delete it. Well you can, but the only way is by using X3ModManager to delete it from all the catalogs and mods. Then X3 will re-create it in types directory.
Anyway the good news is that the new DBOX2 have the ability to alter the components file directly, without need to delete anything.
Some more details:
What will happen if I create new model which is not listed in the components file?
X3 will place all the "special" parts in geometric center of the mesh.
Can I alter the file manually?
Yes but it is hard. The syntax is:
things in <> are mandatory
things in [] are optional/conditional
Code: Select all
<component group><number of records>
[body 1]
[body 2]
...
...
Code: Select all
<body ID><number of records>
[component 1]
[component 2]
..
..
Code: Select all
<flags><position>[rotation]
Position:
The order is X Z Y (axis are world axis in 3ds max/gmax)
value of +1.0 means at the models bounds (in positive)
value of 0 means at model geometric center
value of -1.0 means at the models bounds (in negative)
The values are not in any units - they are just percentage of "something". The "something" is what I'm calling "major half-axis". You have to compute which axis of the model is the longest, then you divide it by 2 and you have the value.
Rotation - these values are always 0 (with 1 exception) and I believe that they are not used in reality because you cannot have the cockpit (or laser) rotated. That's because the exporter is doing something similar to "reset X-form" - i.e. there is no rotation part present in the models, just positions of their verts. But maybe this value is used in some way. Maybe you should be able to "rotate" the cockpit back I'll have to try it