metapro
  • 🤝Welcome!
  • 💻metapro market
    • Set your account
    • Connect wallet + web3 login
    • Side panel
      • Transfer NFT
        • Multiple transfer (Airdrop NFT)
          • Import CSV List
      • Sell NFT
        • Initial NFT Selling (INS)
          • How to setup INS auction
          • How to buy on INS auction
        • Buy Now
          • How to setup Buy Now auction
          • How to buy on Buy Now auction
        • Auction (Bidding)
          • How to setup Auction
          • How to buy on Auction
      • All NFT assets
    • Buy Crypto
    • Top Menu
      • Profile
        • Profile Marketplace
        • My games
        • My assets
          • Royalty
        • Activities
      • Referral Panel
        • Register your downline
        • Downline wallets
        • My referral link
      • Profile Settings
      • Developer Portal
      • Logout
    • Assets
      • Marketplace
        • Auction Card
      • Most favorite
      • Newest assets
        • Asset Card
    • Games
      • Show all games
    • Leaderboard
    • Create asset (minter)
      • Gaming asset specification
      • How to create (mint) asset
        • 1. Setup NFT token
        • 2. Setup metadata
        • 3. Add meta asset
        • 4. Mint meta asset
        • 5. Meta asset created
    • Developers Portal
      • Create team
      • Create game
      • Developers Portal Panel
      • Unity Plugin
      • How to list game on metapro market?
    • Creators
    • Teams
    • Users
    • Wallet App
    • Launcher
    • Market and auction component fees
  • 🚀METAPRO LAUNCHER
    • What is metapro launcher?
    • Download launcher
    • Set your account
      • Login to launcher
    • Home
    • Games
      • Game card on launcher
        • Assets in this game
      • Install game on launcher
      • Update game on launcher
    • My games
      • Installed
      • Not installed
      • Wishlist
    • My assets
      • Collected assets
      • Created assets
      • Wishlist
    • NODEs app
  • 📱metapro one
    • About non-custodial wallet
    • Download & set up
      • Create new metapro wallet
      • Import existing wallet
    • Settings
      • Avatar
      • Multiple wallets
      • Wallet name
      • Private Key
        • Protect Private Key
        • How to find my Private Key
      • Recovery Phrases
        • Protect Recovery Phrases
        • How to find my Recovery Phrases
      • Application version
    • Network switch
    • Deposit (Tokens and Collectibles)
    • Send (Tokens and Collectibles)
      • Send Tokens
      • Send Collectibles (NFT)
    • Buy (Buy and Sell Crypto)
    • Browser
    • My assets
      • Tokens
        • Asset view
        • Adding Tokens
        • Activities
      • Collectibles (NFT)
      • Game assets (NFTma)
    • Explore
      • Apps
      • Collections (NFT)
      • Game assets (NFTma)
    • How to claim Airdrop
    • How to import wallet from MetaMask to metapro
    • Supported devices
  • ⛓️metapro protocol
    • API
      • Users service
      • Teams service
      • Apps service
      • Nft service
      • Nft events service
    • Meta asset
    • Metadata structure
    • Protocole structure
    • Unity Plugin
      • About metapro Unity plugin
      • What's new
      • Guides
        • Installation
        • Requirements
        • Package samples
        • Quick start
          • 1. Editor
            • Access tool
            • Import game key
            • Download resources
            • App data object
            • Change game key
            • Use app data in script
          • 2. Play mode (PC)
            • Enable Web3 in your game
            • Choose provider
            • Connect wallet
            • Login with Web3
            • Display user data
            • Show app tokens
            • Use user and app data from script
          • 3. Play mode (Mobile)
            • Enable Web3 in Your game
            • Choose provider
            • Connect wallet
            • Login with Web3
        • AFP (Additional Features Packages)
          • 1. Safe token transfer
          • 2. Phoenix
        • Troubleshooting
      • Reference
        • MetaproAPPSetup
        • Editor Window
        • Plugin Manager
        • Web3 connection providers
          • metapro
          • Wallet Connect
          • MetaMask
        • WindowController
        • AFP (Additional Features Packages)
          • SafeTransferFrom
          • Phoenix
  • 🛠️WALLET CONNECTOR
    • Introduction
    • Basic informations
      • Next 13 integration
      • React integration
      • Manual installation
  • 👨‍💻Developer Documentation
    • Introduction to Developer Documentation
      • What is a Meta asset?
      • What are the Benefits of Using Tokens as Access Keys for the Game Application
      • Why should I Choose the Meta Assets as the Access Keys for the Game Application?
      • How Does It Work, Exactly?
    • Available Environments
    • Blockchain Communication and information retrieval
      • How can we verify/distinguish a user?
      • How can we track a user's transactions?
      • What information can we obtain?
    • Integration with the Leaderboard service
    • Integration for in-Wallet Apps
    • Integration for Telegram Mini Apps
      • Integration Architecture and Configuration
      • Authorization and Session Management
      • Example Integration and Features
      • Code Examples from the Repository
      • Summary and Appendices
    • Developer documentation for the Construct 3 Plugin
      • Construct 3 - Install plugin
      • Plugin Configuration
      • User onboarding and authorization
      • User Management
      • Score System
      • Leaderboard System
      • Referral System
      • Gameplay
      • Smart Contract Interactions
      • User NFTs
      • Error Handling
      • Additional Getters for Plugin Properties
    • Integration Web3 with Your Game
      • What is Web3
      • Blockchain Basics
      • Differences between chains
      • What is a NFT
      • Advantages of Web3 Gaming
      • Examples of Web3 Games
    • Onboarding the Web3 Player
      • Value for Players
      • Explanation of Cryptocurrency Wallet
      • Rewards for Tournament Participation
      • Reselling Owned Assets
      • Integration of Metapro Wallet Connector
      • Displaying Data for Unlogged Users
      • How to Get Authorization Data
      • User Authorization Benefits
    • Creating Your First Meta Asset
      • The Difference between NFT and Meta Asset
      • Security and Transparency
      • Concept and Value of Meta Assets
      • How and Where to Create Your Meta Asset
        • Step-by-Step Guide on How to Create Your Asset
        • Explanation of URI (Metadata structure)
        • Explanation of the Meta Asset Data taken from our Back End
    • Implementing Meta Assets into Your Game
      • Integrate your Meta Asset to your game using Unity
      • Verify User Tokens Ownership
      • Displaying All User-Owned Tokens
      • Displaying All Assets Assigned to the Game on the Metapro Market
    • Smart Contracts
      • MetaproINS
        • Read Contract
        • Write Contract
      • MetaproBuyNow
        • Read Contract
        • Write Contract
      • MetaproAuction
        • Read Contract
        • Write Contract
      • MetaproMetaAsset
        • Read Contract
        • Write Contract
      • MetaproRoyalty
        • Read Contract
        • Write Contract
      • MetaproReferral
        • Read Contract
        • Write Contract
      • MetaproAirdrop
        • Read Contract
        • Write Contract
    • Universal Links & App Links with WalletConnect
  • 🔎General information
    • Blockchain
    • Blockchain Network Fee
    • Blockchain Native Token
    • Token ERC-1155 vs ERC-721
  • 📄Release Notes
    • Introduction to the Release Notes
    • Marketplace Updates
      • Release 07.03.2024
      • Release 06.03.2024
      • Release 04.03.2024
      • Release 19.02.2024
      • Release 24.01.2024
      • Release 09.01.2024
      • Release 03.01.2024
      • Release 21.12.2023
      • Release 18.12.2023
      • Release 13.12.2023
      • Release 12.12.2023
      • Release 02.12.2023
      • Release 30.11.2023
      • Release 24.11.2023
      • Release 22.11.2023
      • Release 17.11.2023
      • Release 13.11.2023
      • Release 09.11.2023
      • Release 08.11.2023
      • Release 07.11.2023
      • Release 31.10.2023
      • Release 26.10.2023
      • Release 25.10.2023
      • Release 24.10.2023
      • Release 18.10.2023
      • Release 05.10.2023
      • Release 03.10.2023
      • Release 29.09.2023
      • Release 18.09.2023
      • Release 14.09.2023
      • Release 12.09.2023
      • Release 06.09.2023
      • Release 25.08.2023
      • Release 17.08.2023
      • Release 04.08.2023
      • Release 31.07.2023
      • Release 21.07.2023
      • Release 18.07.2023
      • Release 13.07.2023
    • Games Launcher Updates
      • Release 13.03.2024
      • Release 24.01.2024
      • Release 04.01.2024
      • Release 22.11.2023
      • Release 03.10.2023
      • Release 31.07.2023
      • Release 27.07.2023
      • Release 20.07.2023
      • Release 13.07.2023
    • Wallet Updates
      • Release 04.03.2024
      • Release 03.10.2023
      • Release 29.09.2023
      • Release 15.09.2023
      • Release 30.08.2023
      • Release 18.07.2023
