empserver/tests/update/99-POGO
Markus Armbruster c5df505c98 update: Reorder unit building and maintenance for fairness
The update visits ships, planes and land units in increasing order of
country number.  Within a country, it visits first ships, then planes,
then land units, each in increasing order of unit number.

The order is relevant when money, materials and work don't suffice to
build everything.

Money is charged to the owner, so only the relative order for the same
owner matters there.  One order is as good as any.

Work and materials come from the sector, so only the relative order in
each sector matters.  The current order unfairly prefers countries
with lower country numbers.  Mitigating factor: the affected countries
need to be friendly (ships only) or allied.

The unfairness goes back to Chainsaw's option BUDGET.  See the commit
before previous for more detailed historical notes.

The update test demonstrates the unfair behavior: sector 14,6 builds
ships 95/97 owned by country#1, but not 96 owned by country#7.
Likewise, planes 95/96/97 and land units 95/96/97.

Go back to the the pre-BUDGET order: first ships, then planes, then
land units, all in increasing order of unit number, regardless of
owner.

The update test now builds ship, plane and land unit 96 instead of 97.

Bonus: speeds up both the update and budget by a similar absolute
amount.  For budget, this is roughly a factor of two in my testing.
For the update, which does much more, it's around 10%.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
2017-08-06 20:08:31 +02:00

228 lines
5.5 KiB
Text

