Star Wars legend Mark Hamill has admitted that he wasn't too impressed with the way Luke Skywalker was portrayed in Star Wars: The Last Jedi.

According to reports in UK media, Hamill confessed that he wasn't convinced by the way Luke abandoned his Jedi destiny to live as an exile on a planet populated by porgs and fish nuns. Or Skellig Michael as Irish people call it.

"I said to [director Rian Johnson], 'Jedis don't give up,’" Hamill revealed. "I mean, even if [Luke] had a problem, he would maybe take a year to try and regroup, but if he made a mistake, he would try to right that wrong, so right there, we had a fundamental difference."

Luke Skywalker's reluctance about joining the Resistance has been a particular bone of contention for unhappy hardcore Star Wars fans who have reacted negatively to the film since its release.

But Hamill qualified his remarks by insisting that he understood why the character was acting slightly differently this time around.

"It's not my story anymore, it's somebody else's story and Rian needed me to be a certain way to make the ending effective," he said. "That's the crux of my problem. Luke would never say that. I'm sorry.

"In this version . . . see, I'm talking about the George Lucas Star Wars, this is the next generation of Star Wars," he continued.

"I almost had to think of Luke as another character. Maybe he's 'Jake Skywalker,' he's not my Luke Skywalker. But I had to do what Rian wanted me to do because it serves the story well."

Despite his uncertainty about the role, Hamill also insisted that it's ultimately not that important - but the angry Star Wars fans who have signed a petition for The Last Jedi to be expunged from Star Wars history may disagree.

"Listen, I still haven't accepted it completely, but it's only a movie," Hamill said. "I hope people like it. I hope they don't get upset. I came to really believe that Rian was the exact man they needed for this job."