import scala.util.Random
Random.setSeed(1)

def rollDice():Int = {
  val v4 = Stream.continually(Random.nextInt(6)+1).take(4)
  v4.sum - v4.min
}

def getAttributes():Seq[Int] = Stream.continually(rollDice()).take(6)

def getCharacter():Seq[Int] = {
  val attrs = getAttributes()
  println("generated => " + attrs.mkString("[",",", "]"))
  (attrs.sum, attrs.filter(_>15).size) match {
    case (a, b)  if (a < 75 || b < 2) => getCharacter
    case _ => attrs
  }
}

println("picked => " + getCharacter.mkString("[", ",", "]"))