Idea

drallcom3 avatar image
drallcom3 suggested

Economy v2 - Bundles need better stack management

Proposal:

Add CurrenciesUseDefaultStack bool to PurchaseInventoryItemsRequest and AddInventoryItemsRequest (and anything that can add/open bundles). This would tell currencies in bundles to ignore the stack name and use the default.

Why? Buying/adding bundles causes all items inside the bundle to have the same stack name. 500 gold + 1 Iron Axe + 1 Iron Helmet with the stack name "abc"? Now you have a stack of default gold and a stack of abc gold, despite my game being designed around having only that one global default stack of gold 5396-screenshot-2023-01-11-193708.png

I've designed my fair share of (big successful) games and none of them had such a functionality. All used global currencies. Never were there two stacks of gold. Might be useful if you have a game like Diablo with multiple heroes, but I'd call those special cases. Furthermore Iron Axe & Iron Helmet would end up having the same stack name. Many games would like them to have unique names, because those items might have unique values like if it's equipped........ Currently I can't even use those items if they all have the same stack name.

Currently bundles are fairly useless for selling collections of stuff to the player, unless I design around these limitations and only use default stacks. You don't want me to design around these limitations though. You want me to sell attractive bundles, because that money is also Playfab's money.

I've already talked with @kylemc@microsoft.com about it. There really really needs to change something about how bundles + stack names are handled. I'm aware that it can quickly become complicated, that's why I'm suggesting this quick fix.

In-Game Economy
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 Comment

·
kylemc@microsoft.com avatar image
kylemc@microsoft.com commented

With the Economy V2 GA release, we've added the CatalogItem.DefaultStackId property to address the scenario of stack management in bundles.

https://learn.microsoft.com/en-us/rest/api/playfab/economy/catalog/get-item?view=playfab-rest#catalogitem

The Stack Id that will be used as default for this item in Inventory when an explicit one is not provided. This DefaultStackId can be a static stack id or '{guid}', which will generate a unique stack id for the item. If null, Inventory's default stack id will be used.

For a scenario like adding gold, you can set DefaultStackId to "gold" (or leave it blank). For a scenario like adding an axe or a helmet, you can set it to "{guid}".

10 |1200

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

Write a Comment

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

Your Opinion Counts

Share your great idea, or help out by voting for other people's ideas.