The movie opens with a teary-eyed mother named Jess, hugging her frightened son, Tommy, and
telling him that he just had a nightmare.
Jess is preparing for a boat trip with her autistic son Tommy and her friends, and they
will meet at Triangle Harbor that day.
The mother is rushing through the house, almost erratically taking out a lipped toy boat from the pool.
When Tommy is painting, he spills paint on the floor, so his mother cleans it up, but
in the process her dress gets dirty.
Suddenly, the doorbell rings, and when she opens it, there's no one at the door.
She gets dressed in her new clothes, and quickly gets ready to leave the house.
Before leaving, she struggles to reassure her anxious son that the floor has been thoroughly cleaned.
Jess and Tommy finally head out from home, and make their way to Triangle Harbor.
Meanwhile, on the boat named Triangle, a friend of Jess named Greg, is waiting for his friends
to show up when Sally, and Downey arrive first.
Sally also brings her friend, Heather, to be introduced to Greg.
Jess arrives with a man named Victor, but there's no sign of Tommy, and Victor says
something’s off with Jess.
Jess hugs Greg and apologizes to him; she's just tired, but still wants to go on the trip.
On the boat, she meets everyone else, and they get the boat ready to sail.
While the boat cruises, Jess sleeps in the cabin, having dreams about the beach.
She wakes up soon after, shocked.
When Heather asks what she dreamed about, she can't even remember.
Meanwhile, Greg’s questioning why Jess didn't bring Tommy, and Victor explains that when
he asked Jess about it, Jess took a while to answer and then said Tommy was in school.
However, it’s Saturday, so there probably won't be any classes.
When Heather and Jess come up from the cabin, Greg asks Jess if everything is okay with Tommy.
Jess says he’s okay; nothing has changed, and every day is the same.
Sometime later, the wind suddenly stops, leaving the boat immobile.
They realize that they have a huge problem on their hands when they see a dark cloud
brewing in front of them.
Greg sends a distress call to the coast guard, but despite the yacht's situation, they say
nothing out of the ordinary has been detected.
Suddenly, the radio goes static, then picks up the frequency of a frightened woman's call
for help.
The woman says that someone is killing everyone but is cut off.
As Greg comes up from the cabin, the storm is closing in on them.
Greg tells everyone to put on life jackets right as the storm hits and everything goes crazy.
Victor and Greg attempt to get the boat to safety, while the friends hide in the cabin.
Greg grabs Jess and holds her close while he steers.
Downey holds onto Sally when the storm takes the boat out and turns it over, sweeping Heather
off the ship and right into the ocean.
As the storm calms down, the rest of the group manages to climb the top of the overturned boat.
But unfortunately, there has been no sign of Heather, and no one knows what has happened
to her.
Sometime later, the group sees an ocean liner, Aeolus, approaching from a distance, which
seems like a great chance to get rescued.
The group is hopeful, and is shouting and asking for help from the ship, while Jess
watches it with suspicion.
They then see the silhouette of a person on the bridge, and when the ship eventually gets
to them, they all hop on.
It’s not clear why Jess has her doubts about it, but she doesn't have any other choice
but to join them.
Taken out of the sea, they board the ship; however, they don't find anyone onboard.
Greg thinks they should go to the bridge and talk to the captain.
As they enter the ship, Jess tells Greg that she feels like she recognizes the corridor,
but Greg says that almost all of the hallways look the same.
The others discover a framed photo from 1932, illustrating the same ship they are on, it
is revealed that Aeolus is the Greek god of the wind, and the father of Sisyphus, a mythological
character who cheated death.
He was condemned by the gods to roll the same rock up the hill every day for an eternity,
just to watch it roll back down again.
The group discussion gets interrupted when they hear the sound of clanking on the ship,
and realise that they are not alone.
As they follow the sound, they find keys that Jess recognizes as her own.
She is incredulous at how her house keys could be there.
The rest of the group is also having trouble believing,
while Jess shows a photo of her son amongst the keychain, matching the one in her locket.
Sally suggests that Heather must have survived somehow, and climbed the same liner so she
must be the one who brought the keys.
At the ship's ballroom, everything seems to be set up for a party, and food is abundant,
but there is no one around.
As Sally is shouting Heather's name, Jess sees a glimpse of someone running out of view
and informs the rest of the group.
Victor immediately rushes after the mysterious person, and keeps searching the deserted corridors,
while the rest of the group remains in the ballroom.
Greg decides to go after Victor, and Jess follows him, leaving Sally and Downey behind.
Here Jess is trying to convince Greg that every time she turns a corner, she's having
déjà vu, but Greg claims she’s just in shock.
All of a sudden, they get distracted by the sound of running water, and decide to check
it out.
Inside a bedroom, they find a message instructing them to go to the theater written in blood
on a mirror.
In the meantime, Victor is still trying to find the person that Jess saw running in the
corridor, following the sound of clanking across the liner.
Jess is terrified by the fact that they found blood on the mirror, while Greg suggests that
the crew might be pranking them.
They get into an argument, and Jess walks away.
She returns to the ballroom alone, only to find that Sally and Downey have gone, and
the food is now rotting.
Meanwhile, Sally and Downey find blood on the floor, and follow a trail of blood out
of the deck, that led them to the theater.
Back to Jess; she hides at the sound of thumping close by, and sees Victor stumbling across
the room, all covered in blood.
Jess tries to find out what happened, but instead of an answer, Victor starts strangling her.
Jess struggles for her life, and eventually manages to press a wound at the back of his head.
Still in shock, Jess snaps out of it at the sound of a shotgun, and rushes to see what is happening.
At the theater, Sally and Downey are crying over Greg's body, who had just been shot.
Sally suddenly jumps at her and accuses her of shooting Greg, so Jess says she was with
Victor, but Sally tells her that Greg said she shot him.
Downey asks why Jess told them to come to the theater, but she insists that she didn't,
right when someone starts shooting from the balcony.
Sally and Downey get shot, and Jess flees the theater after she tries to help them.
She hides in the kitchen, and takes a knife to protect herself from the masked shooter.
The shooter peers into the kitchen, but luckily, he doesn't see her, and goes away.
Jess reaches the lifeboat station in hopes to get off the liner, but the shooter finds her.
When the shooter seems a bit hesitant to pull the trigger, she diverts the weapon away,
and Jess slips away from him, landing on the lower floor like a black widow.
The shooter doesn't give up and chases Jess across the upper deck.
He then throws his empty shotgun at her as she falls over the fence to the lower deck.
Running to the back of the ship, Jess takes an axe she finds on her way, and uses it to
defend herself.
Jess puts up a fight, and she eventually manages to overpower him.
Here she realizes that the attacker is a woman, and she says that the only way for Jess to
get back home is to kill them all.
Jess hits the attacker with the axe, and the mystery person falls overboard into the ocean.
As she tries to recollect, she gets distracted by the sound of music coming from one of the
nearby cabins, playing on loop on an old record player.
After she switches to new music, she hears voices coming from outside.
Jess carefully walks over to the deck, only to see Greg, Victor, Downey, Sally and herself
on the flipped sailing boat shouting out for help.
She is in shock, wondering what the actual hell is going on right now, and then accidentally
plays the music on loop on the old record player again.
She also listens to the group that just boarded the sea liner, including herself.
Jess decides to stay hidden while witnessing the same events that happened only a while
ago, including the conversation.
While the others are talking about Sisyphus, Jess peeks and sees her other self look back,
almost catching sight of her.
Jess sinks to the floor when her keys drop from her pocket.
This is when the group hears the sound of clanking, so she runs away.
Later on, she can hear that the group is looking for Heather, and she realises that she was
the person they were after the entire time.
The new Jess looks back and spots her from the mirror, while Victor goes chasing after her.
The original Jess runs back to the deck, and sees Downey's body in the water, feasted upon
by seagulls.
Just then, Victor finds her on the deck, surprised that she got there so fast, since he just
left the rest of the group in the ballroom.
Jess tries to be honest, and explain to Victor that something strange is happening on the
ship, telling him that her copy is downstairs with the group.
She tries to explain that everyone's bodies are all over the ship, and that they were
all here before.
As she tries to convince Victor to believe her that the entire group will die and she
found Victor with a hole in his head before, he dismisses her.
In the heat of their argument, Jess accidentally pushes his head against a hook in the wall
that ends up piercing his skull.
Shocked by what she did, she runs away, leaving Victor with a wound at the back of his head.
While having a breakdown, she ends up in the crew's locker room, and finds a bundle of
crumpled papers with the same message on it: If they board, kill them all.
Jess realizes that all these messages look exactly like her handwriting.
Now, the stuff the shooter said keeps replaying in her head, even clearer now.
Looking for more clues, she opens the lockers, and finds a row of overalls, that look like
the ones the last shooter was wearing.
Jess also finds a row of shotguns, as the voice repeatedly tells her to kill them all
to get back home.
As she contemplates what she is supposed to do in order to get off the liner, she notices
her locket hanging from the grid on the floor.
She looks down and sees a pile of necklaces just like hers, which is when the same locket
on her neck slips, and falls down the grid.
She now realises that everything is repeating, and starts packing ammunition.
Desperate to get off the ship, she heads out to get her friends and her other self.
The new group continues their journey, with Sally, Downey, and Greg heading to the theater
and the injured Victor wandering around.
Jess then stumbles upon Victor, having him at gunpoint, but assuring him that she will
make everything right and get everyone off the ship.
She sees herself entering the ballroom and lets Victor go.
Now aiming at the other Jess, instead of strangling her in the ballroom as in the previous scenario,
Victor is now struck by seeing two of Jess.
Unable to shoot at her other self, she lets the new Jess get away, happy that at least
now Victor believes her.
She tries to make him remember that everything happened before when she is interrupted by
the sound of a shotgun.
Knowing that someone will shoot Sally and Downey who are standing over Greg's body as
before, she pushes them away and they miss the bullet.
As they find their way out of the theatre, Sally and Downey follow Jess, as she tries
to explain that everything that is happening right now has already happened before, suggesting
that they might be able to change the pattern.
Sally and Downey are having trouble following up with what Jess is trying to explain, and
Jess leaves them with a shotgun to get back for Victor.
When she gets back to the ballroom, Victor is nowhere to be found, and she finds a trail
of blood leading to the dock instead, suggesting that Victor might have fallen into the water.
In the corridor, Downey fires a shot at someone in the distance, who turns out to be the masked
shooter.
She takes the mask off, revealing that she's another Jess with blood on her face.
The masked Jess tells them that Victor fell into the ocean, and they need to follow her
to survive.
The original Jess tries to warn them by shouting out across the quarters, but her other self
manages to take Sally and Downey into a room.
There, the shooter Jess pulls out a knife, and stabs them both.
As Jess continues to stab Downey, Sally gets away from the deadly trap.
The original Jess chases after Sally, but Sally doesn't stop, thinking that it was the
original Jess who stabbed them.
Sally hides in the engine room, avoiding the original Jess.
She then finds a control room and sends out a distress call, begging for help.
As Sally leaves the room, Greg's voice is heard from the speakers.
This reveals that Sally's call was the one Greg and Jess heard before the storm flipped
their yacht.
Meanwhile, Jess continues her search for Sally, who's crying on the upper deck at the front
of the boat.
But to her surprise, she finds her among more than a dozen versions of Sally dead on the floor.
This suggests that they have been in this situation a lot of times, over and over again.
Jess tries to comfort her, and convince her that she's not the same Jess that hurt her
and Downey.
All of a sudden, she hears a commotion, and sees the new Jess fighting the shooter Jess,
before throwing the shooter off the ship.
When Jess gets back to Sally, she dies in her arms, and then she witnesses the new Jess
looking at another new group arriving with another of her brand-new selves.
It's at this point that Jess realizes that the loop restarts and the yacht returns once
everyone is dead.
She once again witnesses the group boarding the liner, and starts to formulate an idea.
Jess runs down the deck, seeing the overturned yacht getting far.
She climbs down the engine room and tries to stop the liner from getting too far from
the yacht, but to no avail.
As she climbs the stairs, she sees a version of herself accidentally pushing Victor onto
a wall hook.
She goes to the bedroom where Downey was stabbed by the previous shooter, and finds Downey
laying in the pool of blood in the bathroom.
Seeing this, she writes ‘go to theatre’ on the mirror with Downey's blood, then she
disposes of the body of Downey and Greg in the water.
Jess then encounters the newest version of Sally and Downey waiting for Greg and her
in the ballroom, and tells them to meet Greg at the theatre.
Desperate to stop the loop, Jess sets everything from the first loop into motion, and takes
a shotgun, and puts on a mask, disguising herself as the new shooter as she heads to
the theatre.
With the mask on, Jess listens to the newest version of herself as she leaves Greg after
their argument.
She follows Greg as she sees him heading to the balcony of the theater and points the
gun at him.
After having second thoughts, Greg realises that Jess is actually behind the mask.
Here Jess reveals that she will kill all of the duplicates of her and her friends in order
to initiate a new loop, and that this time, she will be waiting for them on the stairs
and prevent them from getting on the ship.
She apologizes, and she proceeds to shoot him.
Jess then shoots Sally and Downey, as the newest version of herself walks in on Greg’s dead body.
Once again, the newest Jess manages to escape, as now the original masked Jess is taking
over the role of the attacker she was running from at the beginning.
We see the cycle repeat once again as the newest Jess and the original Jess end up on
the upper deck.
They get caught up in a dramatic fight, that will lead to masked Jess being thrown overboard.
Before she falls, she tells the newest version of herself not to let them board, and to kill
everyone if she wants to get back home.
After falling into the ocean, Jess ends up on the shore, just like in her dream at the
yacht previously.
After taking a moment to gather her bearings and try to make sense of what just happened,
she proceeds to find her way home.
Jess is relieved that she has escaped, and when she arrives home, she notices her son
drawing through the window.
However, her sigh of relief is cut short when she hears her own voice.
She sees another Jess gathering clothes and a toy ship from the backyard.
She returns her gaze to the window, seeing herself yell at her son for leaving the toy.
Later on, Tommy sees Jess at the window and accidentally spills the paint on the floor.
Jess cries, listening to herself slap and yell at Tommy out of anger toward his autism.
While Jess at home cleans up the paint, the original Jess rings the doorbell to distract her.
Jess then walks around the backyard and grabs a hammer from the shed before going into the house.
Without thinking twice, Jess smashes the new Jess over the head with the hammer.
She looks around to realize that Tommy had witnessed the whole thing.
And so, she hugs her son, and convinces him that what he saw was just a nightmare.
Jess proceeds to put the body inside a bag, and takes the locket she lost, before placing
the bag in the trunk of her car.
After finishing up, she and Tommy head out again, this time with Jess promising Tommy
that she will never hurt him again.
Suddenly, a seagull hits the windshield, and she parks by the side of the road.
Tommy gets upset, so she decides to bury the bird.
As she walks over to the edge to throw the seagull into the sea, she notices that there
is a pile of dead seagulls in the same spot.
Realizing that she is still trapped in the loop, Jess hurriedly back to the car and drives away.
Unfortunately, when Jess is trying to calm her son down, she hits an oncoming truck,
causing the car to flip and crash.
Soon after, people gather to help, and find Jess's body, which was previously hidden in
the trunk, and Tommy, dying from his injuries.
But strangely enough, the original Jess is seen standing, observing the scene unharmed.
A taxi driver suddenly approaches her, and points out that nothing can be done to bring
the boy in the accident back.
Hearing these crucial words, Jess understands something.
She asks to be dropped off at Triangle Harbor and falls asleep.
When she wakes up, she is at the harbor.
With her memory fading, Jess meets Victor, but forgets who he is, so Victor introduces
himself and walks her to the yacht.
Victor asks where Tommy is, and it took a while for her to answer, and she tells him
Tommy is in school.
Greg meets them by the yacht, and Jess hugs him, apologizing.
In the end, she decides to join the others on Greg's boat, starting the loop again, evidently
hoping that by doing so, she will bring back her son.