PDATAx.DIS - Old Planet Data [V]
This file contains all your planets, and all unowned planets you are orbiting (those for which you can request a mineral survey).
Up to Host 3.14, you were getting PDATA records also for planets owned by enemies. This is problematic because they contain the friendly code, which current client programs, including recent Winplans, will happily display. Stealing minerals, sailing minefields -- it never was easier :)
Up to PHost 3.4c, PHost was zeroing the fields Colonists, Supplies, Money, Mines, Factories, Defense, Colonist Tax, and Native Tax when you were scanning an unowned planet. Thus, the value zero actually means "don't know", not "zero".
+0 WORD Number of planets +2 n BYTEs Records of 85 bytes each +m 10 BYTEs PDATAx.DAT: Signature 2 -> GENx.DAT PDATAx.DIS: Signature 1
One Planet record:
+0 WORD Player Id, 0 for unowned planets
+2 WORD Planet Id
+4 3 BYTEs Friendly Code. THost permits ASCII codes 32 to 122.
+7 WORD Number of mines (0..~516)
+9 WORD Number of factories (0..~416)
+11 WORD Number of defense posts (0..~366)
The ranges are based upon the maximum population of 10
million colonists (100000 clans). The maximum number of
mines on a planet is (COLON = colonist clans):
COLON if COLON <= 200
ROUND(200+SQRT(COLON-200)) if COLON > 200
Replace 200 with 100 for factories, and 50 for defenses.
When building structures, the client program must subtract
the appropriate costs from the available resources (1
supply, and 4/3/10 mc for mines/factories/defenses).
+13 DWORD Mined Neutronium
+17 DWORD Mined Tritanium
+21 DWORD Mined Duranium
+25 DWORD Mined Molybdenum
+29 DWORD Colonist clans (1 clan = 100 people). The THost limit
is 100000 clans, the PHost limit is 250000 clans.
+33 DWORD Supplies
+37 DWORD Megacredits
To sell supplies, remove the requested amount from the
Supplies field and add it to the Megacredits field.
+41 DWORD Neutronium in ground
+45 DWORD Tritanium in ground
+49 DWORD Duranium in ground
+53 DWORD Molybdenum in ground
>4999 abundant
1200..4999 very common
600..1199 common
100..599 rare
1..99 very rare
0 none
+57 WORD Neutronium density
+59 WORD Tritanium density
+61 WORD Duranium density
+63 WORD Molybdenum density
70..100 large masses "1 mine extracts 1 kt"
40..69 concentrated "2 mines extract 1 kt"
30..39 dispersed "3 mines extract 1 kt"
10..29 scattered "5 mines extract 1 kt"
0..9 very scattered "10 mines extract 1 kt"
The figures on the right are from the docs, the actual
amount of minerals extracted is
- THost:
ERnd(ERnd(mines * density / 100) * miningrate / 100) * RF
- PHost < 3.5, 4.1:
Trunc(Trunc(density * miningrate / 100) * RF * mines / 100)
- PHost 3.5+, 4.1+:
Round(Round(density * miningrate / 100) * RF * mines / 100)
where "miningrate" is the HConfig value, and RF it the
"reptile factor" (2 if Reptilian natives, 1 otherwise).
+65 WORD Colonist taxes (0..100)
+67 WORD Native taxes (0..100)
Note that THost limits taxation: when hissing, the maximum
tax rate is 75%. Cyborgs can tax natives up to 20%.
+69 WORD Colonist happiness (-300..100)
+71 WORD Native happiness (-300..100)
90..100 happy
70..89 calm
50..69 unhappy
40..49 very angry
20..39 rioting
<20 fighting
Tax collection possible for happiness>=30, population grows
if >=70.
+73 WORD Native Government (SPI = Socio Political Index)
0 none 0%
1 Anarchy 20%
2 Pre-Tribal 40%
3 Early-Tribal 60%
4 Tribal 80%
5 Feudal 100%
6 Monarchy 120%
7 Representative 140%
8 Participatory 160%
9 Unity 180%
+75 DWORD Native clans (1 clan = 100 people). Maximum population
somewhere around 150000 clans.
+79 WORD Native Race
0 none
1 Humanoid
2 Bovinoid
3 Reptilian
4 Avian
5 Amorphous
6 Insectoid
7 Amphibian
8 Ghipsoldal
9 Siliconoid
+81 WORD Temperature (Temperature in Fahrenheit = 100 - this value)
0..15 desert (85..100Ⰶ)
16..35 tropical (65..84Ⰶ)
36..60 warm (40..64Ⰶ)
61..85 cool (15..39Ⰶ)
86..100 arctic (0..14Ⰶ)
In case you wonder why we store `100-F': originally, this
was just a type code with no real-world equivalent. It was
changed to mean a temperature with Host 3.20 and Winplan.
+83 WORD 1=Build base, 0 otherwise. The client program must subtract
the starbase cost (900mc, 402T, 120D, 340M; configurable in
PHost 4.0k+) from the available resources when setting this
word to 1.The happiness change can be computed from the tax level and the other planet data. It corresponds to the value shown in PLANETS.EXE as follows:
<= -6 Hate you
-5 .. -1 Are angry at you
0 Are undecided about you
+1 .. +4 Like your leadership
>= +5 Love youFormulas are different for PHost and THost.
- Natives, THost: Trunc(500 + 50*SPI - 85*NativeTax - (Mines+Factories) DIV 2 - Sqrt(Natives)) DIV 100 ... plus 10 for Avians
- Natives, PHost: Trunc(500 + 50*SPI - 85*NativeTax - (Mines+Factories) / 2 - Sqrt(Natives)) DIV 100 ... plus 10 for Avians (Note that the difference PHost/THost here is that THost uses integer division for industry effect while PHost does floating point).
- Colonists, THost, Crystals with desert advantage: Trunc(1000 - 80*ColonistTax - Sqrt(ColonistClans) - (Mines+Factories) DIV 3 - 3*TempCode) DIV 100
- Colonists, THost, other races: Trunc(1000 - 80*ColonistTax - Sqrt(ColonistClans) - (Mines+Factories) DIV 3 - 3*Abs(TempCode-50)) DIV 100
- Colonists, PHost, Crystals with desert advantage: Trunc(1000 - 80*ColonistTax - Sqrt(ColonistClans) - (Mines+Factories) / 3 - TempCode/0.66) DIV 100
- Colonists, PHost, other races: Trunc(1000 - 80*ColonistTax - Sqrt(ColonistClans) - (Mines+Factories) / 3 - Abs(TempCode-50)/0.33) DIV 100 (Difference, again, is integer vs. floating point, and different handling of temperatures).



