It is
not the production and
not the actual domestic sales that really count for
Happiness effects of "Domestic Market".
It is the
"Domestic Demand Supply" (storage being high enough to satisfy the domestic demand) at the end of the turn.
A Player turn always consists of:
"Player Begin Turn Processing" ->
"Player Input Phase" ->
"Player End Turn Processing".
I know that this is
difficult for players to understand because they
only think about "Player Input Phase".
"End of the turn"
not being when
"Player presses Button" but when all "
internal calculations" happen after that and control is switched to next player.
(There is a lot of stuff going on after the player presses the "End Turn". The game of course needs to
process the players inputs and calculate the results.)
Happiness is
displayed in City Screen
only as Forecast. (Only looking 1 level deep into feature dependency chain.)
It does
not yet consider goods that
have not been produced and thus
can not yet be sold considering Happiness effects of Domestic Demand.
The
actual Happiness calculation is the
absolut last things that happens during
player input processing after the player presses
"End Turn".
(Everything else - Production, Custom House, Domestic Market, ... resulting in actual current Storage - happen before.)
If you always
leave a small storage of the goods sold on domestic market,
there is no "ambiguity" probem.
In that case the values
displayed at the end of the turn are exactly the ones applied in the logic.
If you always
completely empty storage of goods
AND production of goods is big enough to satisfy domestic demand,
then yes,
in that case there might be
some ambiguity because Happiness happens last after all other.
But I can not change that without risking performance impacts.
Otherwise I would most likely
ruin performance, because calculating "Forecasts of Forecasts of Forecasts of ...".
Calculating a Happiness
Forecast on top of a Storage
Forecast on on top of a Domestic Sales
Forecast on top of a Production
Forecast and a Custom House Sales
Forecast after ...
Please understand that there is a huge sequence of logic happening
after you press
"End Turn".
The result is only certain (completely determined) after all of that logic has been processed.
Summary:
For being
save considering Happiness,
leave a small buffer in storage of the
goods sold on Domestic Market.
(There will only be ambiguity if you completely empty storage of a domestic market good and also produce it in the city as well.)
If you know that
production will be higher than demand anyways, then
you do not have to.
It simply cannot display it "perfectly" in the Happiness Forecast.
There is too much "forecasting in there before" and I am afraid of
impacting performance too much.
From a Gameplay Perspective:
Your people
feel save and happy if they see you provide enough supply (storage) of goods to satisfy their market demands.
They know "Hey next turn we will still be able to get ... on the market. There is no shortage.".
--------
Yes, it requires
Micromanagement. But that is
exactly what I intended.