First off, what Caboose700 said. Our own inventory means our own servers, our own bandwidth, and our own system that we have to create. It's not cheap and it would take a very long time.
We're very locked into the Steam inventory system now.
Here's the pros, though:
- Valve hosts and maintains everything. They also provide support
- Inventory is already part of the Steam system and is already coded for us
- The system is tested daily by lots of developers
- The system is mature
- The system is secure
- It's integrated directly into Steam's system so authentication is handled internally
- You can use the Steam trading system
- You can use the Steam economy system (if we want to)
- You can easily create items through gameplay events such as playtime, achievements, or stats
- You can hook into randomly generating items (catsacks) without any massive changes
- You can track and reverse any item exchanges (purchases/sells/trades)
- You can easily retrieve what player owns what
- It has a web interface that makes it easy to update items
- Item tag system (which we don't fully use yet, but it's there)
- Item custom property system (which we don't fully use yet, but it's there)
- With the addition of stacks, you can have TONs of items
The selling multiple items is actually a limitation of the webapi, which also includes a limitation on our end. We found solutions to this problem with Tower Express, but in-game it would require a bit more work because we use a completely separate system for it.
The lag with winning jackpots would still occur even with our own system because we'd still have to do a queue just like Valve does. However, there's another issue with the way we give items that blocks the queue for all players if one person is being granted an item. Zak was working on a fix for it, but it hasn't been thoroughly tested yet - so it's not ready to be shipped out.
Item glitching in Condo is NOT a Steam inventory issue. It's the way we serialized data - we used Unreal's item serialization which ended up getting corrupted sometimes.