Sorting out and managing your Marketplace assets - sharing what I've learned

Hey all,

You may have been collecting a considerable amount of assets from the Marketplace over the years. Between all the promotions, the free content and everything that looks great, you probably have more assets in your vault than you care to admit are useful to your projects.

As I was in the same situation, I started to get overwhelmed by the quantity of assets I had collected, and decided to put some order to it, trying to solve a handful of problems along the way:

  1. How can you make sure that content you have purchased for an older version of the engine can still be used?
  2. How can you get all of your vault ready for use, in an easy to search place, without having to download assets everytime?
  3. How can you get assets that only allow you to “create a project” into your main library?
  4. How can you make sure that your Derived Data Cache is not clogging your main OS drive?
  5. What else could we solve? - please let share along what you have found helpful

This is an attempt to share with the community some of the tricks I have discovered along the way to manage the marketplace assets collection.

Note: for all of these examples, I am using the 4.25 version as the latest installed version [HR][/HR]
1. How can you make sure that content you have purchased for an older version of the engine can still be used?

Every time a new engine version is released, a number of assets in the Marketplace become obsolete… as in: the vault shows that the asset is not compatible with the latest installed version of the engine. If you click on “Add to Project”, the 4.25 projects won’t appear in the list of projects you can add the asset to:

You need to tick “Show all projects” to display all the projects using the 4.25 version:

However, these projects are all greyed out, so you still cannot add your asset to the correct project. If you select a 4.25 project though, an additional menu appears at the bottom left:

From this screen, you need to select the latest version available in the dropdown. here 4.24:

Once you have selected the 4.24 version, the project you want to add your asset to should not be greyed out anymore, and you can click the “Add to Project” button

Once clicked, your marketplace asset should download and install correctly in your 4.25 version project:

6.png

NOTE: this works very well for engine version agnostic content such as:

  • Models
  • Materials and textures
  • Sounds
  • Levels

It may not work as well for:

  • Blueprints (that may require some fixing)
  • Plugins
  • C++ features

How does this work for Marketplace items that force you into “Create Project”?

The approach is similar; you have to select in the dropdown the version for the engine. It will appear in red if you don’t have it installed:

The Unreal Launcher will then create a 4.24-tagged version of your asset which will appear in your projects library with a tag showing for which version of the engine it is (here 4.24):

15.png

Luckily you still can open that project (double-clicking on it), and you will have a dialog box asking you to select the engine version with which to open the project. You should find 4.25 in the list, and you just have to click OK to get your project to load:

16.png

Once loaded, simply save it before closing it, and it then should appear as a 4.25 project:

17.png

[HR][/HR]
2. How can you get all of your vault ready for use, in an easy to search place, without having to download assets everytime?

My approach has been to create a “Library” project. I’ve made sure to setup my library project in a 6TB hard drive so that I have plenty of space for all of the assets I need to download and store. This Library project is the place where I’ve been downloading all of the assets I have on the Marketplace:

While some of these have actually self-explanatory names, it’s not always easy to tell from just a name what the asset folder is about. What I have found is that most of these come with a demo level (save icons and sounds), which you can easily isolate using the filters:

Once you have selected “Level” as one of your filters, you just have to select your root “Content” folder to see all the demo levels of all of your assets:

Now, all the levels are called “Overview” or “Demo”, which is why you can make use of the “capture thumbnail” feature (right-click on the level, in the menu “Asset Actions”, which allows you to capture a picture of what the level looks like:

As a result, you have a library project that you can use at will to browse through all of your assets collection and see more easily which of these will be useful to you.

To transfer your asset to your actual game project, you can make use of the “migrate” option (right-click on the asset, in the menu “Asset actions” for whichever asset you would like:

From there, you just have to select what you need from this asset (including all dependencies such as materials), and indicate the target project content folder for your content to be readily available.

This allows to only migrate one asset at a time, especially in large assets collections, if you only need a chair from an entire house set. [HR][/HR]
3. How can you get assets that only allow you to “create a project” into your main library?

Many of the assets that are on the marketplace, notably the blueprint-driven systems, tend to not give you the option to “Add to project”, but instead “Create project”… which is very unuseful if you’ve purchased a blueprint system to add to your own project. While this is not always simple, and probably not fault-proof, the following method has been working well for me:

Example asset: the Custom Movement Blueprint system:

13.png

A great system, but that will only allow you to create an independent project. So you need to create your project first, and then open it:

18.png

Once opened, you can select the root content folder and migrate it to your library:

Now… for your feature to work in a different project than the one it has been packaged into, you have to use the same blueprints as the ones that are used in the original standalone project. As you migrated the entire content folder, you also have migrated all the relevant gamemode/character or other blueprints necessary for your feature to work.

There are 2 ways the content creator could have set up the relevant blueprints for his feature:

  • Using the level override gamemode, so that it is invoked by the level itself (easier)
  • Setting up the overall gamemode of the project (annoying)

Luckily, the Custom Movement project has used the first option (we can see that because there is a “World override” gamemode:

You can see that same information in the “World Setting” window, where the “GameMode Override” is populated with a custom gamemode:

This means that the required gamemode and the corresponding Blueprints are actually already embedded in the level you have migrated. This means that if you open your level in your library, you should be able to use the feature as if you were playing it in the original project.

However, if you encounter a project that has NOT set up a GameMode Override, you would have to update yourself the GameMode Override in the corresponding level of your library. DON’T update the overall gamemode of the library project or all of your other levels won’t work anymore.

At that stage, once you have confirmed that the level is working fine in your library, you can delete the solo project:

22.png](filedata/fetch?id=1777381&d=1592431741)

This allows you to save project clutter while still having the full functionality of the feature in your library project.
[HR][/HR]
4. How can you make sure that your Derived Data Cache is not clogging your main OS drive?

If you are like me, you may not have the slightest idea what the derived data cache is. This is where Unreal tells us all about it: https://docs.unrealengine.com/en-US/…che/index.html

To be honest, this didn’t help me much. What I understand from it, is that it’s where all the shader compilation results are stored, so that you can keep working on your project without having to recompile shaders everytime. It’s probably much more than that, but that’s the basics :).

What made me discover that such a thing existed, is throughout the construction of my library project, I got a message in the Editor saying that the Derived Data Cache was not in use, and that it could impact performance. I didn’t make much of it, until I realised that I had ran out of space on my main OS drive. Everything was taking so much longer, and I couldn’t install any more content!

By default, the Derived Data Cache will be stored on your C: drive, in the AppData folder of your user profile… which is not ideal when you are trying to download gigabytes of assets. In short, the DDC is going to eat almost as much space on your drive as the original assets themselve. So you want the DDC to be on a hard drive that can contain it, not your SSD where you’ve only got 200GB.

It took me a while to figure out how to do this, because there are a lot of threads out there that encourage you to change the engine.ini file, but the safe option is in the Editor preferences. Simply make sure that your Local Derived Data Cache is on your biggest drive, and you should be fine.

That’s all folks, I’ve spent enough time on the forums looking for all of these answers spread across, that I hope this might be useful to some of you out there.

Have fun building great games!

Thank you for sharing this and keeping it updated for all these years! I think this post need more attention than anything else. It is sad that i noticed this post by typing “world creator 2” to the search… This didn’t show up 2-3 years ago when i was trying to find the proper way to do these. Funny.