MS SQL Query. VERY IMPORTANT : I have to write a query regarding the statement below:

List all directors who directed 50 movies or more, in descending order of the number of movies they directed. Return the directors' names and the number of movies each of them directed.  

I have written multiple variations but I keep getting errors. 

It involves joins. The tables involved are: Directors (directorID, firstname, lastname), Movie_Directors (directorID, movieID). 

What I have so far is:

SELECT DISTINCT firstname,lastname,COUNT(movie_directors.directorID)
FROM dbo.movie_directors
INNER JOIN directors
ON directors.directorID=movie_directors.directorID
HAVING COUNT(movie_directors.directorID)>=50

The Error is:
Msg 8120, Level 16, State 1.
Column 'directors.firstname' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause. (Line 1)