Powered by GitBook
On this page
  • Offers detailed classification within primary categories offers detailed classification within primary categories The Role of Metadata Structures in Gaming
  • Token
  • Metadata Properties
  • Metadata FileSpec
  • Standard
  • 3D Spec
  • Sound Spec
  • Base NFT Information
  1. Developer Documentation
  2. Creating Your First Meta Asset
  3. How and Where to Create Your Meta Asset

Explanation of the Meta Asset Data taken from our Back End

PreviousExplanation of URI (Metadata structure)NextImplementing Meta Assets into Your Game

Last updated 1 year ago

Offers detailed classification within primary categories offers detailed classification within primary categories The Role of Metadata Structures in Gaming

In the gaming universe, metadata plays a fundamental role. It ensures that digital assets, like in-game items, characters, and collectibles, are accurately represented and described. Think of metadata as the rich information that brings these digital entities to life, much like the description on the back of a trading card or the stats on a piece of equipment in a role-playing game.

But what's even more crucial is the existence of standardized metadata structures. These structures are the agreed-upon formats and frameworks that define how this vital information is organized and presented. They are the common language that gaming platforms, marketplaces, and applications like Metapro use to make sense of the data associated with in-game assets.

For example, a digital sword in a game might have metadata fields that include its name, description, image, rarity, and damage stats. With standardized metadata structures, these attributes are consistently organized, making it easy for platforms like Metapro to fetch and display this information in a coherent and user-friendly manner.

