I am on a project where we have downloaded a Marketplace Asset that requires a move to a different location under the Content folder in order to starndardize our internal process. During the move of the “Rome Fantasy Pack I” Marketplace Asset a blueprint related error surfaced.
I will include instructions to simulate and recreate this bug from a new project.
Creation of Simulated Marketplace Asset containing example test Blueprint:
(This will create something that resembles the Marketplace Asset that we have purchased with a Blueprint containing both a variable and local variable containing references to another asset.)
- Launch UE and create new Blank project called “TestProject”
- In Content Browser, add new folder named “TestMarketplaceAssets”
- From /Content/StarterContent included in the Blank Project, Copy “Materials” to “TestMarketplaceAssets” by dragging the “Materials” folder to “TestMarketplaceAssets”
- Allow shaders to finish compiling
- Under “TestMarketplaceAssets” folder, create another folder named “TestBlueprints”
- In the “TestBlueprints” folder create a new Blueprint Class asset named “TestBlueprint” with the Actor class as its parent
- Double-Click the “TestBlueprint” object to enter its editor
- Create a new Variable inside the Blueprint named “MaterialArray” and set its type to “Material” and make it an Array.
- Compile the Blueprint in order to set the Array elements of its Default Value.
- Under the Material Array Default Value, add 3 array elements and assign the first 3 materials from under \TestMarketplace\Materials to these elements.
- Now select the ConstructionScript object of your “TestBlueprint” and double-click to view it in the graph
- Under “Local Variables (UserConstructionScript)” create a new Local Variable called “LocalMaterialArray” and set its Variable Type to “Material” and also make it an Array.
- Compile the Blueprint to reviewl the Local Material Array under Default Value.
- Under Local Material Array Default Value, add 3 array elements and assign the same 3 materials used prevously from under \TestMarketplace\Materials to these elements.
- Compile and Save the Blueprint and exit the Blueprint editor.
- Select “Save All” from the Content Browser and Close the Project
Simulation of Asset Move:
- Launch UE and using the “TestProject” created above
- In the Content Browser, select “Content” and create a new folder named “TestDestination”.
- Move “TestMarketplaceAsset” by left-clicking its folder and dragging it over “TestDestination”. Select “Move Folder Here” when prompted.
- Fix Redirectors from the Move source if necessary (There should not be any redirectors in this simple move.)
Verify Bug:
- Select “TestBlueprint” from \TestDestination\TestMarketplaceAsset\TestBlueprints and open the Blueprint Editor for this object
- Select Variables->Components->MaterialArray and view the 3 elements in its Default Value. The correct references are made to materials that have now moved to \TestDestination\TestMarketplaceAsset\Materials
- Now select “Local Variables (UserConstructionScript)”->LocalMaterialArray and notice the 3 elements in its Default Value. All elements are listed as none and their references have been lost.
Can this be verified and submitted as a bug?