Resource icon

    SMBEdit 0.1.9

    It is now possible to install SMBEdit as pip library. Thanks Septaris!
    The instruction can be found here:
    Installation · p-hofmann/SMBEdit Wiki · GitHub

    Septaris also pushed me to deal with importing of 3D models.
    This feature is GUI only as of now and in a experimental state.
    The graphical user interface (GUI), too, is for now in a very basic state.
    Feel free to play with it and report bugs!!
    The installation of the GUI is complicated, I hope that will be unnecessary in some future release.
    Install instructions can be found here:
    Installation · p-hofmann/SMBEdit Wiki · GitHub
    Bugfix:
    Parsing block config of Starmade version 0.199.472 caused a crash.
    Thanks to Haalon, for bringing this to my attention!
    Hotfix: Parsing orientation bits in a less restricted way caused errors when reading messy block data. This should no longer be an issue.
    Auto-shape:
    SMBEdit is now using a more sophisticated algorithm to deal with shapes.
    Hepta and corner blocks will now take into account the orientation of neighboring blocks.
    Furthermore, blocks on the inside of edges are no longer required.
    Instead it is now required that an entities 'inside' is closed off from the 'outside'.
    Close up any hole with glass/door or forcefields to get the best results. This way blocks in the 'inside' will no longer be changed.
    Also: From now on only cube shaped blocks will modified!
    A new argument '--reset_hull_shape' will replace all hull blocks with cubes.​

    Configuration File:
    From now on the '--starmade_dir' has to be set only once.
    The file path will be saved in a config file in the SMBEdit directory.
    Input/Output
    Blueprint directories and .sment files can now be used mixed as input and output argument.
    Bug Fixes:
    The '--replace_hull_blocks' argument will again set the right orientation to blocks.​
    New chunk data format:
    Blueprints made by v0.199.432 are now supported.

    New blueprints by StarMade client v0.199.429 can be read, but old blueprints converted with StarMade client v0.199.429 are broken and can not be read.
    Unnoticed by me 'lxml' was not part of the standard library.
    This module was now replaced with a standard one.
    Thank you uberadiant for notifying me.
    Improved memory usage:
    An new way of saving block decreased memory usage to a third of what it was before. Thank you Septaris for suggesting it.
    Also, if this breaks everything, blame Septaris :p

    Hotfix:
    The real reason for this early release.
    A bad conversion of smd2 to smd3 positions in the meta file caused blueprint with rail docked turrets to have un-docked turrets floating around.
    Should be fixed now.
    • Like
    Reactions: Babouh
    New features:
    * Mirror an entity at the core/center along each of the axis.
    Logic links will be mirrored, too. But docked entities are not mirrored.
    * Smd2 file support, except some exotic variations.
    If you find one of those exceptions, I need an example blueprint to add support of them.
    For proper smd2/3 conversion the StarMade blockconfig is required and can be added using the '-sm' argument, pointing to the 'StarMade' folder.
    Without the '-sm' argument many blocks types will end up with 1 hit point when converted.
    * Python3 is now supported

    Bug fixes:
    * Setting block orientation bits should now work right.
    * Statistics info in 'header' file is now handled right when changing entity type.
    * Chunk16/32 is now determined for each file type independently.
    * Many other minor issues...
    New feature:
    It is now possible to delete blocks of a specific id or list of ids.

    Bugfix:
    Blueprint with entities docked using "Turret Docking Unit" or "Docking Module" are now automatically converted to rail dock based entities and should no longer cause a corrupt blueprint, hopefully, fingers crossed.
    New feature:
    Classification/Role of ships and stations can now be changed

    Bugfix:
    Changing entity type to ship works again.