Valley & Medal Farming Goals


Usage: config valley:[switch]
Example: config valley:10
Switch: 0 Disable Valley capture
1 Capture level 1 valleys
2 Capture level 2 valleys
3 Capture level 3 valleys
4 Capture level 4 valleys
5 Capture level 5 valleys
6 Capture level 6 valleys
7 Capture level 7 valleys
8 Capture level 8 valleys
9 Capture level 9 valleys
10 Capture level 10 valleys

This goal tells the bot to capture valleys for increased resource production in your cities. The bot will automatically know to capture forests for cities with a higher production of lumber, hills for cities with a higher production of iron, and lakes for cities with a higher production of food. You will benefit more from valleys (more than 200k per hour production bonus) in a pure resource city of all lumber or all iron, rather than mixed fields with partial lumber and iron.

Valley Production Bonus

The following is a table listing the benefits given for each valley type and level.

lvl 1 3% 5% 8% 5% 5% 5%
lvl 2 4% 7% 11% 7% 7% 7%
lvl 3 5% 9% 14% 9% 9% 9%
lvl 4 6% 11% 17% 11% 11% 11%
lvl 5 7% 13% 21% 13% 13% 13%
lvl 6 8% 15% 24% 15% 15% 15%
lvl 7 9% 17% 27% 17% 17% 17%
lvl 8 10% 19% 30% 19% 19% 19%
lvl 9 11% 21% 33% 21% 21% 21%
lvl 10 12% 23% 36% 23% 23% 23%


Usage: valleytroops level troops_to_send
Example: valleytroops 1 s:5000
valleytroops 2 s:5000
valleytroops 3 s:5000
valleytroops 4 s:10000
valleytroops 5 s:10000
valleytroops 6 s:50000
valleytroops 7 s:50000
valleytroops 8 s:100000
valleytroops 9 a:12800,sw:1,p:1,s:1,w:40000
valleytroops 10 a:19990,sw:1,p:1,s:1,w:60000

If you wish to change the default troops sent to each valley and flat while capturing valleys for resources, building npcs, or medal farming, you can specify the troops using this directive. If any level is omitted, the bot will use the default. In the above example, the bot would use 5k scouts to attack level 1-3 valleys & flats, 10k scouts to attack level 4-5 valleys & flats, 50k scouts to attack level 6-7 valleys & flats, 100k scouts to attack level 8 valleys & flats, 12.8k archers/1 sword+pike+scout/40k warriors to attack level 9 valleys & flats, and 19990 archers/1 sword+pike+scout/60k warriors to attack level 10 valleys & flats.

The default troops used to capture valleys, capture flats to build npcs, and medal farm is as follows:

Warriors Scout Pikemen Swordsmen Archers
lvl 1 0 0 0 0 50
lvl 2 0 0 0 0 100
lvl 3 0 0 0 0 200
lvl 4 1200 1 1 1 400
lvl 5 2400 1 1 1 800
lvl 6 4800 1 1 1 1600
lvl 7 9600 1 1 1 3200
lvl 8 19200 1 1 1 6400
lvl 9 38400 1 1 1 12800
lvl 10 60000 1 1 1 19990


Usage: valleylimit min_troops
Example: valleylimit w:100k,a:50k

This directive works the same as npc10limit, only for attacking valleys. This tells the bot the minimum number of troops it must have in the city before it will attack another valley. In the example above, the bot must have 50k archers and 100k warriors before it will resume valley or medal farming.


Usage: config hunting:[switch]
Example: config hunting:5
Switch: 0 Do not hunt for medals
1 Hunt for medals in level 1 to 3 valleys
2 Hunt for medals in level 4 to 6 valleys
3 Hunt for medals in level 7 & 8 valleys
4 Hunt for medals in level 9 & 10 valleys
5 Hunt for medals in level 10 valleys only

