question

colinchiu avatar image
colinchiu asked

RevokeInventoryItem removes all items with the given itemInstanceId. Revoking via the website is correct and revokes one instance of the item at a time.

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
brendan avatar image
brendan answered

Can you please provide the specifics of your repro, including the Title ID and PlayFab ID? An ItemInstanceId refers to one specific instance of an item in a player's inventory. Since no two items in your game can share the same ItemInstanceId, the call only acts upon one item. What are you seeing in the Game Manager that appears to be different, exactly?

3 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Joshua Strunk avatar image Joshua Strunk commented ·

Perhaps this is in reference to stackable items, which would share the same ItemInstanceId?

0 Likes 0 ·
colinchiu avatar image colinchiu commented ·

yes, it was stackable. ConsumeItem does what i want instead. I had multiple items with one instance id and i wanted to take one away.

0 Likes 0 ·
brendan avatar image brendan colinchiu commented ·

So, a stackable item stacks all of the ItemId into a single "stacked" instance. Revocation of a stack is exactly the same as revocation of any other item in the player inventory - the stack is revoked. If you have one ItemId, which is a stackable, but you have multiple instances visible in the player inventory, there are two possibilities:

1. The item was originally non-stackable. Changing the catalog definition does not change the item instances already created.

2. You experienced a problem stacking that item. We are aware of an issue where if you send multiple, distinct calls to grant an item to a player concurrently, you could in rare cases have multiple stacks for one stackable ItemId. If you've run into that, the first step is to ensure that your title is always waiting on responses to API calls before issuing more calls (we'll be adding more protection to the inventory flow to prevent that shortly). If you're not issuing multiple concurrent calls, then you may have found something new which we would like to investigate. If that's the case, please let us know your full set of repro steps.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.