plane icon Welcome to Microsoft Flight Simulator’s SDK Q&A Platform!

You have questions regarding the SDK? DevMode Tools? SimConnect? You would like to submit an idea for future improvements, seek help or exchange knowledge? You’re in the right place.

In the upcoming flighting, we've changed the behaviour of the content.xml file. If your addon uses this file, please read this article!

Please take a moment to read the platform’s guidelines before you get started!


question

GKS_Dev avatar image
GKS_Dev asked thealx edited

Multiple package product exporting for MSmarketplace

Our aircraft is a complex product consisting of a main package and several additional packages (Gauge package, Liveries, FX package, Material library pachage)

These additional packages are an integral part of the product. They cannot be installed or sold separately from the main package (aircraft ).

In the documentation, we did not find a section that describes the process of exporting a product consisting of several additional packages.

In particular, we do not understand what kind of marketplace data needs to be filled in additional packages. (they have no price, screenshots and can't be visible in marketplace as separet products)

Hovewer, without this marketplace data these packages can't be exported. So we need additional instructions on this.

Second issue - during the export we are getting error messege “wrong_size_files” - there no any information in the SDK documentation what does it mean and how we can solve the problem


Please advice
aircraftpackagetool
10 |10000

Up to 5 attachments (including images) can be used with a maximum of 4.8 MiB each and 23.8 MiB total.

thealx avatar image
thealx answered thealx commented

Assets from several packages can be combined in the single one. They can be different types - aircraft, effects, custom data (like instruments).
Usually I do it manually by XML edits, or you can re-create asset groups in SDK editor (Add asset group button) and copy files over.

1645171875176.png



1645171875176.png (653.2 KiB)
2 comments
10 |10000

Up to 5 attachments (including images) can be used with a maximum of 4.8 MiB each and 23.8 MiB total.

@thealx Could you please share how to make it with XML edits?
Add asset group button (described above) creates new sub-packages only

Actually we have all packages - we just need to assemble everything in to one (attach to main package)


0 Likes 0 ·

Open XML files \PackageDefinitions\your_project_name.xml both from main project and the one you want to merge

This file contains links to the assets (parts of the project), like this one (custom smoke effects)


<AssetGroup Name="VisualEffectLib">
  <Type>VisualEffectLib</Type>
  <Flags>
    <FSXCompatibility>false</FSXCompatibility>
  </Flags>
  <AssetDir>PackageSources\VisualEffectLibs\touchingcloud\touchingcloud-effect-jw1-smoke\</AssetDir>
  <OutputDir>VisualEffectLibs\touchingcloud\touchingcloud-effect-jw1-smoke\</OutputDir>
</AssetGroup>


All you need to do is copy this block to the main project XML, and migrate files from PackageSources. In this example folder to copy is

\PackageSources\VisualEffectLibs\touchingcloud\touchingcloud-effect-jw1-smoke\

ignore output dir, it will be generated automatically

Then open your project in SDK, build package, ensure new files copied into Packages properly. If not - open logs window (`) and type folder name in search field.

1 Like 1 ·
EPellissier avatar image
EPellissier answered

@thealx is right: for now the solution is to merge everything into one single package. We will provide a better solution in a future update but we don't know yet when it will be made available.

As for the "wrong_size_files" message, it means that the size indicated in the layout.json file is different to that of the real file, which could create issues further down the pipeline. This usually occurs when you edit your package files manually after building the package which we strongly discourage (chances are a mistake will be made somewhere and the package will be rejected at the ingestion stage). If you believe there is another unknown reason for this message (i.e. you do not edit files manually), we'll have to investigate.

Best regards,

Eric / Asobo

10 |10000

Up to 5 attachments (including images) can be used with a maximum of 4.8 MiB each and 23.8 MiB total.

virtuali avatar image
virtuali answered

Having the ability to flag some packages to be depending on others from a licensing point of view is very important for the Marketplace in the long run.

Many developers will start to offer multiple products that might need to share libraries of objects, textures, sounds, and it will be very useful, efficient, less prone to errors and will even save Microsoft some bandwidth if, instead of having multiple "fat" packages, each one including all its dependencies, a package could be sent to the Marketplace as a "shared library for developer xxxx", with references to it from all the other packages the needs it, so it will be downloaded automatically when any of the related packages are downloaded, and can be submitted and updated separately, instead of requiring a resubmission of all the other packages as well, which is what's happening today, with self-contained packages.

10 |10000

Up to 5 attachments (including images) can be used with a maximum of 4.8 MiB each and 23.8 MiB total.

GKS_Dev avatar image
GKS_Dev answered thealx edited

@EPellissier & @thealx first of all thank you for the answers.
We have assembled all packages in to one and it is works well. We able to build it and test in flight.

But now we have faced with another issue.

During procedure of build&export to marketplace (PC) we have CTD without any notification.
I noticed that just before the crash, the package folder becomes empty and the only folder that is re-created contains empty marketplace data.

This issue appeared after merge of packages.

Cold you please share your thoughts what can be reason of sutch crash?

I have attached screens of project and Asset Package xml

screenshot-73.png

<AssetPackage Name="gks-mig21jet" Version="0.1.0">
<ItemSettings>
<ContentType>AIRCRAFT</ContentType>
<Title>Mig21</Title>
<Manufacturer>GKS</Manufacturer>
<Creator>GKS</Creator>
</ItemSettings>
<Flags>
<VisibleInStore>true</VisibleInStore>
<CanBeReferenced>true</CanBeReferenced>
</Flags>
<AssetGroups>
<AssetGroup Name="ContentInfo">
<Type>Copy</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageDefinitions\gks-mig21jet\ContentInfo\</AssetDir>
<OutputDir>ContentInfo\gks-mig21jet\</OutputDir>
</AssetGroup>
<AssetGroup Name="GKS_Materials">
<Type>MaterialLib</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\MaterialLibs\gksmig21\GKS_Materials\</AssetDir>
<OutputDir>MaterialLibs\GKS_Materials\</OutputDir>
</AssetGroup>
<AssetGroup Name="MarketplaceData">
<Type>Copy</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageDefinitions\gks-mig21jet\MarketplaceData\</AssetDir>
<OutputDir>MarketplaceData\gks-mig21jet\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_Gauges">
<Type>Copy</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\Copys\gksmig21\MiG-21Bis_Gauges\</AssetDir>
<OutputDir>html_UI\pages\vcockpit\instruments\GKS_Mig21_gauges\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Cro1">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Cro1\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Cro1\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Cze1">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Cze1\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Cze1\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Cze2">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Cze2\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Cze2\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Ddr1">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Ddr1\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Ddr1\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Ddr2">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Ddr2\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Ddr2\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Pl1">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Pl1\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Pl1\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Rom1">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Rom1\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Rom1\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Rom2">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Rom2\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Rom2\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Ussr1">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Ussr1\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Ussr1\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Ussr2">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Ussr2\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Ussr2\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_LP_Ussr3">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MiG-21Bis_LP_Ussr3\</AssetDir>
<OutputDir>SimObjects\Airplanes\MiG-21Bis_LP_Ussr3\</OutputDir>
</AssetGroup>
<AssetGroup Name="MiG-21Bis_Lights">
<Type>VisualEffectLegacyLib</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\VisualEffectLegacyLibs\gksmig21\MiG-21Bis_Lights\</AssetDir>
<OutputDir>effects\</OutputDir>
</AssetGroup>
<AssetGroup Name="MyCompany_Simple_Aircraft_Jet">
<Type>SimObject</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\SimObjects\Airplanes\MyCompany_Simple_Aircraft_Jet\</AssetDir>
<OutputDir>SimObjects\Airplanes\GKS_MiG-21Bis\</OutputDir>
</AssetGroup>
<AssetGroup Name="VisualEffectLib">
<Type>VisualEffectLib</Type>
<Flags>
<FSXCompatibility>false</FSXCompatibility>
</Flags>
<AssetDir>PackageSources\VisualEffectLibs\gksmig21\gksmig21-mig21vfx\</AssetDir>
<OutputDir>VisualEffectLibs\gksmig21\gksmig21-mig21vfx\</OutputDir>
</AssetGroup>
</AssetGroups>
</AssetPackage>


screenshot-73.png (274.5 KiB)
1 comment
10 |10000

Up to 5 attachments (including images) can be used with a maximum of 4.8 MiB each and 23.8 MiB total.

Is your aircraft installed into Community? sometimes package tool crashing sim if same data already loaded.

Only advice I have is remove asset groups one by one to figure out which is responsible. And I would start with legacy effects and MyCompany_Simple_Aircraft_Jet.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 5 attachments (including images) can be used with a maximum of 19.1 MiB each and 23.8 MiB total.