WMData

Overview
The WMDATA files ("World Market Data") include variables and baselines for the economy / map / world.

They also include Resource variables for each resource type.

Up to 10 WMDATA files can be loaded, the game will progress through them in sequence. This is specified as a parameter to the &&WMDATA value, such as "&&WMDATA, 1". File numbers don't need to start at zero, but all files do need to be in sequence after that (ie, SRCW is 3, GC2020 is 4). Most values are averaged between the current and the next WMDATA number set if one exists, as the days progress.

Here are the default numbers used in SRU:

SR1914 0

SR1936 1

SR1942 2

SRCW   3  (1949)

GC2020 4

&WMDATA section values:
New in SRU v 9.1.277:

upgradenums[]: Facility ids for the AI to use when constructing new facilities


 * 0 : UGNUMURBANCONTAINER  // Not buildable !
 * 1 : UGNUMINDCONTAINER
 * 2 : UGNUMMILCONTAINER
 * 3 : UGNUMWATERCONTAINER
 * 4 : UGNUMURBANBUILDCONTAINER // No buildable urban...
 * 5 : UGNUMOTHERSHOW // Unit pic to show for 'other' UG category (emplacement)
 * 6 : UGNUMRESEARCHCTR
 * 7 : UGNUMPONTOONBRIDGE
 * 8 : UGNUMBRIDGE
 * 9 : UGNUMROAD
 * 10 : UGNUMRAIL
 * 11 : UGNUMLANDFAB
 * 12 : UGNUMAIRFAB
 * 13 : UGNUMNAVALFAB
 * 14 : UGNUMMISSILEFAB
 * 15 : UGNUMSILO
 * 16 : UGNUMURBANBASE // was 21701		// Should only be used as Engine default if THEATRES section is missing!
 * 17 : UGNUMOFFSETCAPITAL // Offset of the capital entry from the base urban entry
 * 18 : UGNUMSPACEDOCK // SR5ID of the space dock upgrade unit

heurmult[4][4]: Heuristic A* Pathing multiplier for each unit mtype (G/A/N/Sub), For each: Cautious; Normal; Direct (straight line); Quickest. Generally 2 is minimum heuristic, ie fastest

lutsupcost[256]: Look-up-table for supply extra cost factor - default is add 10 if no supply, down to 0 if supply > 127...

In all SRU versions:

dayswmlevel: Number of days to move from this to the next WMDATA set.

unitgarrison:  Unit Garrison unitnum - progression based on tech TECHEFFECTGARRISONTYPE (up to 8)

battstrdefault: The Battalion Strength for each Military Class

weatheryear: Number of days in the winter-summer-winter cycle

weatherspeed[]: Speed of the weather fronts (8) 1 to 255; lower is faster; should be prime number for best results

weatheroffy[]: Weather center y-offset (-127 for North, +127 for South)

weatherminstr[]: Weather center minimum strength (1 to 100, default 50)

weathermaxstr[]: Weather center maximum strength (0 to 250, default 50)

= Modding Guide - The World Commodity Market .WMData file =

The sections in the .WMDATA file are as follows;
 * /Maps/Data/default.WMDATA

&&WMDATA(general world market tweaks) This next set is the same for each of the different resource types. I'll list the resource I'Ds first then list the tags under each entry. Tags under each entry
 * 1) gdpcbase (World Baseline GDP/c)
 * 2) primerate
 * 3) battstrdefault (effects default battalion strengths?)
 * 4) hexresmults (Hex Resource multipliers 0-3)
 * 1) &&WMPRODDATA,0 (Agriculture)
 * 2) &&WMPRODDATA,1 (Rubber; prior to SR1936 this was Water)
 * 3) &&WMPRODDATA,2 (Timber)
 * 4) &&WMPRODDATA,3 (Petrol)
 * 5) &&WMPRODDATA,4 (Coal)
 * 6) &&WMPRODDATA,5 (Ore)
 * 7) &&WMPRODDATA,6 (Uranium)
 * 8) &&WMPRODDATA,7 (Electric)
 * 9) &&WMPRODDATA,8 (Consumer Goods)
 * 10) &&WMPRODDATA,9 (Industrial Goods)
 * 11) &&WMPRODDATA,10 (Military goods)
 * 1) bmwerrain (Set True if this resource is produced by terrain with no upgrades 0-False 1-True)
 * 2) producefrom (other goods requirement)[Agri,Water,Timber,Oil,Coal,Ore,Uranium,Power,Cons,Ind,Mil]
 * 3) wmbasecost (Baseline Game Cost of Unit NOT incl raw materials in)
 * 4) wmfullcost (ESTIMATE of minimum full cost of unit with raw materials in its cheapest form)
 * 5) wmmargin (Default starting Markups)
 * 6) wmnodeproduction (HEX Multiplier of raw PRODUCTION)
 * 7) wmprodperpersonmax (Unit Consumption annually PER PERSON - MAX)
 * 8) wmprodperpersonmin ( Unit Consumption annually PER PERSON - MIN)
 * 9) wmurbanproduction ( Node equivalent (0-6.0) produced per urban 50K (max) pop (No raw requirement, but basecost still applies)