다음을 통해 공유


카탈로그 v2

Important

이제 Economy v2가 일반 공급됩니다. 지원 및 피드백을 받으려면 PlayFab 포럼으로 이동하세요.

작성자 엔터티 유형 및 ID

게임 관리자 또는 API를 통해 타이틀 수준에서 카탈로그 항목을 생성하는 것 외에도 플레이어를 대신하여 카탈로그 항목을 생성할 수도 있습니다. 타이틀 플레이어 계정 ID(교차 타이틀인 Master Player Account ID이(가)아님)가 필요합니다.

{
  "Item": {
    "CreatorEntity": {
      "Type": "title_player_account",
      "Id": "74657374696E6731"
    },
    "Type": "catalogItem",
    "Title": {
      "NEUTRAL": "Fire Sword!"
    },
    "Description": {
      "NEUTRAL": "Fire Sword! (It's really cool)"
    },
    "ContentType": "Game Item",
    "AlternateIds": [
        {
          "Type": "FriendlyId",
          "Value": "fire_sword"
        }
    ]
  },
  "Publish": false
}

키워드

키워드는 사용자 검색이 가능한 지역화된 문자열의 목록입니다. 인게임 스토어에서 관련 항목을 검색하는 사용자에게 유용합니다.

  • 키워드는 지역화 키에 의한 인덱스입니다.
  • 키워드는 모든 항목에 대해 선택 사항입니다.
  • 항목에는 모든 개수의 나열된 키워드가 포함될 수 있습니다.
  • 예:
{
    "NEUTRAL": { "Values": ["fire", "weapon"] },
    "de-DE": { "Values": ["feuer", "klingenwaffen"] },
    "en-US": { "Values": ["fire", "weapon"] },
    "fr-FR": { "Values":["enflammé","arme"] }
}

설명

설명 필드는 각 항목에 표시하기 위한 지역화된 문자열의 목록입니다.

  • 지역화 키는 인덱스로 사용됩니다.
  • 설명은 모든 항목에 대해 선택 사항입니다.
  • 예:
{
    "NEUTRAL": "Fire Sword! (It's really cool)",
    "de-DE": "Feuer Schwert! (Es ist wirklich cool)",
    "en-US": "Fire Sword! (It's really cool)",
    "fr-FR": "Épée de feu! (C'est vraiment cool)"
}

콘텐츠 형식

⚙️ > 타이틀 설정 > Economy(V2) > 카탈로그(V2)에서 항목을 구성하도록 사용자 지정 콘텐츠 형식을 구성합니다.

  • 콘텐츠 형식은 검색할 때 성능 필터로 존재하며 항목을 더 쉽게 그룹화할 수 있도록 합니다.
  • 콘텐츠 형식은 모든 문자열일 수 있지만 항목당 하나만 가질 수 있습니다.
  • 콘텐츠 형식의 몇 가지 예는 다음과 같습니다.
    • weapon
    • armor
    • gem
    • pet
    • lootbox
    • appstorebundle
    • playerattribute

대체 ID

대체 ID를 사용하면 코드 또는 타사 API에서 카탈로그 v2 항목으로 더 쉽게 작업할 수 있습니다. 일부 대체 ID에는 친숙한 ID 또는 마켓플레이스 ID가 포함됩니다.

친숙한 ID

친숙한 ID는 항목의 "컴퓨터 이름"이며 코드에서 쉽게 참조할 수 있는 이름입니다. 식별 ID는 모든 항목에 대해 선택 사항이며 카탈로그 내에서 고유해야 합니다.

{
  "Item": {
    "Type": "catalogItem",
    "Title": {
      "NEUTRAL": "Fire Sword!"
    },
    "Description": {
      "NEUTRAL": "Fire Sword! (It's really cool)"
    },
    "ContentType": "Game Item",
    "AlternateIds": [
        {
          "Type": "FriendlyId",
          "Value": "fire_sword"
        }
    ]
  },
  "Publish": false
}

마켓플레이스 ID

대체 ID는 다양한 마켓플레이스에서 제품을 식별하는 방법입니다. 각 마켓플레이스에는 고유한 제한 및 정책 세트가 있으므로 스토어 항목이 플랫폼별로 구성되는 방식에 따라 설정해야 합니다.

PlayFab은 여러 마켓플레이스와 함께 제공됩니다. 올바른 Marketplace 추가 기능을 작업하려면 마켓플레이스가 다음 값에 있어야 합니다.

  • Apple = "AppleAppStore"
  • Google Play = "GooglePlay"
  • Nintendo = "NintendoEShop"
  • Microsoft = "MicrosoftStore"
  • PlayStation = "PlayStationStore"
  • Steam = "Steam"

