Olá Vinicius, tudo certo?
Pelo que entendi você já está familiarizado com cada uma dessas funções 'Math', apenas na dúvida de como elas funcionam juntas e entregando um valor entre 0 e 6 (ou 0 e 20 /0 e 100).
O Math,random gera um valor aleatório entre 0 e 1, e quando multiplicado pelo 'x', seja x = 6, ele vai dar um valor que é no mínimo 0.00 e no máximo 6.00. Este valor gerado é então arredondado com o Math.round, já que o número que você deseja é um número inteiro.
Caso você deseje que o valor 0 não seja um valor possível, você pode utilizar a função Math.ceil, que arredonda o valor para um número inteiro maior. Caso o valor gerado seja 0.1, ele será arredondado para 1 e não para 0 (como seria no Math.round).
Espero ter ajudado!