Properties are an essential component of these metadata structures. They provide a way to highlight additional attributes and characteristics of in-game assets. In the context of weapons, properties might include details like elemental damage, special abilities, or any other unique traits that set one sword apart from another. When presented through properties, players and collectors can quickly assess the distinct features and values of digital assets, making informed decisions about their use or trade.

In summary, metadata structures are the backbone of the gaming world, enabling consistent, accurate, and detailed descriptions of digital assets. Standardized metadata is the common language that applications like Metapro rely on to make sense of in-game data, and properties are the showcase for the unique attributes that make each digital asset special. This combination creates a richer and more informative gaming experience for players and collectors alike.

Our metadata is inspired by the Enji metadata standard. To learn more about the Enji standard, click on the


Token

In the 'Token' section, you'll discover essential details about the token. Here, you can access crucial information, such as the token's unique identifier (Token ID), the contract or protocol address associated with the token, and the quantity of this specific token that has been created (a characteristic often seen in tokens based on the ERC1155 standard). Below, you'll find a breakdown of the specific information contained within this section. FilesSpec and Properties have been addressed separately in the documentation for your convenience.

...
"token": {
      "_id": "6536535c9832b155f2791fe7",
      "_tokenId": 1258,
      "address": "0xa293d68684be29540838dc8a0222de0c43c6b5b4",
      "_quantity": 100,
      "burn": false,
      "createdAt": "2023-10-23T11:05:00.659Z",
      "createdBy": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
      "creationBlock": 32852815,
      "description": "The Green Sword is a formidable weapon that requires a maximum level of expertise to wield, which is level 100. This sword holds incredible power, inflicting an additional 60% damage against earth and water-based creatures. It is particularly suited for battles against all types of earthbound monsters due to its bonus power against rocky and aquatic foes. However, it's essential to remember that the Green Sword is entirely unsuitable for encounters with fire-based creatures, as it deals 50% less damage against these types of adversaries.\n\n- Potency Against Earth and Water Creatures: The Green Sword boasts extraordinary abilities, enabling it to deal significant additional damage to earth and water-based creatures. It's the perfect choice for engaging in battles against these kinds of monsters, granting a substantial 60% bonus to damage.\n\n- Weakness Against Fire Monsters: Despite its prowess against earth and water beings, the Green Sword comes with a significant drawback. It's exceptionally ineffective against fire monsters, causing 50% less damage when confronting these fiery foes.\n\nThe Green Sword is a potent weapon in the right hands, excelling in battles against earth and water adversaries. However, wield it cautiously, as it's not the best choice for battles against fire-based creatures. Your success in battle depends on your knowledge of this sword's properties and your choice of opponents!",
      "extraFiles": [
          "https://prdmetaassetfiles.blob.core.windows.net/e5bad177-f506-4d49-9f7b-ddaeb3c3e94d/assets/aec237b3-200b-4965-9b18-dac54e5e1152.mp3"
      ],
      "favorites": 1,
      
      // filesSpec structure
      
      "image": "https://gateway.metaproprotocol.com/0x04ea/preview",
      "initialOwner": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
      "minifiedImage": "https://gateway.metaproprotocol.com/0x04ea/minified-preview",
      "owner": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
      
      // properties structure
      
      "tokenName": "New Era - Green Sword",
      "transactionHash": "0x853fe7f76d69dd3db518ed19aac4d1c0464fe18b92b993f93ee398b71fdfb9a3",
      "updatedAt": "2023-10-24T06:25:57.158Z",
      "wishes": 1
   }   
  ...
Key
Value

_id

A unique identifier for the asset.

_tokenId

The asset's identifier of the protocol can be used for unambiguous identification.

