Kaulder is an immortal witch hunter, the last of his kind having been cursed with eternal life by his foe the Queen Witch centuries earlier. There was once a time where witches ran afoul of the entire Earth, bringing with them a destructive plague to exterminate humanity. After Kaulder's explosive victory, however, the world was a little safer. Now living in New York - miserable and lonely, while his deceased wife and child are worlds away in the afterlife - Kaulder discovers that it's not over yet. The Queen Witch has returned with a vengeance, but this time it's going to take more than a witch killer to take her out. In order to slay her, you've got to be like her, and so Kaulder must unite with a beautiful young sorceress with the ability to destroy her - even if it's against his better judgement.

Based on the beloved novel by John Green, this film is so squarely slanted toward teen girls that it is likely to annoy everyone else. Written and directed in a way that never allows even a hint of ambiguity, each scene and line of dialogue is on-the-nose, pushing the audience to a specific emotional response. This of course leaves everything feeling manipulative and false. Even so, the movie is rescued by another wonderfully layered performance from Shailene Woodley.

She plays the 17-year-old Hazel, who has been dealing with aggressive cancer for three years and has only just been stabilised by a breakthrough treatment. As she still needs to carry oxygen to breathe properly, her parents (Laura Dern and Sam Trammell) are understandably protective, but she's happy to get out on her own whenever possible. Then in a support group she meets 18-year-old cancer survivor Gus (Ansel Elgort), who is immediately smitten with her and flirts so aggressively that she finally agrees to be his friend, but nothing more. As she hangs out with Gus and his pal Isaac (Nat Wolff), another cancer patient, she begins to open up to her innermost dreams. So she goes along with a make-a-wish plan to travel to Amsterdam with Gus and her mother to meet the author (Willem Dafoe) of her favourite novel. And the trip changes her life in several unexpected ways.

Sensitive audience members will be sobbing from the beginning to the end of this film, simply because director Josh Boone tells them to. More cynical viewers will find it impossible to believe anything on-screen. This isn't because the plot is bad (it's actually quite thoughtful and provocative) or the actors get their performances wrong. It's because Boone and the screenwriters can't resist punching every note as loudly as they can. It's been so tidily shaped into a cinematic structure that everything feels fake, which makes it impossible for the actors to create characters who could exist anywhere besides in a movie.

Hazel Lancaster is a bright 16-year-old girl suffering from terminal cancer who is forced to carry an oxygen and breathing tubes with her wherever she goes. Her mother forces her to attend a nearby cancer support group in a bid to help her come to terms with her illness and make friends who understand her situation. She meets a charming former cancer sufferer and amputee named Gus who is immediately taken by Hazel and the pair become inseparable; he sees past her tragic illness and is the only person who makes her feel as if she has a lifetime ahead of her. However, she soon begins to realise that her feelings for him are becoming stronger and stronger and she attempts to distance herself from him to avoid hurting him in the future. But Gus is determined that he loves her, and will stay by her side until the very end.

Oscar-nominated filmmaker Mike Figgis (Leaving Las Vegas) continues to explore experimental styles of cinema (see Timecode or Hotel) with this playful in-joke about the act of artistic creation. It's an ambitious idea that never quite overcomes the indulgent approach, but the gimmicky touches and mysterious noir vibe hold our interest even if the characters are never very clearly developed.

At the centre is screenwriter Martin (Koch), who lectures at a London film school as his long-awaited new script is finally going into production. His daughter Sarah (Night) has landed a lead role in the film, and Martin celebrates this with her at her 25th birthday. He also becomes fascinated by her friend Angelique (Verbeek), who turns up dead in a canal the next morning, leaving him as the prime suspect. A police inspector (Cranham) is especially suspicious since Martin's wife (Fox in flashback) went missing 15 years ago. Then Angelique's twin Therese (also Verbeek) turns up to twist things further.

Figgis continually throws us out of the story by referring to the film within the film. For example, characters are continually picking up movie scripts that describe them picking up movie scripts. And Figgis further tweaks us with on-screen captions, split-screen angles and movie-set camera gags, plus of course the fact that a central character is an identical twin. But because of all of this self-referential trickery, we can never engage with the story or characters at all.