Prova questo. Non testato.

Codice PHP:
SELECT c.user_id,c.valuep.points AS max_pts
FROM values 
AS c
INNER JOIN points 
AS p ON p.user_id c.user_id
INNER JOIN 
(
  
SELECT A.value AS A_valueMAXB.points ) AS A_max_pts
  FROM values 
AS A
  INNER JOIN points 
AS B ON B.user_id A.user_id
  WHERE A
.field_id =16
  GROUP BY A
.value
ON A_value c.value AND A_max_pts p.points
WHERE c
.field_id =16
ORDER BY p
.points DESC