address

The address associated with the asset (Protocol Address).

_quantity

Specifies the quantity of available assets of the same type.

burn

A Boolean value (true/false) indicates whether the asset has been burned.

createdAt

The date and time the asset was created.

createdBy

The address of the person or entity who created this asset.

creationBlock

The blockchain block number in which this asset was created.

description

A description of the asset.

extraFiles

A reference to additional files or resources related to this asset, such as sound files, etc.

favorites

A number indicating how many users have added this asset to their favorites.

image

A reference to an image associated with the asset.

initialOwner

The wallet address of the individual who initially owned the asset.

minifiedImage

A reference to a downsized image linked to the asset.

owner

The current owner of the asset.

tokenName

The name of the asset.

transactionHash

The transaction hash associated with this asset.

updatedAt

The date and time of the last update to the asset.

wishes

The number of wishes or desires from users, may reflect interest in the asset within the gaming community.

Metadata Properties

Properties in NFT metadata are used to provide additional information and parameters about a digital asset. They offer more detailed data about items, which can be especially useful in blockchain-based games and NFT collectibles.

Example of the Visual Properties Implementation in the Metapro Market

Why Do We Create Collections?

The Collection field is an additional parameter in metadata and is not required, but it can significantly enhance the value of the game. Collections are used when there is a need to differentiate between various types of items, characters, or other resources in the game. For example, if you're creating a fantasy game, collections can help label different types of weapons, such as swords, bows, or shields. This allows players to easily identify, collect, and utilize various types of items.

"collection": "New Era Swords",

Why Do We Use Properties?

Similar to collections, properties (Properties) are not mandatory, but they are incredibly useful. Properties enable the description of attributes or characteristics of specific characters, items, or other game elements. This can be particularly useful in games where different characters possess unique abilities. For instance, if you're designing a character in an RPG game, properties can describe their skills, like the ability to ride a horse, which sets them apart from other characters.

"properties_Total Damage": {
      "name": "Total Damage",
      "value": 1354,
      "display_value": ""
  },

Why Do We Have Levels?

The "Levels" parameter is optional but plays a crucial role in games, especially when determining access levels to specific weapons or items. Levels allow game developers to control when and at what point players can gain access to certain game elements. For example, regarding weapons, levels can specify when a player gains access to more advanced types of weaponry, influencing the dynamics and difficulty of the gameplay. This allows developers to provide players with challenges and encourage them to continue playing.

"levels_Enchant level": {
      "name": "Enchant level",
      "value": 7,
      "max_value": 10,
      "display_type": "level"
  },
  "levels_Weapon level": {
      "name": "Weapon level",
      "value": 100,
      "max_value": 100,
      "display_type": "level"
  },

Why Do We Use Boosts?

The "Boosts" parameter is an optional attribute for weapons or items that affects their effectiveness in specific situations. In the context of weapons, boosts allow for the customization of a weapon's behavior for different types of opponents or in various game scenarios. For example, a weapon like the "Fire Sword" can deal additional fire damage to monsters, making it effective against them, but it may be less effective against other types of enemies, such as dragons or demons. Boosts add an element of tactics and strategy, enabling players to adapt their choices during gameplay.

"boosts_Damage vs Earth and Water Creatures": {
      "name": "Damage vs Earth and Water Creatures",
      "value": 60,
      "display_type": "boost_percentage"
  },
  "boosts_Damage vs Fire Creatures": {
      "name": "Damage vs Fire Creatures",
      "value": -50,
      "display_type": "boost_percentage"
  }
Example of the properties asset structure
"properties": {
  "collection": "New Era Swords",
  "properties_Total Damage": {
      "name": "Total Damage",
      "value": 1354,
      "display_value": ""
  },
  "levels_Enchant level": {
      "name": "Enchant level",
      "value": 7,
      "max_value": 10,
      "display_type": "level"
  },
  "levels_Weapon level": {
      "name": "Weapon level",
      "value": 100,
      "max_value": 100,
      "display_type": "level"
  },
  "boosts_Damage vs Earth and Water Creatures": {
      "name": "Damage vs Earth and Water Creatures",
      "value": 60,
      "display_type": "boost_percentage"
  },
  "boosts_Damage vs Fire Creatures": {
      "name": "Damage vs Fire Creatures",
      "value": -50,
      "display_type": "boost_percentage"
  }
},

In summary, collections, properties, levels, and boosts are tools that allow for more intricate and engaging gaming experiences. While not mandatory, they can significantly enrich gameplay and contribute to more diverse and engaging player experiences.


Metadata FileSpec

