https://imgur.com/a/M8VlCJ9
In this mockup I have moved some elements around to make room for 3 more rows of stash space. 5 of the 8 tabs are reserved for the player class. The other tabs are shared by all characters. Everything adds up to 400 character stash slots + 240 shared stash slots. The live game offers 300 in total.
Overall, this is a very generous new design that:
- adds 2 more tabs (now 8 vs 6)
- adds space for 80 items per tab, up from 50
- adds tabs exclusive to the current character/class to allow more builds cough cough armory cough
- moves clickable tab symbols in a spot that requires less mouse movement
- moved most other elements to one area which is easier on the eyes
- removed some text, art, lines, visual clutter that has hardly any use
4 Likes
Your idea is fine, it just wonāt work with how the stash currently works. Thereās some wonky coding going on that forces us all to load everyoneās stash tabs when we enter a zone. So itās not a matter of rearranging the UI or adding more space.
How to fix it is well beyond my pay grade. Iām obviously not a programmer. Those that claim to have a fix for it in D4 may or may not be right, but I donāt think itāll be as easy as they say.
Sadly only thing we can do is wait for them to come up with a permanent fix to the problem they created themselves.
2 Likes
This never ceases to get a chuckle out of me. ASAP in Blizzard terms typically means several years out.
5 Likes
Same. My guess is they made it this way because itās cheaper on the db calls.
1 Like
How does calling every players data from a db is cheaper than calling the current player data from the db??
Not in this planet, for sure. Everybody knows the less data you retrieve from the db, faster it is.
Blizz done this on purpose, and theyāre lazy to correct it⦠Awfull programing⦠and they are pros⦠Sorry, my mistakeā¦
If you make one call to load it all itās cheaper than making a call every time someone opens their stash and looks at something or a call every time a tab is switched or a vendor is loaded and you inventory opens etc.
I agree itās lazy design but itās still cheaper.
The worst part is that loading stash tabs of other players was a known issue in Diablo 3 and yet nobody learned anything from it.
This is baffling to me. I canāt think of any sensible reason to load other players stash ever. I mean maybe inventory to accommodate trade (although this seems like bad engineering too) but why the stash?
So itās wealthyer to clutter memory with a lot of data that is not gonna be of no use than just use the needed data when you want?
Ok, letās just call 1gb of data because we might need them, and spare some calls to the databaseā¦
Really bad programming.
Copy paste code from d3 , they couldnt fix it there , what makes ppl think that it will be fixed here?
2 Likes
If I have to guess:
The UI shows us a treasure chest, an inventory and player equipment as something that is separated, but actually it uses exactly one source = a list with different properties. The list elements are marked as equipment, inventory, chest, consumable, dungeon key and so on. (Tbh, I think this is not unusual to have in the first place.)
If we assume that there is a clunky or unrefined search method behind, and the game has to look through a whole list of everything + properties (includes customized colors and transmog) so it can finally display what other players are wearing, then it could take a while.
I dont know if that is how it works.
Imagine wow servers working like this 
Actually, WoW inspired me to write this wild guess, haha.
Here you can read about InventorySlotIDs:
https://warcraft.wiki.gg/wiki/InventorySlotID
Hmm either iām not really getting what you are saying or Iām not reading this in the same way you are. It seems insane to me that any modern software would handle all objects in the world as a massive list or array and not as separate objects.
1 Like
Actually it is a simple query on the database backend to limit data pulled to the logged in user and not based on region like the current query is.
Example currently -get region ā array of logged in users ā get stash items⦠Simplified get logged in user ā get stash itemsā¦
Yes I am a programmer.
Now, that is based on how I would have engineered the database and they may not have the correct foreign idās linked to query as simply as I showedā¦
It is all related, as how the database is engineered is crucial on how simplified queries for that data can be.
1 Like
Iām not going to argue, Iāll only say that Blizzard has their own engine for their games and how it all works. To claim to know the inner workings of it and the programming required is well beyond my pay grade. I just have no idea if your āsolutionā is even viable according to their coding.
The only people who could answer this never would though. So weāre currently stuck with various programmers such as yourself offering 101 solutions to a problem. You arenāt the first programmer to offer a solution, and you wonāt be the last.
1 Like
I tried to say that there is no easy method implemented in D4 to filter what is equipment, what is inventory and what is stash. That is my non-professional explanation to make sense of it.
They should contact the WoW team about this issue.
Iām not sure this is really addressing the issue. It seems you are suggesting they should load a specific user and their stash instead of everyone in the region, But it seems they are already doing that and are saying the problem is something different
To me this reads more as :
Trigger : āSeeā another user
Action : load character and everything about them including stash and items in it
So iām still left wondering why the hell they would ever need to load everything in someoneās stash into your client. Since no player ever has access to another playerās stash, this makes no sense to me.
3 Likes
Meanwhile at POE 2 I have a zillion tabs and it works just fineā¦