다음은 각 플랫폼에 대한 대체 ID를 구성하는 방법에 대한 몇 가지 예입니다.

  • Apple App Store: product_id, 예제 com.companyname.productname
  • Google Play: productId, 예제 com.companyname.productname
  • Microsoft Store: productId, 예제 9NBLGGH42CFD
  • Nintendo E-Shop: item_id, 예제 nintendo700100
  • PlayStation Store: id, 예제 PLAYFAB00000CUSA
  • Steam: itemdefid, 예제 100
{
  "Item": {
    "Type": "catalogItem",
    "Title": {
      "NEUTRAL": "Fire Sword!"
    },
    "Description": {
      "NEUTRAL": "Fire Sword! (It's really cool)"
    },
    "ContentType": "Game Item",
    "AlternateIds": [
        {
          "Type": "FriendlyId",
          "Value": "fire_sword"
        },
        {
          "Type": "MicrosoftStore",
          "Value": "9NBLGGH42CFD"
        },
        {
          "Type": "AppleAppStore",
          "Value": "com.companyname.productname"
        },
        {
          "Type": "GooglePlay",
          "Value": "com.companyname.productname"
        },
        {
          "Type": "NintendoEShop",
          "Value": "nintendo700100"
        },
        {
          "Type": "PlayStationStore",
          "Value": "PLAYFAB00000CUSA"
        },
        {
          "Type": "Steam",
          "Value": "100"
        }
    ]
  },
  "Publish": false
}

플랫폼

사용자 지정 플랫폼은 플랫폼 아래의 v2 카탈로그 설정에서 추가되고 구성됩니다. 딥 링크 또는 기타 사용자 지정 속성에 대한 구성 데이터로 플랫폼을 사용할 수 있습니다.

태그

유효한 문자열 목록을 제공하여 태그 목록을 설정할 수 있습니다. Tags은(는) 모든 항목에 대해 선택 사항이며 항목에는 나열된 태그가 얼마든지 포함될 수 있습니다.

  • 아이템은 태그를 가질 수 있습니다.
    • 일관되고 손상 유형과 같은 여러 항목에 적용되는 텍스트 메타데이터에 태그를 사용합니다.
    • 태그는 검색 필터로 존재합니다.
    • 항목당 여러 태그를 가질 수 있습니다.
    • 태그는 카탈로그 항목, UGC 항목, 파일 및 이미지 간에 독립적으로 구성됩니다.
  • 태그의 몇 가지 예:
    • firedamage
    • icedamage
    • bluntdamage
    • slashingdamage
    • piercingdamage
    • lightarmor
    • heavyarmor

DisplayProperties

디스플레이 속성은 카탈로그의 모든 항목에 추가할 수 있는 사용자 지정 항목 속성입니다. 특정 속성은 SearchItems API를 사용할 때 검색, 필터 및 정렬에 사용되도록 표시 속성 매핑 섹션에서 설정할 수 있습니다.

  • 항목은 구성된 필드 유형이 있는 표시 속성을 가질 수 있습니다.
    • 지식 텍스트와 같이 항목마다 다른 메타데이터에 대해 표시 속성을 사용합니다.
    • 표시 속성은 쿼리 가능(색인화, 빠른 쿼리) 또는 검색 가능(느린 텍스트 쿼리)
    • 인덱싱할 각 유형의 필드를 최대 5개까지 구성할 수 있습니다.
  • 예:
{
  "game-model": "//models/weapon/fire_sword.fbx",
  "durability-default": "9001"
}

DisplayProperties에 필드를 추가하면 데이터베이스에 새 인덱스가 생성됩니다. 색인 생성 후 추가되거나 업데이트된 문서만 포함됩니다. 표시 속성이 모든 항목에 적용되어야 하는 경우 전체 카탈로그를 다시 게시해야 합니다.

DateTime, DoubleQueryable String 표시 속성은 쿼리 가능하며 이러한 속성은 Filter 및 OrderBy 문에서 사용할 수 있습니다.

Searchable String 표시 속성은 검색이 가능합니다. 이러한 속성은 Search 필드에 대한 퍼지 검색으로 쿼리됩니다. 검색 가능한 속성은 Filter 및 OrderBy 문에서 사용할 수 없습니다.

타이틀은 각 유형의 표시 속성이 5개로 제한됩니다. 자세한 내용은 한도를 참조하세요.

Warning

디스플레이 속성 매핑은 키 값 쌍의 인덱싱된 목록으로 저장됩니다. 기존 디스플레이 속성 매핑을 삭제하면 인덱스를 이동하고 나머지 모든 속성의 동작을 끊을 수 있습니다. 기존 속성을 삭제하거나 편집하는 것보다 추가 속성을 추가하는 것이 좋으며 절대적으로 필요한 경우가 아니면 속성 매핑을 삭제하지 않아야 합니다.

가격

가격을 사용하면 인게임 통화 비용을 아이템에 할당할 수 있습니다. 선택 사항이지만 플레이어가 PurchaseItem API를 사용하여 인게임 통화로 항목을 구매할 수 있습니다.

  • 항목당 여러 가격을 설정할 수 있습니다.
  • 가격은 모든 기존 통화로 설정할 수 있습니다.
  • 예:
"PriceOptions": {
  "Prices": [
    {
      "Amounts": [
        {
          "Id": "{{CurrencyID}}",
          "Amount": 15
        }
      ]
    }
  ]
}

파일 및 이미지

이러한 필드는 Config Storage 대신 File Storage를 사용합니다. 파일 스토리지는 아이콘 또는 자산 게임 엔진 메타데이터와 같이 자주 업데이트되거나 수정되는 게임 자산을 위한 것입니다. PlayFab에서 처리하는 파일의 종류에 대한 자세한 내용은 제한을 참조하세요.