In the context of gaming, FileSpec structures play a significant role in digital assets, such as weapons, characters, or other in-game elements. They are used to identify, describe, and manage various types of files or multimedia resources associated with a specific game asset. This can include images, sounds, animations, or even 3D files that add visual and auditory elements to the game.

With FileSpec, games can precisely manage files and multimedia linked to specific elements, allowing for more advanced visual and auditory effects in the game. For example, for a given weapon in the game, FileSpec can indicate which textures, 3D models, and sounds are used in connection with that weapon. As a result, players can enjoy more advanced and diversified experiences while using that weapon.

Overall, in gaming, FileSpec helps developers manage and utilize a variety of multimedia resources, translating into more elaborate and thrilling player experiences.

When creating an NFT Meta asset resource on our marketplace, you will find this in the third step of the resource creation process.

Standard

This metadata segment is of paramount importance because:

  • It helps unequivocally identify and describe NFTs, making asset management in the game more streamlined.

  • It defines licensing terms that must be adhered to, which is crucial for legal compliance and copyright.

  • It specifies restrictions and tags, aiding in adapting assets to various contexts and needs.

  • It categorizes assets, simplifying asset organization within the game and facilitating navigation.

As a result, proper management of this metadata segment is essential for the design and management of Web3 technology-based games.

"standard": [
  {
      "key": "asset_type",
      "value": [
          "2D meta asset"
      ],
      "value_type": "string array"
  },
  {
      "key": "asset_licence",
      "value": "Royalty Free (RF)",
      "value_type": "string"
  },
  {
      "key": "asset_restriction",
      "value": "Public meta asset",
      "value_type": "string"
  },
  {
      "key": "asset_tags",
      "value": [
          "weapon",
          "sword",
          "NewEra"
      ],
      "value_type": "string array"
  },
  {
      "key": "asset_tag_ids",
      "value": [
          60,
          61,
          166
      ],
      "value_type": "integer array"
  },
  {
      "key": "asset_category",
      "value": "Weapons",
      "value_type": "string"
  },
  {
      "key": "asset_subcategories",
      "value": [],
      "value_type": "string array"
  },
  {
      "key": "asset_category_ids",
      "value": [
          6
      ],
      "value_type": "integer array"
  }
],
Key Value
Purpose
Application in Gaming

asset_type

Determine asset type for proper categorization

Used to classify assets as 2D images, 3D models, audio

asset_licence

Specify asset's license terms

Informs asset Licence (e.g., Royalty Free, Rights Managed, Creative Commons)

asset_restriction

Describe any asset usage restrictions

Communicates specific usage limitations (e.g., Public meta asset or Resticted meta asset)

asset_tags

Add tags for asset categorization and searchability

Helps in find assets with specific attributes (e.g., "NewEra")

asset_tag_ids

Assign integer identifiers to tags

Ensures consistent and efficient asset categorization

asset_category

Choose predefined primary asset category

Categorizes assets broadly (e.g., "Weapons")

asset_subcategories

Choose predefined additional subcategories

Offers detailed classification within primary categories

asset_category_ids

Assign integer identifiers to categories

Precisely determines the primary category of assets

2D Spec

This JSON fragment, identified by the "2d_spec" key, contains essential information. It specifies the dimensions and characteristics of 2D assets within the game.

"asset_height" and "asset_width" provide the height and width dimensions of the 2D assets, both set at 1024 pixels as integer values. These dimensions are crucial for accurately rendering and displaying the assets in the game.

"2d_spec": [
  {
      "key": "asset_height",
      "value": 1024,
      "value_type": "integer"
  },
  {
      "key": "asset_width",
      "value": 1024,
      "value_type": "integer"
  },
  {
      "key": "asset_layers",
      "value": false,
      "value_type": "boolean"
  }
],
Key Value
Purpose
Application in Gaming

asset_height

Determining the height (size) of 2D assets

Helps in precisely adjusting the size of objects in 2D games.

asset_width

Determining the width of 2D assets

Enables precise specification of the width of objects in 2D games.

asset_layers

Indicating whether 2D assets consist of multiple layers

Informs whether objects can be composed of multiple layers.

3D Spec

The "3d_spec" JSON fragment provides essential information about working with 3D assets in the game. It offers detailed insights into the characteristics and complexity of these assets:

"3d_spec": [
  {
      "key": "asset_geometry",
      "value": "",
      "value_type": "string"
  },
  {
      "key": "asset_polygons",
      "value": 0,
      "value_type": "integer"
  },
  {
      "key": "asset_vertices",
      "value": 0,
      "value_type": "integer"
  },
  {
      "key": "asset_materials",
      "value": false,
      "value_type": "boolean"
  },
  {
      "key": "asset_textures",
      "value": false,
      "value_type": "boolean"
  },
  {
      "key": "asset_uv_mapped",
      "value": false,
      "value_type": "boolean"
  },
  {
      "key": "asset_animated",
      "value": false,
      "value_type": "boolean"
  }
],
Key Value
Purpose
Application in Gaming

