Programmers! Can you explain the stash thing to me?

server memory is cheaper than a gazillion db calls per day over the life of the game.

Better to ask ChatGPT :grin:

2 Likes

Dont you put that evil on me Ricky Bobby!

…How could they get away with that.

I would assume when the mob is instanced? So theres nothing that needs to happen on death that could slow things down?

The code is just a random number generator that spits out a number and the game gives you that drop.

It’s very easy.

I find that the language between stash and inventory may get confused. Who knows really perhaps the tweet in question meant to point to inventory, and not the player stash.

This would make more sense in my eyes. As players can easily equip weapons on the fly. Did he mean this behavior is in TOWN, or in the open world? I don’t think that was ever mentioned.

At this point I’m just assuming so…

No - im saying how would people not abuse this with cheats.

They could send the number to you from the server also. It would work the same. No database call required.

It’s literally just a string that tells the game which item to load from your client. The server could batch drops and then populate the database with a bunch of drops all at once for many players.

It could work many different ways. Hard to know.

the topic is about why we can’t have more stashes so I highly doubt they were confused about which topic

this is the reason you don’t have like 10-15 stashes

It could possibly be tech debt, they had to cut on development to meet deadlines. With how basic the inventory/storage system is right now I wouldn’t be surprised.

It’s as basic as it gets.

No search, no filters, limited inventory, no gem and sigils storage etc.

It would become a call as soon as you pick up the item though.

I just saying though, and I agree with you but. There are tabs in player inventory space too. It does seem very odd to me that this is programed in such a way. I kind of wished they further elaborated about it to be honest.

I assumed this for monetization purposes like everyone said. If you cant store everything “you might use later”, then when time comes, youll have to refarm it which = content longevity!

Im sure they dont want people with a bank full of build possibilities ready to go when a patch drops buffing one of those builds. Even though thats what we want…

They probably just implemented something really quick that worked. Logically, it makes zero sense to have the system doing what it’s doing given the restrictions in place. It’s just wasting resources on both ends.

1 Like

No bro. If the server says, you got XXXX drop. Your client loads XXXX item locally.

No assets are transfered from the server to your PC. It’s just strings like XXXX that are transfered.

The server could then tell the database player Frost received XXXX item in a batch with 100 other player’s and their items.

Your PC would never interact with the database. There is no way they want every client to call the database for every drop. I can promise you this.

Other than not having it “potential” lag when opening your stash. There’s no reason.
The server keeps all this information as STRINGS, simple text.

All they really needed was sub functions / local functions to pull info from the account as needed instead of all at once. This is basic coding structure. Like Stash.Character.Account. Account being the primary, character a sub and Stash being a sub/local function.

I certainly hope they didn’t do drops the Warframe way where they’re client side then it syncs with the server on dungeon complete or various other intersects. That’s really gross.

Such a method is very easy to hack.

further explanation would basically do two things

  1. Go over the heads of non programmers.
  2. Potentially be used by malicious actors to harm the game in some way. either with dupe hacks, crashing others on purpose, or some other unwanted action.
2 Likes

I would think so right? Like all you gotta do on dungeon exit is figure out a way to tell the server you looted the Spear of Nevergonnagetit and bam

Here is another thought.

Observe the behavior of how each player gets their own loot. Observe the behavior of how loot gets sent to stash if you don’t pick it up. Maybe there is something here that needs to have others players stash and loot, and how it’s tied into everything? Maybe there is like a check to see what players gets what, and if it fits into the “player” stash? Then it’s sent to the stash, or has that option?