By enabling this goal, the bot is instructed to farm the appropriate levels of valleys for medals. The bot will abandon 1 or more of your valleys to free up slots to hunt with. The bot hunts for medals via the catch & release method - capturing a valley and abandoning it before the next attack lands. The bot will use the specified valleytroops for medal hunting, or the default if not set. The nearest valley of the right level that is within the maximum miles for medal farming as set in distancepolicy will be used, unless specified otherwise with huntingpos or huntingtype.


Usage: huntingpos coords
Example: huntingpos 111,222

Instead of allowing the bot to farm medals at the nearest valley of the level specified in config hunting, this goal will tell the bot to medal hunt only at the specified coordinates.


Usage: huntingtype valley_type
Example: huntingtype desert
Valley Types: forest

Instead of allowing the bot to farm medals at the nearest valley of the level specified in config hunting, this goal will tell the bot to restrict it's medal hunting to only valleys of this type. In the example above, the bot will only attempt to hunt for medals in deserts found within the number of miles specified in distancepolicy.


Usage: config valleyfarming:[level]
valleyfarming forest_miles desert_miles hill_miles swamp_miles grassland_miles lake_miles
Example: config valleyfarming:10
valleyfarming 5 0 5 0 0 0

Enabling valley farming will tell the bot you want it to continually attack nearby valleys for extra resources. In the above example, config valleyfarming:10 tells the bot to farm level 10 valleys, and valleyfarming 5 0 5 0 0 0 tells the bot that you want it to farm up to 5 miles for forests and hills, but not farm any of the other types.

If you enable config valleyfarming, but do not specify the types of valleys to farm, the bot will farm valleys of the same resource type as the city, eg: the bot will farm forests if your city is mostly lumber.


Usage: safevalleyfarm level[,level,level]
Example: safevalleyfarm 9,10

This directive will tell the bot to attempt to find and farm for resources and medals within valleys of the specified level that it can safely hit for zero losses. The bot will first scout all valleys of the right levels within it's valley capturing radius as specified in distancepolicy. It is recommend to keep the number of miles to around 10 or less for this, otherwise the bot will spend all it's time scouting instead of actually attacking. When it finds valleys it's able to hit, it stores their coordinates for future attacking.

The following rules are applied for safe farming:

  • with a valley that has only archers on it, 1 scout and as many cavs as there are archers on the valley are sent.
  • with a valley that has no cavs and no archers, only archers are sent with a quantity based on the valley level.
  • with a valley that has cavs and no archers but up to 2 layers, archers with a quantity based on the valley level, accompanied with 1 balista, 10 pike and 10 swordsmen are sent.

The following quantites of archers for each valley level are used:
1: 50 - 2: 100 - 3: 200 - 4: 500 - 5: 1000 - 6: 2000 - 7: 4000 - 8: 8000 - 9: 15000 - 10: 25000

Valleys get farmed at most once per hour, so it is possible that not all found valleys will be farmed due to closer valleys being ready to hit again.

Saving goals with the same list of valley levels will not disrupt valley farming operations. If however you change the valley levels, the list of valleys to farm is reset and scouting will have to be performed again. To stop farming simply comment or remove the safevalleyfarm goal. On every reconnection, the list of valleys 10 miles around your main is evaluated to see if a valley level has changed. If this is the case, safe farming is returned to a clear state and scouting restarts with a fresh list of valleys.


  • Safe valley farming cannot be used at the same time as config valley, valleyfarming or hunting and will not perform any operations.
  • There is currently no way to select what type of valleys you want to farm, only the levels.
  • There is currently no way to specify what troops to use to attack a valley.
  • Make sure you hold all your valleys before activating safe valley farming. You do not want to capture valleys with safe valley farming.
  • There is still a small chance that an attack on a valley sent before maintenance hits the wrong level of valley after maintenance yielding losses. There is code to try and recall if the valley levels, but it can run only if the hit would occur while Y.A.E.B. is connected.