                              Concept : Innards

NAME
   Update-sequence - The order of events at the update

Level: Expert

This document gives a rough order of events during the update.

1) First, prepare all sectors in the world, row by row, going from top
        to bottom, left to right

        a) fallout is checked, if FALLOUT is defined
        b) guerrilla warfare is checked
        c) if there are no civs or mil in the sector, it reverts to the deity
        d) taxes are collected from non-captured civs & uws. Mil are paid.
        e) people in non-sanctuary sectors eat
                1) If not enough is available, the sector uses the supply
                        routines to draw more.
                2) If still not enough is available, the excess people will
                        starve off.

                        a) No more than 50% of the people in a sect can die
                        b) If the NEW_STARVE option is not enabled, all types
                                of people (civs, uw, mil) starve evenly.

                        c) If the NEW_STARVE option is enabled, the uw's die
                                first, then the civs, then the mil.

        f) if there was starvation, the work percentage is set to 0, otherwise
                the work rate rises by 8+(1-15), max of 100

        g) population grows
        h) if the sector doesn't have the plague, see if it catches it
                otherwise plague the people

        i) if there are no civs & no mil left, the sector reverts to the deity
        j) if the sector is a bank it makes $$ proportional to its efficiency
        k) if the sector is a cap, it costs $$ equal to the # of etus
                np->nat_money -= etus;

2) Then, in order of country #, deal with each country:
        a) pay for military reserves.
        b) in order of set priorities, 1-39, 1 going first, then 2, etc.
                1) produce for owned sectors of that type
                        a) sectors that are stopped are skipped. (see info stop)
                        b) first increase eff
                        c) then make things

        c) If ship maintenance is not yet done, do it now
        d) If ship building is not yet done, do it now
        e) If plane maintenance is not yet done, do it now
        f) If plane building is not yet done, do it now
        g) If unit maintenance is not yet done, do it now
        h) If unit building is not yet done, do it now
        i) produce for all sectors that have not yet produced
                1) All sectors with a 0 priority are skipped.
                2) All stopped sectors are skipped.
                3) first increase eff
                4) then make things

3) Then, do deliveries for all sectors in the world, row by row, going from
        top to bottom, left to right

4) Then, do exporting via distribution for all sectors in the world, row by
        row, going from top to bottom, left to right

5) Then, do importing via distribution for all sectors in the world, row by
        row, going from top to bottom, left to right

6) modify tech/res/hap/edu levels & do tech bleed
7) decrease levels due to passing of time
8) update war declarations (for slow war)
9) Add mobility to ships
10) Add mobility to sectors
11) Add mobility to planes
12) Add mobility to land units
        a) Units with negative mobility have their mob halved (-100 goes to -50)
        b) Mobility is added

SEE ALSO
   Innards, Update