asset_geometry

Description of 3D asset geometry and structure

Provides information about the 3D asset's geometry, helping developers understand its structure.

asset_polygons

Number of polygons in the 3D asset

Indicates the level of detail in 3D models, affecting rendering and performance in 3D games.

asset_vertices

Number of vertices in the 3D asset

Specifies the number of vertices in 3D models, impacting the overall complexity and rendering quality in games.

asset_materials

Presence of materials in the 3D asset

Indicates whether the 3D asset has associated materials, crucial for defining its appearance and behavior in gaming environments.

asset_textures

Presence of textures in the 3D asset

Informs whether textures are applied to the 3D model, enhancing its visual realism and rendering quality in games.

asset_uv_mapped

Indicating whether UV mapping is applied

Specifies whether UV mapping is used, allowing proper texturing and shading in 3D gaming objects.

asset_animated

Indicating if the 3D asset is animated

Identifies whether the 3D asset has animations, which are vital for creating dynamic and interactive elements in games.

Sound Spec

The "sound_spec" JSON fragment provides technical details about sound assets. It covers aspects such as BPM, sample rate, bit depth, channels, duration, and an ISRC code, offering valuable information for audio integration and management within the game.

"sound_spec": [
  {
      "key": "asset_bpm",
      "value": 0,
      "value_type": "integer"
  },
  {
      "key": "asset_sample_rate",
      "value": "",
      "value_type": "string"
  },
  {
      "key": "asset_bit_depth",
      "value": 0,
      "value_type": "integer"
  },
  {
      "key": "asset_channels",
      "value": "",
      "value_type": "string"
  },
  {
      "key": "asset_duration",
      "value": "",
      "value_type": "string"
  },
  {
      "key": "asset_isrc_code",
      "value": "",
      "value_type": "string"
  }
]
Key Value
Purpose
Application in Gaming

asset_bpm

Beats per Minute (BPM)

Specifies the speed of the sound, important in music, rhythm-based games, or sound-related gameplay.

asset_sample_rate

Sound Sampling Rate

Determines the sound's sampling rate, affecting sound quality and ensuring compatibility with the audio system.

asset_bit_depth

Sound Bit Depth

Indicates the sound's bit depth, influencing sound quality and the precision of sound reproduction.

asset_channels

Number of Sound Channels

Informs about the number of sound channels, which is important with multi-track sound or spatial sound.

asset_duration

Sound Duration

Specifies the sound's duration, essential where controlled sound duration is critical.

asset_isrc_code

International Standard Recording Code (ISRC)

Introduces the ISRC code, which is a unique identifier for sound recordings and can be useful in managing music or sound in game.

Eexmaple of the Metadata FileSpec Structure
"filesSpec": {
          "item_experiance": [],
          "common": {
              "standard": [
                  {
                      "key": "asset_type",
                      "value": [
                          "2D meta asset"
                      ],
                      "value_type": "string array"
                  },
                  {
                      "key": "asset_licence",
                      "value": "Royalty Free (RF)",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_restriction",
                      "value": "Public meta asset",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_tags",
                      "value": [
                          "weapon",
                          "sword",
                          "NewEra"
                      ],
                      "value_type": "string array"
                  },
                  {
                      "key": "asset_tag_ids",
                      "value": [
                          60,
                          61,
                          166
                      ],
                      "value_type": "integer array"
                  },
                  {
                      "key": "asset_category",
                      "value": "Weapons",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_subcategories",
                      "value": [],
                      "value_type": "string array"
                  },
                  {
                      "key": "asset_category_ids",
                      "value": [
                          6
                      ],
                      "value_type": "integer array"
                  }
              ],
              "2d_spec": [
                  {
                      "key": "asset_height",
                      "value": 1024,
                      "value_type": "integer"
                  },
                  {
                      "key": "asset_width",
                      "value": 1024,
                      "value_type": "integer"
                  },
                  {
                      "key": "asset_layers",
                      "value": false,
                      "value_type": "boolean"
                  }
              ],
              "3d_spec": [
                  {
                      "key": "asset_geometry",
                      "value": "",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_polygons",
                      "value": 0,
                      "value_type": "integer"
                  },
                  {
                      "key": "asset_vertices",
                      "value": 0,
                      "value_type": "integer"
                  },
                  {
                      "key": "asset_materials",
                      "value": false,
                      "value_type": "boolean"
                  },
                  {
                      "key": "asset_textures",
                      "value": false,
                      "value_type": "boolean"
                  },
                  {
                      "key": "asset_uv_mapped",
                      "value": false,
                      "value_type": "boolean"
                  },
                  {
                      "key": "asset_animated",
                      "value": false,
                      "value_type": "boolean"
                  }
              ],
              "sound_spec": [
                  {
                      "key": "asset_bpm",
                      "value": 0,
                      "value_type": "integer"
                  },
                  {
                      "key": "asset_sample_rate",
                      "value": "",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_bit_depth",
                      "value": 0,
                      "value_type": "integer"
                  },
                  {
                      "key": "asset_channels",
                      "value": "",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_duration",
                      "value": "",
                      "value_type": "string"
                  },
                  {
                      "key": "asset_isrc_code",
                      "value": "",
                      "value_type": "string"
                  }
              ]
          }
      },


