Receio não ter o MariaDB à mão, mas você poderia tentar o seguinte apenas para ver como as variáveis do usuário são geradas:-
SELECT *
FROM test_golf_player p
LEFT JOIN
(
SELECT pid, leaguepoints, @Sequence:=IF(@PrevPid = pid, @Sequence + 1, 0) AS aSequence, @PrevPid := pid
FROM
(
SELECT pid, leaguepoints
FROM test_golf_card
ORDER BY pid, leaguepoints DESC
) Sub1
CROSS JOIN (SELECT @PrevPid := 0, @Sequence := 0) Sub2
) gC
ON p.pid = gC.pid
ORDER BY p.name DESC
EDIT - Fazendo um pouco de investigação olhando seus resultados, parece que o MariaDB ignorou o ORDER BY na subconsulta. Portanto, o número de sequência está em uma ordem aleatória e também é redefinido quando o pid muda (o que acontece aleatoriamente devido à ordem não ser fixa). Um pouco do google e parece que esse é um recurso deliberado do MariaDB. O padrão SQL define uma tabela como um conjunto não ordenado de linhas e uma sub-seleção é tratada como uma tabela, portanto, a ordem por é ignorada - https://kb.askmonty.org/en/why-is-order-by-in-a-from-subquery -ignorado/ .
É um pouco de desvantagem. Não tenho certeza se há um trabalho em torno, pois não consigo pensar em um no momento. Para o problema original com o qual isso deveria lidar, acho que seria necessário usar subseleções correlacionadas que provavelmente não seriam eficientes.