anchor.diff:    P: TKMHand;
     Stats: TKMHandStats;
   
  -  function RecruitsNeeded(): Integer;
  +  function RecruitsNeeded(aCompletedWatchtowers: Word): Integer;
     const
       RECRUIT_PEACE_DELAY = 17 * 60 * 10;
     var
       Output: Integer;
     begin
  -    Output := Stats.GetHouseQty(htWatchTower);
  -
  -    if aTick + RECRUIT_PEACE_DELAY > gGame.GameOptions.Peacetime * 600 then
  +    Output := aCompletedWatchtowers;
  +
  +    if (aTick + RECRUIT_PEACE_DELAY > gGame.GameOptions.Peacetime * 600)
  +      AND (Stats.GetHouseQty(htBarracks) > 0) then
       begin
         if fSetup.UnlimitedEquip then
         begin
  
positive.code: begin
    // DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG
    //SetKaMSeed(666);
    //gGame.GameOptions.Peacetime := 60;
    //fSetup.ApplyAgressiveBuilderSetup(True);
    // DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG DELETE DEBUG
  
    // Change distribution
  
negative.code: var
    I,K,cnt: Integer;
    GoldProduced: Cardinal;
    H: TKMHouse;
    HT: TKMHouseType;
    UT: TKMUnitType;
    Schools: array of TKMHouseSchool;
    Houses: array[HOUSE_MIN..HOUSE_MAX] of Integer;
    UnitReq: array[CITIZEN_MIN..CITIZEN_MAX] of Integer;
  begin
    P := gHands[fOwner];
    Stats := P.Stats;
    FillChar(UnitReq, SizeOf(UnitReq), #0); //Clear up
    FillChar(Houses, SizeOf(Houses), #0); //Clear up
  
    //Citizens
    // Make sure we have enough gold left for self-sufficient city
  