force
show updates
power
read 0
|| country#1
| pop growth
| 2,0 1f for 83+83 babies make 83c 83u
| 4,0 2f for 166+166 babies make 166c 105u
| 6,0 3f for 250+250 babies make 210c 105u
| 8,0 plenty of food make -1000c 100u pop limit
| starvation
| 1,1 33u
| 3,1 100u 33c
| 5,1 100u 50c
| 7,1 100u 20c 30m
| 9,1 16c
| 11,1 6c
| 15,1 16m
| ship#42 25m
| 43 30u 3c
| land#42 25m
| BUG: che don't age in 1,1
| sector building
| 0,2 0% stopped
| 2,2 100% -> 84%-88% 7.8 work, 4 left
| 4,2 100% -> 0% -> 14% 78 work, 39 left
| 6,2 100% -> 0% -> 100% 273 work, 148 left
| 8,2 1% no materials
| 10,2 1% -> 11% f 10h
| 12,2 1% -> 11% c 10l 20h, 30h left
| ship building
| 60 stopped
| 61 neutral harbor
| 70..73 +0.5% at sea
| 74 +1% at sea
| 75 +1% at sea
| 76 +2% at sea limit 80%
| 90/91 friendly harbor with and without work
| 92/93 +0% friendly city without work
| odd: cities don't repair ships
| 95 +80% own harbor
| 97 +0% own harbor, materials limit
| 103 +13% at sea
| 104 +13% at sea
| 113 +5% at sea
| 114 +5% at sea
| plane building
| 60 stopped
| 61 friendly airfield
| 70 +2% carrier at sea
| 71 +1% carrier at sea up to limit 80%
| 72 +1% carrier in allied airfield up to limit 80%
| 75..78 +7.5% allied carrier in friendly airfield
| BUG: avoids "no airfield" malus, uses airfield materials
| 80 +30% in the field
| 81 +20% in the field (weird limit "at most (100-eff)/3")
| 82 no work
| 90/91 +90% allied airfield with and without work
| 92/93 +30% allied city without work
| 95 +50% own airfield
| 97 +0% own airfield, materials limit
| 100 allied airfield where plague killed off mil
| land unit building
| 60 stopped
| 61 friendly hq
| 80 +30% in the field
| 81 +20% in the field (weird limit "at most (100-eff)/3")
| 82 no work
| 90/91 allied fort/hq with and without work
| 92/93 +30% allied city without work
| 95 +90% own hq
| 97 +0% own hq, materials limit
| 98 +90% own fort
| produce sect
| make units avail
| 1,3 m 0i 0 stopped
| 3,3 m 0i 39 inefficient
| 9,3 e 0m 93.6 mil limit
| 11,3 e 30m 78
| 13,3 e 45m 39.6
| -16,4 m 7i 8
| -14,4 m 78i 0
| -12,4 m 26i 1.3
| -8,4 g 7d 8
| -6,4 g 78d 0
| -4,4 g 500d 700 resource limit
| -2,4 ^ 45d 0
| 0,4 a 57.8f 8
| 2,4 a 643.5f 0
| 4,4 a 999f 478.9 product limit
| 8,4 o 6.4o 8
| 10,4 o 71.5o 0
| -15,5 o 6.0u 8
| -13,5 u 66.9u 0
| -11,5 u 244.3u 915 resource limit
| -7,5 i 23.1s 26 0
| -5,5 i 44,4s 50 240
| -3,5 i 88.9s 100 90
| 1,5 d 3.6g 4 14
| 3,5 d 8.9g 10 230
| 9,5 % 693.3p 78 0
| 11,5 % 888.9p 100 56
| 13,5 % 999p 112.4 277.6 product limit
| -16,6 b 15b 15 3
| -14,6 b 20b 20 290
| -12,6 b 6b 6 1.0
| -8,6 j 71.5l 78 0
| -6,6 j 91.7l 100 290
| -4,6 j 999l 1089.8 110.2 product limit
| 0,6 k 35.8h 39 0
| 2,6 k 45.8h 50 290
| 4,6 k 19h 20.7 36.6 backlog
| -15,7 t 2.4 4 14
| -13,7 t 3.0 5 310
| -7,7 r 2.4 4 14
| -5,7 r 3.6 6 294
| 1,7 l 78 78 0
| 3,7 l 100 100 290
| 9,7 p 78 78 0
| 11,7 p 0 0 78
| produce ship
| 100 +40.5f with 100% eff 10 fert
| 101 +405f with 100% eff 100 fert
| 102 stopped
| 103 +243f with 60% eff
| 104 +81f with 20% eff
| 110 +5.14o 100% eff 10 ocont
| 111 +51.4o with 100% eff 100 ocont
| 112 stopped
| 113 +29.0o-29.3o with 60% eff 94-95 ocont
| 114 +9.2-9.6o with 20% eff 91-93 ocont, 90-93 ocont left
read 1
nation 1
cens 0:15,0:3
comm 0:15,0:3
cens -16:15,4:7
comm -16:15,4:7
ship 0:31,0:15
carg 0:31,0:15
plane 0:31,0:15
land 0:31,0:15
|| country#2
| negative money delta
| starvation 0:15,0
| #30 lost 12% to lack of maintenance
| #31 lost 1%
| sector building
| -16:-12,0 no money
| sector production
| -1,3 no money
| ship building
| 65 no money
| plane building
| 65 no money
| land unit building
| 65 no money
read 2
nation 2
cens -16:-1,0:3
comm -16:-1,0:3
peek -16:-1,0:3
ship -32:-1,0:15
plane -32:-1,0:15
land -32:-1,0:15
|| country#3
| civil unrest in 0:15,-8:-5
| loyalty recovery and conversion 0:15,-3
read 3
nation 3
cens 0:15,-8:-1
comm 0:15,-8:-1
peek 0:15,-8:-1
ship 0:31,-16:-1
plane 0:31,-16:-1
land 0:31,-16:-1
|| country#4
| che take over -16:-14,-8 and spread; -14,-8 is a bank
| plague stage 4 (dying) -16:-1,-6 ship#10 land#10
| -16,-6 reverts to deity
| -14,-6 resets work etc.
| -12,-6 mil all die
| -10,-6 resets work etc
| -8,-6 reverts to deity
| plague stage 3..1 -16:-1,-5:-3 ship#11..19 land#10..19
| plague stage 0 (healthy) -16:-9,-2, 50% chance to become exposed
| -5,-1 tech too low
| -3,-1 edu too low
read 4
nation 4
cens -16:-1,-8:-1
comm -16:-1,-8:-1
peek -16:-1,-8:-1
| #10 plague deaths
| #61/62 not repaired
ship -32:-1,-16:-1
| #1 sat moved
plane -32:-1,-16:-1
| #10 plague deaths
land -32:-1,-16:-1
|| country#5
| che retake -16:-14,-8
read 5
nation 5
|| country#6
| plane building
| 62 friendly airfield
| 96 +50% allied airfield
| land unit building
| 62 friendly hq
| 96 +50% allied hq, materials limit
read 6
nation 6
cens 0:15,8
comm 0:15,8
|| country#7
| ship building
| 62 neutral harbor
| 96 +20% friendly harbor, materials limit
read 7
nation 7
cens -16:-1,8
comm -16:-1,8
|| resource depletion
reso * ?min>0
reso * ?gold>0
reso * ?fert>0
reso * ?ocont>0
reso * ?uran>0