anchor.diff:      MARKER_RALLY_POINT:   if gMySpectator.Selected is TKMHouseWFlagPoint then
                             begin
                               HWFP := TKMHouseWFlagPoint(gMySpectator.Selected);
  -                            PaintRallyPoint(HWFP.Entrance, P, gMySpectator.Hand.FlagColor, HWFP.FlagPointTexId, 0, True);
  +                            PaintFlagPoint(HWFP.Entrance, P, gMySpectator.Hand.FlagColor, HWFP.FlagPointTexId, True, True);
                             end;
     end;
   end;
  
positive.code: 
  var P: TKMPointF;
  begin
    P := KMPointF(aRallyPoint.X - 0.5, aRallyPoint.Y - 0.5);
    if not aDoImmediateRender then
      case aPass of
        0:  begin
              AddAlert(P, aTexId, aColor);
              RenderLineToPoint(P);
            end;
        1:  if gMySpectator.FogOfWar.CheckRevelation(P) < FOG_OF_WAR_MAX then
              RenderSpriteOnTerrain(P, aTexId, aColor, True); //Force to paint, even under FOW
      end
    else begin
      RenderSpriteOnTile(aRallyPoint, aTexId, aColor);
      RenderLineToPoint(P);
    end;
  end;
  
  
  procedure TRenderPool.PaintRallyPoints(aPass: Byte);
  var
    HWFP: TKMHouseWFlagPoint;
  begin
    if not ((gMySpectator.Selected is TKMHouseBarracks)
      or (gMySpectator.Selected is TKMHouseTownHall)
      or (gMySpectator.Selected is TKMHouseWoodcutters)) then
      Exit;
  
    if gMySpectator.Selected is TKMHouseWFlagPoint then
    begin
      HWFP := TKMHouseWFlagPoint(gMySpectator.Selected);
      if HWFP.IsFlagPointSet then
        PaintRallyPoint(HWFP.Entrance, HWFP.FlagPoint, gHands[HWFP.Owner].GameFlagColor, HWFP.FlagPointTexId, aPass);
    end;
  end;
  
  
negative.code:     // Sprites are added by Terrain/Players/Projectiles, then sorted by position
      fRenderList.Clear;
      CollectTerrainObjects(ClipRect, gTerrain.AnimStep);
      PaintFlagPoints(True);
  
      gHands.Paint(ClipRect); // Units and houses
      gProjectiles.Paint;
  