Blueprint File Format

    Joined
    Jun 21, 2015
    Messages
    45
    Reaction score
    11
    The Blueprint File Format description, at this URL:

    https://starmadepedia.net/wiki/Blueprint_File_Formats

    says at the end:

    Changelog:

    "Added SegmentDataOld to smd2 format, reflecting the previous format for block data for this file. It changed somewhere prior to v0.1867, but this is verified correct on 0.1867. Initial creation for version 0.1867."​

    But the current version is v.019488, so that changelog must have been written about 500 years ago... With all the changes, I would assume that it is now quite outdated. Would it be possible to have someone update the file format description, preferably with updates in the changelog too, so that one can open and recognize both newest and older blueprint files?

    Thanks!
     
    Joined
    Jul 21, 2013
    Messages
    2,932
    Reaction score
    460
    • Hardware Store
    The Blueprint File Format description, at this URL:

    https://starmadepedia.net/wiki/Blueprint_File_Formats

    says at the end:

    Changelog:

    "Added SegmentDataOld to smd2 format, reflecting the previous format for block data for this file. It changed somewhere prior to v0.1867, but this is verified correct on 0.1867. Initial creation for version 0.1867."​

    But the current version is v.019488, so that changelog must have been written about 500 years ago... With all the changes, I would assume that it is now quite outdated. Would it be possible to have someone update the file format description, preferably with updates in the changelog too, so that one can open and recognize both newest and older blueprint files?

    Thanks!
    This is still up to date, all my tools, which require reading blueprints, use the methods described in that article. I have no reason to believe they started to malfunction.
     
    Joined
    Jun 21, 2015
    Messages
    45
    Reaction score
    11
    Well, SMEdit fails to load blueprints created with a recent version of the game, so I assumed that the format had changed since it was built...
     
    Joined
    Jul 21, 2013
    Messages
    2,932
    Reaction score
    460
    • Hardware Store
    Well, SMEdit fails to load blueprints created with a recent version of the game, so I assumed that the format had changed since it was built...
    Yes, it has changed since smedit was built, however, that was before 0.17 AFAIK.
    There were changes after that, but those only involved adding some unknown bytes at the beginning of some structs. The general pattern remained.
     
    Joined
    Jul 21, 2013
    Messages
    2,932
    Reaction score
    460
    • Hardware Store
    If I take the following:



    which you agreed to, with this:



    I have to assume that you are using something else then SMEdit. Mind telling me what you use instead? ;)
    My tools don't fulfill the same purpose(s) as SMEdit. SMEdit is a blueprint editor, which allows you to edit the blocks of a blueprint, or even import 3D models and turn them into a voxel structure.
    My 3 main tools, which read blueprints, do not fulfill any of those purposes. The 2 tools linked in my signature(1 of them links to the 3rd one) have purposes, which are not covered by SMEdit, calculating the amount of raw resources required to craft all components of a blueprint, and changing the entity type of a blueprint. Due to recent changes to asteroid and planet handling, conversions from those 2 types will be harder, as it is very difficult to obtain non-empty blueprints of them without crashing the game.
    I have other unreleased tools, which partially overlap with SMEdit's purposes, but those are highly unfinished, and lack any form of a user interface right now.
    There is a 4th tool I have, which turns blueprints into 3D models, but a competing project with the exact same purpose was finished first, so I halted any development.
     
    Joined
    Jun 21, 2015
    Messages
    45
    Reaction score
    11
    Nice. :) I hacked SMEdit recently to reduce the memory usage to something like 25% of what it was before, enabling editing of large ships. I guess I'll have to update/rewrite the blueprint reading code, to make it work with the current game version. There was "talk" about "SMEdit 2" on the Net, but it doesn't seem to actually be available anywhere. Could your tools be integrated in an (updated) SMEdit too? (SMEdit is Apache Licensed).
     

    AtraUnam

    Maiden of crashes
    Joined
    Oct 15, 2013
    Messages
    1,120
    Reaction score
    866
    • Railman Gold
    • Competition Winner - Small Fleets
    • Wired for Logic Gold
    This is still up to date, all my tools, which require reading blueprints, use the methods described in that article. I have no reason to believe they started to malfunction.
    Could you perhaps post the exact contents of your .bt files? (or better yet the files themselves) as I have also followed the steps on the wiki and always encounter some kind of error.
     
    Joined
    Jul 21, 2013
    Messages
    2,932
    Reaction score
    460
    • Hardware Store
    Could you perhaps post the exact contents of your .bt files? (or better yet the files themselves) as I have also followed the steps on the wiki and always encounter some kind of error.
    .bt files? I do not know that file format suffix.
     
    Joined
    Jul 21, 2013
    Messages
    2,932
    Reaction score
    460
    • Hardware Store
    It is the suffix for the template files provided on the wiki.
    That is because starmadepedia does does not mention unknown bytes and ints.
    The tables in http://www.starmadewiki.com/wiki/File_format were my source of knowledge, alongside a hex-editor to analyze any errors in my implentation(bit order and byte order are most common problems, alongside misjudging the sizes of unknown blocks of bytes).
    That inofficial(and otherwise extremely outdated wiki) is currently the most up to date information source on the blueprint format, of which I am aware. Another major help I had was reverse engineering the blueprint-parsing code of blackcancer 's StarOS, you can find it here: https://github.com/blackcancer/StarOS/tree/master/SMDecoder
     
    Joined
    Jun 29, 2013
    Messages
    144
    Reaction score
    64
    • Modder
    • Legacy Citizen 4
    • Purchased!
    Megacrafter127 there's some changes since the rail update, the docking methode and related data are completly diffrent, that's the actual probleme with many projects who use blueprint