This is my understanding of how pop needs & buy packages work. Please let me know if I am missing something.
- Buy packages are determined solely by SOL/Wealth. Pop needs (in terms of category and amount) can't be influenced by anything other than this - there are no conditional needs.
- For a specific pop need, pops will always create buy orders equal to an amount of goods that at equilibrium/base prices (buy orders = sell orders) sum to the value of the need specified in the buy package of their current SOL/Wealth. E.g. pops will always spend between £15 and £26 on heating (per 10,000 pops) if all prices are at 0% change from base.
- This means that it is not possible for a good to be intrinsically better at fulfilling a need. The only thing that reduces pops' spending on needs is the relative market price (the + or - % displayed on the market table). Electricity, for example, is not intrinsically more efficient at meeting pops' heating needs than wood or coal; it is weighted significantly more and can cover 100% of the need rather than 60%, but unless Electricity's relative market price is significantly cheaper than its base price (or other heating goods are significantly more expensive than their base price), pops are spending the same amount of money on heating once electricity comes into play as before.
- The selection of what goods are bought to fulfill a specified need can be influenced by script weight (a fixed number), max/min proportions (also fixed), taboos and obsessions (not nation specific), and possibly bans (only used for the opium wars and prohibition in vanilla), in addition to the current market price. This means that pops may sometimes purchase (create buy orders for) a more expensive good (in terms of market prices) to fulfill a need rather than a cheaper one, but only within the bounds of the price system (e.g. max +75%/-75% of base price).