# \[Deprecated] User Collections

{% hint style="danger" %}
Due for Removal, please speak to support for further info.

**09/06/2025:** MSquared will no longer be supporting "user collections" as a concept (or datasources). If you want similar functionality, it will need to be implemented via an alternative storage system, e.g. the [KV Store](/platform-documentation/creation/unreal-development/features-and-tutorials/online-services/kv-store-service.md).
{% endhint %}

## Overview <a href="#theinventorysystem-overview" id="theinventorysystem-overview"></a>

A "User Collection" is essentially an inventory for interoperable objects. Each MSquared user has a user collection. Objects in a user collection come in many forms. Some examples of how object can be used would be: representing currency within a game, conveying ownership of an NFT and acting as containers for media content.

\#inventor

## Object Definitions <a href="#theinventorysystem-overview" id="theinventorysystem-overview"></a>

In order to give an object to a user, we need the object to be defined first. This means configuring the base object. We may for example want to create a user collection currency for our MSquared project. We would first have to make sure an object is defined for our currency. This object definition might include a name for our currency, an image and any other additional data we might need.

## Datasources <a href="#theinventorysystem-overview" id="theinventorysystem-overview"></a>

We add object definitions to datasources. In other words, datasources are containers for object definitions. You can have any number of datasources associated with your project. This helps to

**Private**\
These are typically where you will want to define most of the objects relevant to your project.\
\
**Public**\
All object defined in the datasources will be automatically added to each user's user collection. You could define some wearable objects hear that all of your users can access.\
\
**NFTs**\
These datasources are not directly controlled by an organisation. They can not be created or destroyed. They are concerned with providing data regarding block chain assets.

<figure><img src="/files/EV3L41EAQXXTMuT3bTqc" alt=""><figcaption><p>Diagram outlining the relationship between objects, datasources and user collections. You can see how the object definitions in the datasources have been populated with metadata. You can see all objects in the public datasource are added to the user collection. You can also so that this user collection also contains 10 "pasta" objects but no "soup" objects.</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.otherside.xyz/platform-documentation/creation/unreal-development/features-and-tutorials/user-collections.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
