Different implementation of query
try..

SET @_c = 0;
SELECT kills,deaths,revives,damage,levels,rank,skill  
FROM (  SELECT  *,  (@_c \:= @_c + 1) AS `rank`,   
        ((kills + damage + levels)/(deaths+revives+1)) AS skill   
    FROM leaderboard   ) AS newtable   
WHERE soldier_id = 1(example)
ORDER BY skill DESC;


check for NOT NULL values in cols: kills, damage, levels, deaths, revives