Hello guys,
FoG(RB) intended to do something about this, but it seems it never worked as so.
FoG(U) rev 999 will include new code to specifically deal with this.
The bellow code only triggers if the DAG game's map is not set as chosen (ie a specifically selected map at the challenge's placing).
The preferred map density computations are already included in the FoG(U), and are made as following:
Code: Select all
Initiative Winner's preferred map density * 6/10 + Initiative Loser's preferred map density * 1/10 + random map density * 3/10
where:
- map densities are integers from 0 to 4 (0 very open, 1 open, 2 mixed, 3 crowded, 4 very crowded)
- side's preferred map density are depending on game's map density selection's type: weighted random (a random between side's DAG army template's map density chances), highest chance (side's map density with the highest chance), chosen (manually selected by each side)
Example:
- DAG army template 0 (initiative winner) with [10, 20, 50, 20, 0] map density chances vs DAG army template 1 (initiative loser) with [10, 20, 30, 30, 10] map density chances
-a) if map density selection type was set on weighted random, then:
- DAG army template 0 chance intervals are [0-10 very open, 10-30 open, 30-80 mixed, 80-100 crowded], it randoms 73 => preferred map density mixed (int 2)
- DAG army template 1 chance intervals are [0-10 very open, 10-30 open, 30-60 mixed, 60-90 crowded, 90-100 very crowded], it randoms 18 => preferred map density open (int 1)
- game randoms 4 (a very crowded map)
- 2 * 6/10 + 1 * 1/10 + 4 * 3/10 = (12 + 1 + 12) / 10 = 25/10 = 3 (crowded map density)
-b) if map density selection type was set on highest chance, then:
- DAG army template 0 highest density chance is 50 for the mixed map density
- DAG army template 1 highest density chance is 30 for both mixed and crowded map densities -> randomly picks one of them - crowded map density
- game randoms 1 (an open map density)
= 2 * 6/10 + 3 * 1/10 + 1 * 3/10 = (12 + 3 + 3) /10 = 18/10 = 2 (mixed map density)
-c) if map density selection type was set on chosen, then:
- DAG army template 0 picks up a very open map density (int 0)
- DAG army template 1 picks up a mixed map density (int 2)
- game randoms 3 (a crowded map density)
= 0 * 6/10 + 2 * 1/10 + 3 * 3/10 = (0 + 2 + 9) /10 = 11/10 = 1 (open map density)
The preferred map tilset computations will be made as following:
Code: Select all
a random using (Initiative Winner DAG army template's tileset chance[i] * 2/3 + Initiative Loser DAG army template's tileset chance[i] * 1/3) as chance intervals for each tilset
Example:
- DAG army template 0 (initiative winner) with [80, 20] map tileset chances vs DAG army template 1 (initiative loser) with [0, 100] map tileset chances
-a) if map selection type was set on weighted random, then
- map tileset chance for green is 80 * 2/3 + 0 * 1/3 = 160/3 = 53
- map tileset chance for arid is 20 * 2/3 + 100 * 1/3 = 140/3 = 47
- game randoms 69 -> an arid map is chosen
This preferred map tileset will then be used to either filter the presented maps list (ie only green or arid maps in list), or force map's tileset (maps will be both green or arid, but the selected map will be forced to use DAG game's obtained preferred tileset)
The DAG army templates also have terrain types info (beside the map density and map tileset chances used as above), taken from FoG TT books. This info states on what types of terrains can be that army encountered in.
The possible maps terrain types are as following: 0 developed, 1 agricultural, 2 hilly, 3 woodlands, 4 steppes, 5 mountains, 6 tropical, 7 desert. To use this info in the FoG(U) all maps need to be declared which of these categories are falling into. This either has to be manually done for all present FoG(U) maps, or an algorithm needs to be agreed upon in order to automatically process all the maps and have their terrain type category set.
I didn't had time to do this, so usage of this info will only be added once all the maps are processed and have this terrain type set. After that, in a DAG game the possible map terrain types for both armies will be summed and all the maps not falling into those categories will be removed from the presented maps list.