anchor.diff:    // Build woodcutter when is forest near new house (or when is woodcutter destroyed but this is not primarly intended)
     HT := htWoodcutters;
     if (gHands[fOwner].Stats.GetHouseTotal(HT) < fPlanner.PlannedHouses[HT].Count)
  +    AND not fGoldShortage
  +    AND not fStoneShortage
       AND (AddToConstruction(HT, True, True) = cs_HousePlaced) then
     begin
       MaxPlans := MaxPlans - 1;
  
positive.code:     I: Integer;
      Priority: Single;
      Ware, WT, POM_WT: TKMWareType;
      WareOrder: array[0..5] of TKMWareType;
      WarePriority: array[0..5] of Single;
    begin
      Output := False;
      // Basic producing houses (secure resources for building)
  
negative.code: begin
    case aNode.FieldType of
      ftRoad: NODE_TYPE := AVOID_BUILDING_NODE_LOCK_ROAD;
      else    NODE_TYPE := AVOID_BUILDING_NODE_LOCK_FIELD;
    end;
    with aNode.FieldList do
      for I := 0 to Count-1 do
  