p-hofmann / SMBEdit

StarMade Blueprint Editor
5 stars 1 forks source link

Docked entities are not attached to the ship #6

Closed Septaris closed 7 years ago

Septaris commented 7 years ago

When I'm using SMBEdit on the Epos to move the core (-m '0,0,1') the docked entities are present on the new ship but are not attached.

p-hofmann commented 7 years ago

Oops, thanks for the info. In the meta data section 'DataType6' are rail-entries whose position are not corrected. Without them the rail will be inactive and any docket entity will not be docked right. Edit: Except, those entries are for the docked entities, for which the rail docker position does not change... Maybe I messed up the 'DataType4' entries.

p-hofmann commented 7 years ago

I know now what is going on. While the blueprint uses smd3 files, the meta file still has the smd2 positions. The version number of the meta file seems to be independent from whether it contains smd2 or smd3 positions and I have yet to find out how it can be distinguished. So far SMBEdit only notices smd2 positions if it sees smd2 files.

If you update the blueprint using the starmade client first, load it as admin and save it again, it will work as intended.

I will have a quick look into the decompiled starmade source code and hope to find a clue how it is done there. If I find nothing I will add a warning if the meta file is noticeably outdated as a quick fix.

p-hofmann commented 7 years ago

It appears I was wrong, version 3 and below are always assumed to be smd2 positions. This smd3/smd2 mixing is really confusing.