public boolean createRandomField()
     {
    	 int count = 0;
    	 while (count < RANDOM_PLACEMENT_MAX_TRYS) {
    		 count++;
			
			 // Fill field with zeros.    		 
    		 for (int k = 0; k < SIZE; k++) {
    			 for (int l = 0; l < SIZE; l++) {
    				 fField[l][k] = VALUE_FREE;
    			 }
    		 }
			
			
    		 // Fill ships, start with the Big ones.
    		 Random random = new Random();      
			 boolean success = true;
			 for(int i = 0; i < ULTIMATE_SHIP_COUNT; i++) {
			     success &= fillShipByRandom(random, 8);
		  	 }
			 
			 for(int i = 0; i < HUGE_SHIP_COUNT; i++) {
				 success &= fillShipByRandom(random, 4);
			 }
			
			 for(int i = 0; i < BIG_SHIP_COUNT; i++) {
				 success &= fillShipByRandom(random, 3);
			 }
			
			 for(int i = 0; i < MEDIUM_SHIP_COUNT; i++) {
				 success &= fillShipByRandom(random, 2);
			 }
			
			 for(int i = 0; i < SMALL_SHIP_COUNT; i++) {
				 success &= fillShipByRandom(random, 1);
			 }
			 
			 if (success) {
				 return true;
			 }
    	 }
    	 
    	 return false;
    }