Base NFT Information

This data structure contains essential information about a specific NFT asset. It includes the asset's identifier, owner's wallet address, contract address, the NFT standard used (in this case, "erc1155"), the protocol (here, "metaprotocol"), the blockchain network (e.g., "bnb-chain"), block number, version, listing status (whether it is available for sale), the creation date of this information, and the "__v" field used for document versioning in the database. This structure is crucial for identifying and managing NFT assets on the platform.

  "_id": "63341a5e626025ac7c4511af",
  "address": "0xa293d68684be29540838dc8a0222de0c43c6b5b4",
  "createdBy": "0x832735f45299c8b6f7263e758cadba766459cd21",
  "contractAddress": "0xa293d68684be29540838dc8a0222de0c43c6b5b4",
  "standard": "erc1155",
  "protocol": "metaprotocol",
  "network": "bnb-chain",
  "chainId": 56,
  "creationBlock": 21722028,
  "version": 0,
  "isListed": false,
  "isAsset": true,
  "createdAt": "2022-09-28T09:56:46.051Z",
  "__v": 0,
  "token": [...]

_id

A unique identifier for the NFT asset.

address

The address of the smart contract associated with the NFT.

createdBy

The wallet address that created this asset.

contractAddress

The address of the smart contract associated with the NFT.

standard

Indicates the NFT standard, which is "erc1155" in this case.

protocol

Specifies the protocol being used; here, it's "metaprotocol."

network

Indicates the blockchain network where this NFT resides, "bnb-chain" in this example.

chainId

The chain ID, which is 56 in this case.

creationBlock

The block number on the blockchain where this NFT was created.

version

The version of this NFT, with a value of 0 in this example.

isListed

A boolean flag indicating whether this NFT is listed for sale (false in this case).

isAsset

A boolean flag indicating that this item is indeed an asset (true).

createdAt

The date and time when this information was created.

__v

A version field, is typically used for tracking document versions in databases.

token

The "token" section provides detailed information about the token, including its metadata and meta-assets. The components of this section have been previously discussed, covering essential details related to the token's characteristics and associated resources.

