You explanation is kind of correct, but you are talking from a UE4 point of view, meaning not how actual programming works but how the UI deliver information to the user. Which is fine, as you say you are explaining them in layman terms.
Increasing the size of a stack from 100 to 1000, is a good idea, but only due to how much is required to craft things. They could have decreased the cost of all items and it would have been equally fine. So this is mostly done due to a design choice made by Funcom rather than anything else, because it give them a larger range for setting the cost of crafting items.
The normal way you would program something like this and 99.9% certain that it is also how Funcom does it, is using classes/objects and instances (which are programming terms).
So all items you collect in the game are based on the same class. So a stone is in principle the same as wood is, only the content of the attributes are different.
All sharing the same ones which describe an item, such as Name, Weight, Icon, ID, PlayerID, StorageID, Amount, burnable, burn time etc. Some of these are also what you can see in the dataset of the database, depending on which they store, they probably don’t store values that isn’t needed.
I haven’t looked at their dataset, so how exactly they have organized them I don’t know, as they can do in different ways.
Meaning that materials might not be organized the same as weapons or armor, as these might be separate classes taking care of that, because they have other unique attributes, like armor, damage etc.
Handling these things in programming is very basic, that this isn’t the issue, Funcom would absolutely know this, any student of programming would. There is no such thing as blueprints in programming, it is a UE4/5 term for something kind of similar to a class in traditional programming.
Which is also why it would be insane to create the game to loop through each item count, it is simply not how anyone would do it in programming. I can’t think of a single example of where anyone would do something like that unless you needed something to happen to individual items. But that is not the case here.