Re: (PR#12869) the happiness system

"Benoit Hudson" <bh-0/DuvcfrMH9wGe/[email protected]> Sat, 23 Apr 2005 10:18:26 -0700
Newsgroups gmane.games.freeciv.devel,gmane.games.freeciv.data
Message-ID <[email protected]>
<URL: http://bugs.freeciv.org/Ticket/Display.html?id=3D12869 >

On Sat, Apr 23, 2005 at 09:49:43AM -0700, Jason Short wrote:
> 1.
> 2.

correct.

> 3.  If the city is happy for enough turns (rapturedelay) it will go int=
o
> celebration.  Celebrating cities get certain bonuses (rapture or
> enhanced output).  Celebrating status changes only at the end of a turn
> and lasts through the next turn (after which it is rechecked).

was_happy gets set at the beginning of the turn (or the end of the
previous turn) and stays set all turn long.  You're celebrating if
was_happy is set and if city_happy right now.

There's an odd interaction between buildings and happiness.  Consider:=20
turn 1: city becomes happy
turn 2: city is celebrating
turn 3: city grows; now there's an unhappy citizen;
        buy a temple
turn 4: city is celebrating

Under monarchy, celebration is odd: if you celebrate, you have higher
trade output.  Which means there's a loop: you are happy if you have
enough luxuries; lux comes from trade; trade comes from celebration.
I'm not sure how this works out.  I do know the CM assumes you are
celebrating if was_happy is set (checking it via a city.c function) and
evaluates solutions based on that; it's not clear to me this is correct.

        -- Beno=C3=AEt