Preview of the Complete Structure of the NFT Meta Asset
{
    "_id": "63341a5e626025ac7c4511af",
    "address": "0xa293d68684be29540838dc8a0222de0c43c6b5b4",
    "createdBy": "0x832735f45299c8b6f7263e758cadba766459cd21",
    "contractAddress": "0xa293d68684be29540838dc8a0222de0c43c6b5b4",
    "standard": "erc1155",
    "protocol": "metaprotocol",
    "network": "bnb-chain",
    "chainId": 56,
    "creationBlock": 21722028,
    "version": 0,
    "isListed": false,
    "isAsset": true,
    "createdAt": "2022-09-28T09:56:46.051Z",
    "__v": 0,
    "token": {
        "_id": "6536535c9832b155f2791fe7",
        "_tokenId": 1258,
        "address": "0xa293d68684be29540838dc8a0222de0c43c6b5b4",
        "_quantity": 100,
        "burn": false,
        "createdAt": "2023-10-23T11:05:00.659Z",
        "createdBy": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
        "creationBlock": 32852815,
        "description": "The Green Sword is a formidable weapon that requires a maximum level of expertise to wield, which is level 100. This sword holds incredible power, inflicting an additional 60% damage against earth and water-based creatures. It is particularly suited for battles against all types of earthbound monsters due to its bonus power against rocky and aquatic foes. However, it's essential to remember that the Green Sword is entirely unsuitable for encounters with fire-based creatures, as it deals 50% less damage against these types of adversaries.\n\n- Potency Against Earth and Water Creatures: The Green Sword boasts extraordinary abilities, enabling it to deal significant additional damage to earth and water-based creatures. It's the perfect choice for engaging in battles against these kinds of monsters, granting a substantial 60% bonus to damage.\n\n- Weakness Against Fire Monsters: Despite its prowess against earth and water beings, the Green Sword comes with a significant drawback. It's exceptionally ineffective against fire monsters, causing 50% less damage when confronting these fiery foes.\n\nThe Green Sword is a potent weapon in the right hands, excelling in battles against earth and water adversaries. However, wield it cautiously, as it's not the best choice for battles against fire-based creatures. Your success in battle depends on your knowledge of this sword's properties and your choice of opponents!",
        "extraFiles": [
            "https://prdmetaassetfiles.blob.core.windows.net/e5bad177-f506-4d49-9f7b-ddaeb3c3e94d/assets/aec237b3-200b-4965-9b18-dac54e5e1152.mp3"
        ],
        "favorites": 1,
        "filesSpec": {
            "item_experiance": [],
            "common": {
                "standard": [
                    {
                        "key": "asset_type",
                        "value": [
                            "2D meta asset"
                        ],
                        "value_type": "string array"
                    },
                    {
                        "key": "asset_licence",
                        "value": "Royalty Free (RF)",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_restriction",
                        "value": "Public meta asset",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_tags",
                        "value": [
                            "weapon",
                            "sword",
                            "NewEra"
                        ],
                        "value_type": "string array"
                    },
                    {
                        "key": "asset_tag_ids",
                        "value": [
                            60,
                            61,
                            166
                        ],
                        "value_type": "integer array"
                    },
                    {
                        "key": "asset_category",
                        "value": "Weapons",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_subcategories",
                        "value": [],
                        "value_type": "string array"
                    },
                    {
                        "key": "asset_category_ids",
                        "value": [
                            6
                        ],
                        "value_type": "integer array"
                    }
                ],
                "2d_spec": [
                    {
                        "key": "asset_height",
                        "value": 1024,
                        "value_type": "integer"
                    },
                    {
                        "key": "asset_width",
                        "value": 1024,
                        "value_type": "integer"
                    },
                    {
                        "key": "asset_layers",
                        "value": false,
                        "value_type": "boolean"
                    }
                ],
                "3d_spec": [
                    {
                        "key": "asset_geometry",
                        "value": "",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_polygons",
                        "value": 0,
                        "value_type": "integer"
                    },
                    {
                        "key": "asset_vertices",
                        "value": 0,
                        "value_type": "integer"
                    },
                    {
                        "key": "asset_materials",
                        "value": false,
                        "value_type": "boolean"
                    },
                    {
                        "key": "asset_textures",
                        "value": false,
                        "value_type": "boolean"
                    },
                    {
                        "key": "asset_uv_mapped",
                        "value": false,
                        "value_type": "boolean"
                    },
                    {
                        "key": "asset_animated",
                        "value": false,
                        "value_type": "boolean"
                    }
                ],
                "sound_spec": [
                    {
                        "key": "asset_bpm",
                        "value": 0,
                        "value_type": "integer"
                    },
                    {
                        "key": "asset_sample_rate",
                        "value": "",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_bit_depth",
                        "value": 0,
                        "value_type": "integer"
                    },
                    {
                        "key": "asset_channels",
                        "value": "",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_duration",
                        "value": "",
                        "value_type": "string"
                    },
                    {
                        "key": "asset_isrc_code",
                        "value": "",
                        "value_type": "string"
                    }
                ]
            }
        },
        "image": "https://gateway.metaproprotocol.com/0x04ea/preview",
        "initialOwner": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
        "minifiedImage": "https://gateway.metaproprotocol.com/0x04ea/minified-preview",
        "owner": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
        "properties": {
            "collection": "New Era Swords",
            "properties_Total Damage": {
                "name": "Total Damage",
                "value": 1354,
                "display_value": ""
            },
            "levels_Enchant level": {
                "name": "Enchant level",
                "value": 7,
                "max_value": 10,
                "display_type": "level"
            },
            "levels_Weapon level": {
                "name": "Weapon level",
                "value": 100,
                "max_value": 100,
                "display_type": "level"
            },
            "boosts_Damage vs Earth and Water Creatures": {
                "name": "Damage vs Earth and Water Creatures",
                "value": 60,
                "display_type": "boost_percentage"
            },
            "boosts_Damage vs Fire Creatures": {
                "name": "Damage vs Fire Creatures",
                "value": -50,
                "display_type": "boost_percentage"
            }
        },
        "tokenName": "New Era - Green Sword",
        "transactionHash": "0x853fe7f76d69dd3db518ed19aac4d1c0464fe18b92b993f93ee398b71fdfb9a3",
        "updatedAt": "2023-10-24T06:25:57.158Z",
        "wishes": 1
    }
}

Click to see it live:

Asset Card Page of the Presented NFT Metadata Structure

👨‍💻
link.
New Era - Green Sword
New Era - Green Sword