Multi value field different scoring for terms and terms_set queries

Good day,
I have small question regarding scoring.
I'm using example from documentation (Terms query).
If I query documents by multiple values with 'terms', like:

GET my-index-000001/_search?pretty
{
  "query": {
    "terms": {
      "color":  ["blue", "green"]
    }
  }
}

all documents have score 1. Even some documents have more matches than others.
But at the same time, query with terms_set gives better scoring, and takes into account number of matches:

GET my-index-000001/_search?pretty
{
  "query": {
    "terms_set": {
      "color": {
       "terms" : ["blue", "green"],
       "minimum_should_match_script": {
          "source": "1"
        } 
      }
    }
  }
}

What is the difference between this 2 approaches from "scoring" POV
Thank you in advance.